regularization = 449696791, 2295203320, 2678173961, 3612801004, 4172224662, 2678197822, 2106401949, 4376375187, 3132611125, 2133104998, 2137316724, 2565103542, 2133628497, 4169771735, 2192912002, 391220933, 3463985480, 2085132869, 2178848983, 3127577226, 2519577787, 3602624378, 2057938193, 3212496914, 4078348111, 4125339224, 4079159189, 4107427297, 3303043721, 392854572, 435052747, 3152390601, 2604835342, 3362932429, 2816261415, 3472620322, 2107061705, 2267806353, 370685822, 4259982045, 4243702990, 2564670430, 4199103537, 4242505589, 3802291990, 291554595, 4074264615, 3175165000, 2815246349, 1800203177, 1800749303, 3179811164, 3475663000, 3054238938, 4102378665, 3069558200, 2135682397, 2174509215, 3309682971, 3202253560, 2137371469, 4232505230, 2897801277, 2565002736, 2106160882, 2152533137, 4055295563, 3108619653, 3177852078, 4094074011, 2679156050, 3392109005, 2059304300, 2052240982, 3176481343, 3177306218, 4052561045, 4056944431, 2504349704, 2152373321, 2138351235, 3232135243, 3028313529, 4029339118, 4015351102, 4102045355, 2245096119, 3177940655, 4044133261, 3469543024, 3044434051, 3523435111, 3469983997, 4072584864, 3606265628, 3618277126, 3147883969, 2023350919, 3192356287, 18553414643, 4244056107, 4163423424, 4012525314, 4196885142, 3145648000, 3128185252, 3058594300, 2062086509, 3185193012, 2162848897, 3609023336, 3214352040, 3143100779, 4015990060, 3412024434, 4045674598, 4144978083, 2602531212, 3146188768, 2699324082, 2074804252, 4075836057, 3149342637, 2132902060, 2259605392, 2533758173, 2568674634, 2068062976, 2816916103, 2162391137, 4037753009, 102000, 2394325100, 3618257777, 2672935009, 3462149521, 3143253166, 3019703002, 2149971732, 2406071890, 2138612798, 3055239901, 3127282003, 3602199135, 3479196670, 4252305620, 262675594, 4232427261, 290153809, 2107140891, 2122416756, 4196173004, 3862021759, 3477320690, 3055299901, 3142938339, 4062205416, 3474681916, 3462147057, 4234451528, 2044870273, 2013453296, 3063471366, 3605239052, 2566966212, 2163613869, 2256556422, 2092641399, 2109894473, 2133172858, 3179532346, 2692313137, 2052104145, 2162734654, 4034109549, 2054602562, 3464268887, 4084783472, 2819255000, 2153099122, 2629487300, 4252759301, 2029353061, 2317360708, 3234317025, 3232080131, 2676433332, 3054878404, 466321150, 4092424176, 3142964877, 3237633355, 2607970722, 405688983, 2124760905, 2164422271, 2134411102, 2707530704, 2292073091, 2252340175, 2013684200, 3234056440, 428106815, 2192591395, 3477389066, 435835109, 2144560340, 867251827, 3606265627, 2766344760, 3129268400, 2486291821, 4167365309, 1300665672, 3053390461, 2107121902, 3333446987, 4123859473, 4075818640, 2108732908, 738669500, 4196264212, 4022801488, 2153337725, 4167220847, 3526224251, 3109971520, 3107546969, 4124971333, 3193177008, 485834939, 3605493720, 2814019860, 2405586642, 4192146965, 4028155060, 2243235003, 2242672471, 2029182328, 4037701966, 4072140109, 2062372329, 2159145070, 2798959055, 2135272227, 2066292684, 3069103454, 492929831, 4078499621, 2813240539, 2153094327, 3129008026, 9294835667, 3522650104, 2027688469, 2066495366, 4087694839, 2565701672, 2039481010, 3044585266, 3104814099, 2482160825, 4062952665, 3106450444, 4102954148, 3103596094, 3373485042, 3855463073, 4052131206, 2125406731, 2015617077, 4057192096, 4252952343, 2106409636, 4053090799, 4014953437, 3312909366, 3605917187, 2137405131, 2482766646, 3096476342, 3139607914, 3368046100, 3106892067, 3063521202, 3056768795, 4232176146, 2123696757, 4059365622, 3167124582, 4163501492, 4257323247, 2148886941, 4154488669, 280318317, 4244758274, 3142381406, 492055799, 3106677534, 4162985950, 2062215000, 4023789668, 4174146399, 2036948405, 3372437717, 4024815121, 3522334406, 3304868042, 2244743167, 4077076010, 3182953042, 4125470711, 2075696396, 3604835198, 4196885147, 3235368947, 3362237043, 2159484026, 2133201334, 2037394410, 2138612957, 1300553576, 2095803027, 2315981817, 3214221229, 2042897376, 2153832101, 4123322464, 296843998, 1800807138, 2172413376, 2066918065, 3323781481, 3039807300, 3093008063, 4052173481, 2109811084, 2155952252, 3037418060, 3137364771, 3309616815, 3214288877, 385650018, 4157272451, 2134936069, 3236067842, 2055885467, 2507878954, 2709778069, 2702284043, 2127351777, 4197016020, 2063314444, 2055589586, 4197412007, 4258732782, 282586991, 2103618931, 2568703795, 4079044046, 2174961216, 4164916341, 2085010067, 3055042737, 2122219630, 432492694, 3142938351, 3137639982, 3853788859, 3462995617, 1800290955, 2678656582, 3462230059, 3127487554, 4102376978, 2159873706, 3055038807, 4047783263, 1300366867, 4014680735, 4195619637, 3145159998, 7576226315, 2164894062, 4075988925, 3613606709, 3362935361, 2405707976, 3069860020, 3469717500, 3134238040, 2079772124, 3369000105, 4018686200, 282586042, 2483853044, 4075882361, 4075989078, 4127631095, 3232867352, 4162072875, 3047699880, 3233321722, 4055408686, 2814072840, 3373883041, 451047226, 3145972044, 4195740036, 3049192068, 1300308930, 3192262386, 3127369498, 2798005774, 2028167451