Аналогично, из листа с размерами 9 × 8 мы можем создавать прямоугольники с размерами 18 × 4 и 12 × 6.
Для пары w и h пусть F (w, h) - число различных прямоугольников, которые могут быть сделаны из листа с размерами w × h. Например, F (2,1) = 0, F (2,2) = 1, F (9,4) = 3 и F (9,8) = 2. Заметим, что прямоугольники, совпадающие с исходными, не учитываются в F (w, h). Отметим также, что прямоугольники с размерами w × h и размерами h × w не считаются раздельными.
Для целого числа N пусть G (N) - сумма F (w, h) для всех пар w и h, удовлетворяющих 0 <h ≤ w ≤ N. Мы можем проверить, что G (10) = 55, G (103 ) = 971745 и G (105) = 9992617687.
Найти G (1012). Дайте свой ответ по модулю 108.
euler338()
должен вернуть 15614292.
testString: 'assert.strictEqual(euler338(), 15614292, "euler338()
should return 15614292.");'
```