-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.nr
618 lines (514 loc) · 432 KB
/
main.nr
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
use dep::noir_ml::{layers::fc, activations::relu, utils::arg_max};
global w1: [Field; 15680] = [-267, 19159, -29394, -26284, -13756, 9577, -708, 28317, -3169, 9450, -10793, -7020, -34045, -22046, -13115, 1390, 14119, 21429, -24212, -15552, 12972, 29657, -7350, 26725, -5757, 3779, 32338, -33131, -22483, -9042, -13921, 30857, -23149, -16440, -24951, -33449, -21161, 30578, 11180, 7359, -1788, -18012, 8128, -27621, 4438, -12671, 20070, 18006, -37082, -11025, 22841, 35505, 14174, 4825, 23946, -21029, 6655, -27689, -24753, -18449, 16160, 14810, -17745, 15311, 22137, 333, 14540, -58372, -56753, 20403, 24466, 57751, 131116, 27105, -7368, -44437, -22185, -44567, 1051, -22975, -33418, 31732, 27156, -35626, 6685, -6016, -5758, -16324, 13901, -13883, 29549, 50535, 91305, 122192, 115148, 89178, 61824, 102700, 51130, 62848, 141049, -3185, -19652, -116128, -63182, -37779, -58373, -27748, -2246, 6707, -14994, 21192, -21734, 32474, 25595, -29576, 4666, 36827, 78088, 213245, 270294, 265520, 233464, 236996, 143223, 121937, 105148, 18853, 106604, -13418, 92360, -78963, -124897, -129792, -104383, -107131, -31795, -1339, 7388, 22181, 33830, 22709, 34270, 6525, -31283, 50629, 165775, 207621, 128114, 139355, 144347, 115373, 183001, 265601, 174343, 119485, 128453, 84277, 133582, 153511, 56632, 10715, -86427, -99554, -5045, 43587, 4865, 12818, -32145, -2412, 34762, 30492, 66595, 34150, -11230, -26965, 174, 93075, 223920, 140276, 141154, 69078, 119398, 244272, 131261, 159537, 70974, 5277, -34709, 30589, -171495, -32372, 10794, 82899, -12697, -23386, -20811, 13103, -6142, 75426, 80345, 16798, -57810, -106994, 84488, 8286, -37441, -48000, 50427, 151798, 158345, 188199, 142476, 30537, 25498, -63253, 47187, -111067, -9675, -107407, -64388, -32720, 39404, -1400, -32678, 23328, 5455, 93767, 174643, 38824, 69679, 25937, 3376, -49601, 151950, -10668, 179001, 191258, 237398, 120354, -137351, 33262, 69674, 184647, 103956, 84436, 98669, -167292, -96097, -51136, 5481, 5947, 30750, -21903, 11591, 136980, 174633, 117979, 74206, 15318, 38276, 124310, 88225, 144283, 105579, 94646, 136764, 103974, 6120, 135543, 26610, 13675, 119411, 71891, 31207, -78567, -116330, -22720, 39277, 17190, 2831, -44528, -10554, 183927, 187021, 90018, 161261, 36106, 4735, -99396, -136882, -171651, -280085, -390543, -137323, -57930, 357447, 43090, 227263, 182344, 44582, 178668, 155596, -23343, -241399, -62307, 24238, 19821, 15079, -33832, -34924, 89621, 83326, -42799, 17507, 44641, -102375, -108553, -200805, -118175, -229311, -228847, 54294, 52126, 99363, -1482, 109585, 141243, 334799, 196509, 143038, -83684, -147928, -58570, -54645, 14313, 26979, 4588, 16047, 24921, -76206, -157777, -189334, -124788, -402997, -185975, -216689, -195337, -55511, -108775, 168201, 37214, 85182, 114114, 98532, 155310, 78365, 30426, -206012, -190553, -162735, -119306, -42186, 28737, 19304, 30748, 19529, -94938, -189493, -309629, -362662, -186959, -222605, -76065, -201364, -99360, -88175, -51, 93586, -100098, 126956, 177285, 84618, 2472, -56930, -258110, -358085, -253734, -211481, -70659, 7225, -5709, -20418, -19570, -37866, -64520, -185634, -340562, -301856, -125609, -83289, -184007, -111090, -151711, -59452, 73407, 171460, 32541, 79483, 66633, 55144, -103989, -112683, -193354, -465747, -379092, -201170, -86041, 16335, 35124, 1819, -22117, -9523, 201, -141873, -222837, -118350, -121515, -47944, -50022, -29371, -6158, -17408, 77585, 40122, 67933, 68051, 3248, 1211, -145727, -147007, -240498, -358921, -204963, -116991, -15601, -37470, 10636, 1629, -32237, 27824, 83125, 2190, -11705, 118403, 77824, -61608, -4363, -13547, 28170, 97085, 4757, 60214, 80269, 37738, 14788, -143116, -184393, -179593, -67078, -92724, -39950, 113189, 37920, 14012, -33808, -30504, 16789, -10620, 173412, 149348, 2194, -81916, 64002, 63552, 123665, -47679, 30556, 86010, 20199, 98807, 19920, -122966, -33556, -97871, -36678, -136485, -2295, 23960, 51454, 122915, 153119, 55615, 33594, 31408, -18176, 22289, 176236, 233492, 14620, -11499, -90053, -162981, -8825, -57400, 15918, 29329, 64187, 58372, 9002, 42384, -57411, 160122, 57817, -42798, 29046, 115095, 58019, 249466, 197209, 78160, 51852, -26960, -26616, -23815, 62259, 97059, -96750, -51378, 98340, -85088, 38460, 115332, -58274, -43169, -85940, -33834, -3581, 99455, 63659, -2253, 42084, 24813, 64584, 56343, 92863, 195364, 178677, 58398, 5293, -34772, -19546, -2690, 119993, 92677, 56985, 169546, 101820, 140239, 1364, 23937, -83124, -105897, -232433, -94994, -70482, -41983, -26691, 12211, 127313, 101464, 61419, -14115, 196741, 191041, 42124, 19105, 13510, 28299, 29087, 24487, 88369, 25659, 58977, 100251, 31570, 4864, -33661, -107527, -64787, -17900, 4568, -192859, -167761, -116643, 15261, 17822, 49700, 63734, 11161, 110371, 67396, 108590, -5554, 6901, 31053, 17910, 5108, 47671, 82039, 79675, 136689, 56680, 94958, 79585, -111567, -27201, -46095, -32885, -121246, 77467, -15681, 8638, -89017, -77469, -107844, -34082, 28728, 38727, 37068, 7084, -6603, -898, 2509, -23155, 34183, -14255, 49725, 22179, -11446, -90742, 26224, -5537, -52185, -107399, -22749, 81244, 65949, 4040, -23228, -62387, -122143, -45254, -164615, -99662, -32842, -25589, 29659, 12072, 4804, -41347, -5147, -6273, 11574, 18316, 19224, 42514, 8510, 39302, 15692, 55688, -72507, -73675, 18280, -62487, 32796, -36245, 79636, 110914, 93009, 8751, -24576, 99994, 48067, 93575, 40264, 52422, -24895, 8376, 5190, -16716, 12436, -31820, -10853, -30646, 5784, 87407, 168227, 171067, 240605, 114014, 91098, 140889, 216351, 186687, 125804, 185804, 260307, 254613, 206908, 280373, 124901, 50572, 23250, -14240, 8411, 33523, -28611, 21614, -18517, -6956, 28349, -11007, -3600, 7650, 151305, 293831, 361027, 443741, 446729, 394312, 407423, 431780, 332627, 372952, 317246, 238857, 182747, 136920, 63386, -3602, 2054, 26807, 30090, 3332, 8112, -15461, 26959, -14861, -24809, 5533, 21930, -29623, 43914, 39485, 2038, 38916, 83269, 61603, 89454, 120885, 68495, 96554, 73961, 56648, -6549, 42536, -20179, 32924, -34275, -31820, 21936, 3733, 2060, -19777, -14981, -10442, -34791, 1856, 6316, -30, 11533, 33888, 9496, -13074, -14698, -21086, -20553, -5373, -6301, 15888, -15266, 28472, -25060, 102, 32104, 35514, -20688, 6362, 4219, -16745, -12339, 9673, -24834, 5893, 15454, -14011, 29795, -293, 23381, 43940, 458, 35730, 16528, 24765, 21733, 14683, -1338, 24152, 17757, 31664, 2963, 14336, -7780, -27547, 16513, 4570, -14303, -12075, 9340, -6458, 23338, 2023, 13491, 16847, -6469, 28458, 53300, 52400, 86565, 129211, 177943, 107925, 51383, 81649, 4704, 100055, 171455, 149710, 65817, 115470, 107347, 43825, 7369, 37384, -15248, -2862, -15639, -4930, 7762, 4068, -6801, -33046, 12308, 25866, 35510, 49306, 150995, 127177, 81610, -20637, 53992, -51969, -27825, 47596, 119577, 118749, -20925, 47401, 179226, 108537, 109909, 44421, 26289, -13241, 16465, -31660, -2268, 9809, 6166, 25633, -7914, -18176, -64661, -45240, -94862, -66130, -134702, -101785, 49403, -72825, -111355, -128778, -56756, -103124, -124576, -121487, -19173, -189509, -185410, -78386, -53180, -38413, 24819, 22844, -32311, 13904, -54621, -24442, -138632, -70946, -87415, 1001, -20996, -122856, -19024, -40093, 83719, 87449, 11163, 182676, 201021, 77430, 13645, 7638, -128624, -169824, -247419, -154575, -32277, -29938, -10479, -29199, -28550, 21004, -288, -62036, -225399, -138798, 88225, 32634, 71993, -47094, -7964, 23456, -149218, -144433, 77711, -31058, -24023, -152401, -148313, 3024, -174478, -67065, -109095, -143496, -47888, -77546, 23431, -10369, -36403, 22953, -33041, -37764, -227778, -100093, -44435, -75161, -44614, -5930, 59562, -20861, -116907, -149132, -65087, -76910, -158191, -64093, -105623, -121239, -88134, 26096, -91338, -205236, -172045, -93876, -24352, -4814, -8552, 5851, -44903, -71194, -174037, -13524, -77034, 30221, 37171, -25187, -113261, 171123, -30272, -122326, -107557, 87648, -138609, -154673, -86650, -110829, -7087, -5021, -4285, -282845, -258960, -72927, -3248, -27280, -13366, -25734, -25695, -51776, -8638, -33014, -104239, -50949, 34114, 37152, -84933, 85101, 128575, -160196, -306961, 4786, -75324, -121263, 58512, -25687, 41694, 17906, -72591, -305056, -256447, -80736, -3369, -14918, -23922, 567, -71896, -23011, 20877, 60614, 26143, 54501, 114580, -1742, 74401, -10096, 3672, -220987, -295925, -156668, 93892, -49753, 17262, -48368, 66965, 7970, 28969, -203751, -351730, -117354, 4255, -14321, 24750, -17396, -16438, -73125, -123441, -12386, -9744, -148577, 71, 44723, 109641, -11038, 28027, -138612, -393463, -77314, -73970, -52183, 46140, -15278, 124333, 28565, 111779, 31603, -153469, -96884, -16969, -5750, -32370, -24606, -4859, -176042, -119141, -70069, -50659, -75133, 83343, -93148, 52364, 80194, 22975, -303971, -306365, -95513, 28954, -102734, -94181, 59488, 116373, 42482, 250634, 259066, -67604, -28012, -32941, 17752, -30376, 23797, -25321, -216709, -82862, 11633, 10167, 38059, 104117, 67062, -43277, -151295, -63100, -163370, -65530, -100425, -10679, -93160, -128121, -17370, 116163, 166242, 310209, 215738, -8782, 5066, 5103, 9722, -2499, -11147, -7800, -71656, -297, 70406, 213596, -45014, -72917, 107269, 162677, 31766, -35834, -46379, -24069, -24459, -45179, -83098, -71454, -46770, 53403, 83345, 234744, 187342, 76818, 49203, -31082, -23624, -23091, -28257, 81655, -5214, -34176, 82974, 204577, 168742, 256682, 239946, 71321, 94495, -72129, 900, -77420, -70693, -5600, -55681, -55088, -44534, 155238, -25278, 24827, 68204, 82315, 56050, 46381, -14080, -13946, 8275, -38321, -92211, -1565, 108438, 36510, 111535, 110109, 161281, 246684, 179978, -77426, 27544, 49787, 37568, -5823, -64369, -41868, 12346, 15370, -103360, -73553, -17226, 147786, 59357, 31019, -33227, 2373, 45613, -94643, -93181, 52573, -35265, -34979, 21003, 157425, 135916, 254520, -38167, -104221, 107299, -30719, 93702, 95421, 989, -68576, 72985, -9300, -44546, -100463, 114917, 184001, 10149, 37224, -9585, -23142, 34721, -33166, -34872, 94272, -36110, 68484, 154284, 148982, 167367, 171169, 124145, -124411, 56003, 51045, 23820, 56254, 30625, -23758, 884, -28309, 22528, -1064, 146254, 145301, 15573, 23548, -35211, -21775, 26223, -72601, -41881, -1627, -43905, 118174, 207854, 27067, 279818, 297782, 52891, -90492, -13309, 66023, 34072, 111020, -77107, 22368, 33693, 36008, 112496, 118257, -10965, 59873, 4955, 31051, -12922, -8705, 38762, -66618, 32762, 222729, -3643, 76700, 60813, -54865, 173894, 225818, 288564, -16070, 98436, 118455, 244, -20013, 1645, 13101, -76928, -29328, 42819, 103349, 26366, 13798, -37891, 22833, -34023, -6179, -3862, -49926, -23679, 33102, 32989, -8406, -36880, 185225, 56215, 127312, 65373, -46184, 19696, 77615, 99482, 113217, 98111, 72489, 16598, 142600, 147834, 160183, 103009, 19192, 29692, -3166, 3092, -24700, -42710, 4902, 65381, 60589, 39743, 29432, 83734, 45033, 71736, 132497, 215661, 157551, -134041, -95955, -75738, -140062, -92583, 68583, 50444, 133032, 109670, 11625, -19175, -41783, 22724, 14579, -16969, -32795, -28045, -38555, -24227, -67880, -41209, -8122, 97152, -868, 6419, 104976, 249219, 146640, 70987, 85980, 116357, -3821, -1495, 57264, 111704, 45687, 40193, -38668, -7537, -43876, 16315, -33462, -8835, -7264, -12612, -39920, -114705, -159722, -162208, -269010, -163584, -84178, -73032, 23446, 84344, 161615, 3180, -85830, 11957, -151781, -234919, -265055, -252825, -205982, -112972, -117335, -20139, 28112, 491, -22135, 34875, 28649, 15406, -34516, 13185, -105712, -104586, -197838, -278046, -434610, -500381, -552428, -667719, -626413, -415532, -316432, -241907, -219768, -192872, -269619, -248663, -208626, -115230, -66403, -30188, 27029, 8149, -5518, -20629, -32703, -10419, -33073, -7510, -45326, -56161, -77669, -37470, -77252, -93187, -71006, -29780, -45346, -145228, -104697, -97988, -43143, -298, -23886, -17060, -66716, -17973, -22165, -11873, 11508, 15798, -1271, 34030, -24719, 13693, 32167, -6210, 28304, 262, -28101, -21549, 9921, -18099, 9412, 34206, 7504, -11907, 8301, -22549, -31754, -26831, -30259, 5119, -16648, -31167, -35106, 19347, -20265, -5962, -29946, -20149, 14899, -33276, -20366, 26776, -18316, -14863, -10028, 15266, -23427, 3581, 14586, -784, 10418, -27245, 16146, 13347, -4480, -29531, 14285, 23305, -6247, 16833, 13238, -14285, -2479, 35551, 169, -28433, -2605, 17768, -11658, -18677, 27026, 3547, -16342, -12379, -2778, 30530, 36553, 27472, 41714, 7678, -11482, -30086, 26347, -11271, 21122, 30877, 6780, -21113, 6323, 51, -30864, -25261, 33034, 26708, 19793, 24741, 13749, 22046, 17927, -23814, -1135, 42642, 47774, 70864, 125012, 222054, 207578, 247076, 307500, 284986, 213172, 207508, 146947, 188766, 121229, 53296, 35552, -10307, -22631, 13775, 6539, -25576, -23524, 16757, 27404, 3120, -18966, 14928, 4788, -50332, -34148, 63883, 128921, 34131, 61011, 131828, 191581, 248149, 283375, 328681, 213773, 178776, 224464, 115513, 38642, 48231, -25077, -33995, -17003, -33146, 29430, -15763, -24378, -583, -23139, -2210, 38592, -76719, -64509, -58781, -101087, 43370, -55427, 32733, 19659, -88547, 3626, 47197, 119542, 104401, 46881, 81021, -42553, -35774, -35347, 24315, -24042, -7579, 15865, 28990, 8310, -13366, -25936, 11989, -37573, -87630, -118309, -62981, 7467, 47801, 603, -77168, 3467, -185357, -84986, -22568, -83781, 84178, -4696, -60913, -81563, -62285, 24952, 29891, -1784, 9325, -14923, 31110, -2708, -52860, -38352, -127202, -167681, -278161, -167314, -174348, -17736, -69355, -16715, 70834, 68326, -17121, 97251, 54089, -33770, -100040, -82887, -223070, -135475, -180974, -54282, -27130, -535, 28115, -20248, -4183, 2514, -37402, -125682, -248574, -288148, -175905, -162571, -110046, 22879, -3599, 155673, 94937, 238546, 83654, 21955, 49223, -25422, -5897, -53452, -20976, -81172, -164055, -166855, -36244, 40218, 28021, 16126, 7916, -91377, -59931, -116148, -245337, -203002, -40294, -89488, -55238, -160503, 32886, 45649, -58150, 92332, -80472, 22393, -100316, -26513, -47900, 12825, -58167, -6816, -47422, -93530, -2033, -36267, -9580, -5056, -7296, -106922, -179999, -265938, -182541, -70668, -10905, 32354, 87238, -22807, -43350, -18287, 32066, 19353, -88577, -120443, -242146, -133878, -78034, -29484, -114221, 53750, 12228, -114465, -9032, -15916, 34938, -16103, -17090, -127002, -186243, -280453, -40290, 87566, 90731, -89665, 89967, 42395, -33269, 52955, 33167, -269575, -182963, -255418, -22345, -99198, -160871, -81509, 70410, 18329, -196503, -115017, -64287, -25337, 3449, -49745, -44079, -143939, -219511, -153490, 38142, 129941, 216199, 61864, 40043, 20514, 15260, -73578, 44539, -92598, -59014, 51224, 52259, 141774, 165730, 36452, 153864, -55581, -205583, -119820, -78106, -932, 3505, -26325, -36802, -177908, -232943, -13998, 54947, 42946, 13820, 52460, 128323, 133748, -33867, 27149, 355206, 36369, 16551, 22924, 63695, 110075, 255885, 392179, 228548, 168535, -24200, -124046, -110435, -42321, 3032, 15927, 198, -134965, -132837, -15209, 2092, 46710, -17269, 72748, -85619, -147000, -27039, 59769, 311252, 108820, 70995, 119299, 178345, 96386, 43110, 78764, 46759, -66194, -114287, -172699, -83816, 17763, 27104, -1607, -32540, -26102, -60049, 2828, -10719, -31803, -46660, 16182, -42783, 38539, -57723, 144097, 239954, 152777, -30515, -4150, -51053, -101302, -167341, -226194, 45026, 19594, -29461, -61902, 4250, -32577, 7709, 34671, -43389, -42727, -31209, -42791, -85991, -21728, -11968, -72000, -92086, 41832, 29136, 344697, 153489, -16559, 77997, 93678, -78357, -192871, -91372, 74303, 55560, 52324, -92016, -85179, -23141, 970, -3612, 22789, -32461, -50517, -111693, -160026, -90722, -81701, -4796, 3571, 58205, 72744, 7929, 82929, 137370, 66966, -35758, -158396, -144223, -208673, -43569, -9830, 112621, -40944, -196806, -197868, -35389, 31890, 17378, 6436, 14020, -68659, -127096, -257798, -222829, -27301, 19817, 38654, 159673, 160468, 120418, 95241, 84385, -173833, -72543, -131061, -128335, 27062, 82240, 154260, -31787, -166858, -312040, -207574, -39054, 18791, -25960, 23207, 14657, -102807, -190913, -249419, -226683, -278200, -99329, 195726, 143566, 204619, 57891, -88782, -27575, 55067, -75083, 52449, 4863, 68812, -37171, -50733, -206006, -311227, -291053, -102015, -53218, 31889, -35533, -2201, -23083, -122166, -247963, -178706, -180065, -30289, -94501, 84167, 226111, 133247, 85876, -26415, 67741, -62204, 68316, 33944, 59025, -2336, -52279, -58823, -312552, -281711, -218426, -57406, 4106, 22319, 26627, -31939, -34807, -122889, -280849, -157445, -108737, 100662, 2691, -234273, -9894, 5059, -274, 63334, 4192, 128489, 44769, 49100, 76051, -65044, -31575, -182819, -272349, -162950, -98786, -29286, -8866, -27812, 14598, -35502, -29062, -111329, -215531, -112112, 23111, -58894, -96899, 66985, -33771, -74602, 156544, 63562, -7643, 29795, -91410, -9316, -52401, -108921, -102565, -272200, -183539, -86591, -31284, -30165, -2936, -29124, -17391, 27269, -3005, -53764, -154490, -65093, -20733, -16004, -45008, -212977, -105226, -97819, -119812, -26705, 7719, -185858, -130808, -96414, 57680, -112474, -220056, -181987, -147381, -27727, -38963, -43841, 2998, -17316, 25816, -28075, 27525, -23048, -133870, -64724, -45474, -88153, 150681, 45510, -21762, 81668, 30004, 82413, 161412, 39577, 129660, 43155, -23176, -69278, -78711, -82013, -77635, -9362, 18775, 8706, 35068, 9734, -2799, -28446, -31247, -59506, -110075, -134197, -139951, -118064, -83564, -63260, -8439, -40446, -3730, -84242, 28346, 10623, 66717, -6278, 175216, 293967, 266002, 155861, 35347, 13934, 21856, -35238, 6687, 21845, -5152, -20300, 29384, 9, -14214, -21768, 17434, -52516, -78125, -106604, 18410, 36518, -39947, 61402, 86290, 112137, 319746, 297738, 277001, 413756, 378464, 176861, 28245, 2285, 22979, 4803, 8842, -3197, 5272, 13096, 24365, -33840, -12092, -19431, 14718, 53886, 83241, 170153, 235731, 208222, 219885, 184744, 176480, 94845, 131506, 197795, 236947, 189671, 207991, 79218, 5931, 1945, -16257, 31230, 30739, -3810, -31671, -2185, 2360, 23872, 1149, 10395, 9370, -22522, -39430, -69356, -66418, -7491, -28397, 8270, -30947, -44772, 9721, -29220, -34621, 2269, -10545, 30185, 4125, -13286, 26184, -20344, 1182, 8028, 16030, -32952, 1752, -9247, 23156, 12016, 14314, 21474, -7996, -2288, 28652, -28785, -22187, 10382, -11591, 2152, 31549, -4140, -30451, -16235, 32799, -7846, -15660, 16076, 4421, -31489, 29742, 20112, 31042, 15629, -12041, -11659, 17388, -6490, 14405, -16213, 5177, 49024, 26695, 26259, 30959, 73452, -9107, -32986, 65152, 54430, 2287, -11390, 46185, 8776, -12557, 29005, -7439, 2447, -18605, -30250, -23719, -3922, -25855, 35200, 1715, -11411, 35367, 30610, 82681, 147512, 144473, 241754, 233776, 126367, 89087, 174069, 167578, 200176, 179774, 123233, 106711, 81847, 61797, 19615, -982, 18854, 34643, 29743, 32453, -12054, -13564, -4070, 13655, 28087, 31156, 41469, 145639, 267267, 268590, 402844, 422525, 368835, 182874, 168838, 194007, 230311, 279784, 180500, 137558, 59463, 60981, 64486, 38167, -869, 24317, -17702, 24215, 8428, -1122, 4155, -32649, 41847, 65449, 84726, 184710, 183481, 178645, 179536, 151211, 158320, -58563, 52961, 89646, 56380, 93762, 202, 33154, -30685, -39687, -43809, -60641, 13725, -30169, 11527, 16961, 34674, -28821, 816, -838, 25410, 10487, 152634, 254618, 122334, -25364, 63961, -5219, -963, 34660, -145579, -25598, 50765, -25314, 14794, 43811, -14132, -88150, -129453, -63178, 19935, 22934, -15915, -7099, 12776, -30832, 7562, 1269, 9105, -23001, -54818, 82542, 49186, -62354, 13663, 88660, 17406, 70109, 2803, -45270, 39906, -3761, -87862, -30068, -68410, 15000, -69945, 60739, 85863, 23198, 27746, -16839, 3347, 1469, 33131, -2333, 20334, -108811, -157393, -59914, -87684, 26422, 56538, -131982, 22537, -10028, 42427, 17173, -20550, -84323, 44172, -33840, -78283, 65691, -41519, 120066, 136857, 25430, 7839, -30744, 13581, 10511, -15036, 30024, -56537, -36149, 3421, 13246, -129630, 7635, -75606, 19538, -59144, -30917, -44112, 113080, -49586, -74111, 11730, -21011, 7294, 696, 8753, 48693, 88724, 64452, -29210, -5524, -966, 883, -43207, 8743, -33838, -38041, -29552, 1618, -58533, -105643, -30161, -70391, 43338, 54871, -30061, 12844, -79148, 461, -43129, -95093, 8080, -79254, 17189, 144806, 213620, 47768, -15667, -34074, -2739, -11587, 52183, 6877, 34778, -43882, -276103, -84264, -77876, -138542, -121956, -122574, -48562, -14052, -221600, -25686, -103297, -140845, -128928, 18922, -90269, -130996, -6912, 176994, 104227, 74252, 35068, -29685, 16914, 10917, 18326, 38861, 12855, -96462, -235745, -151444, -158495, -152720, -65337, -76507, -76304, -174925, -215389, -112575, -133610, -226700, -86194, -303227, -116225, -185627, 37099, 67380, 37444, -14340, -1026, 13312, -9240, 30702, 23339, -26552, -143451, -61755, 21868, -42218, -24294, -21815, -4565, 32640, -78195, -39734, -53191, -4508, -104784, -158907, -168853, -146596, -115498, -196494, 37129, 49934, 32509, -31232, -35448, -18049, -30767, -14286, 1612, -72162, -151555, -70138, 7997, -26455, 72681, 56324, 124595, 20684, -41622, -89978, -217504, -108211, -62874, 44434, -131614, -158033, -82546, -45637, 135584, 150116, -18139, -4576, -33461, 14630, -9268, -7776, -181, -44767, -65748, 10773, 66410, 19006, 60154, 30676, 145660, -67760, -52962, -105032, -23399, -6907, -131398, -98873, -89664, 82315, 29988, 60504, 161399, 153921, -34945, -4596, 13381, -16430, 15632, -11929, 23052, -12315, 43624, 27731, 88969, -9698, 98061, 23652, 3579, -99431, -103791, -89976, -106788, 10990, -79097, -37262, 11870, 72094, 108199, 71413, 79542, 106589, 12801, 19950, -13799, -15772, -25276, 24634, 21642, 10312, 100883, -13722, 39516, -31107, 135918, 30657, 51285, -41026, 54113, 12052, -122058, -27362, -73667, -14560, 46566, 10456, 177657, 61639, 112156, 179145, 33668, -14349, -2616, -3024, -17699, 14142, 67817, 23864, 117708, 43619, -68531, -156097, -118088, 29203, 33477, -66178, -141630, -60508, -48251, -6446, -24405, -26119, 175102, 65309, 136421, -1321, 22745, 8697, 3500, -13061, 14408, 14086, -23260, 18671, 113760, 24173, 83646, 78274, -95361, 36243, -190537, -49969, -76423, -67811, -137102, -94080, -96180, 32297, 79239, 138339, 55734, 6125, 115403, 61133, 45771, 52586, 54525, 4656, 2964, 9674, 36015, -18220, 78354, 105532, 6658, 106181, 110074, -5201, -62943, 114205, 114147, 193187, -26269, 65474, 64798, 146160, 218352, 232904, 105390, 141143, 140735, 181065, 10410, 71447, 35400, 6792, -28260, 21822, -31409, 28639, 97947, 189217, 332586, 185356, 218857, 142729, 236428, 164912, 196444, 234895, 275519, 153842, 193671, 84773, 79343, 142363, 85942, 119315, 171131, 214159, 46897, 106852, 40008, 17472, 3826, -24235, 16017, 31222, 129671, 244141, 108367, 127136, 39037, 118671, 175747, 91233, 161549, 95763, 116763, 174474, 139066, 133542, 104771, 133499, 31648, -90131, -73532, 122688, 33210, 72532, 60994, 30120, 2950, 21087, 12335, 46980, 84912, 120086, 148181, 81224, 85286, 96672, 166423, -19413, -37870, 65059, 111752, 14057, 100542, 8515, 30039, 9268, 9302, 80298, 7247, 70715, -3140, 3297, -37025, 18234, -27612, 24657, -16274, 1870, -22517, 68216, 71272, 91664, 174724, 106596, 128009, 154375, 65011, 99621, -4995, -25238, 4133, -5646, -33779, 308, 161596, 159867, -36944, 97868, 105209, 17617, 1349, 15048, -14612, 8718, -19035, 23116, -23516, -17318, -100039, 20094, 67582, 133973, 95720, -19092, 121115, 193012, 190427, 188852, 83853, 251450, 34526, 200422, 95379, -78543, -83766, 53720, 17894, -11781, -22304, 205, 11442, -747, 20907, 31157, 14495, 25806, -43955, -64382, -55510, 54185, 138920, 198943, 185423, 24689, 129956, 81530, 132891, 132424, 197445, 220004, 151677, 35660, 27116, -8140, -32500, 14505, -20388, 7013, -15311, 7093, 17426, 11225, 25944, -3555, -19807, -17661, -46869, -66756, -26103, -34773, -7692, 17726, -40740, -130141, -42903, -26473, -7142, 6525, 34960, -35339, -7763, 10619, 4268, 29341, -11284, -28509, 23646, 9980, 23527, -21138, -20977, -14427, 2539, 12102, -20524, -3372, -6386, 35664, -4979, 28944, -33606, -22365, -28737, 26015, -24692, 14749, -13518, 35453, 5038, -31015, 6147, 4342, -34543, 7168, 34075, 10278, -190, -7404, 9491, -15911, 35170, 30874, 16685, -13303, -33534, -20560, 34725, -32180, -34301, -4263, 11292, -35546, -33158, 194, -11980, 24881, 10254, -31001, -32190, 24527, -6333, -15623, 11249, -7019, 17080, 9057, -15463, -28608, 17627, -32250, -10825, -4055, -22905, 27930, -16100, 19625, 14325, 116, -66252, -28182, 10051, -16506, 13771, 5249, 34993, -6718, 220, -15533, -8802, 10224, -34444, 27093, 25682, 15125, 26736, -10377, 8136, 4935, -4923, 22694, 61335, 64034, 66932, 63726, 32343, 81267, 20568, 13711, 63579, 43859, 98384, 39436, 49955, 21539, 19503, 13335, 8113, 20870, 18842, -19170, 24517, 23619, 4633, -26849, -12921, 40339, 51851, 91783, 118217, 85839, 129503, 30036, -27217, 153277, 69199, 28587, 151908, 112565, 123863, 157357, 232424, 223979, 123489, 53486, -21490, -22400, 23909, -5114, 21933, 24729, -14055, -10275, -20335, 20346, 31496, 115887, 96517, 58682, 28922, -2446, 6281, -25306, -61891, 52190, 176942, 25217, 42949, 126419, 152975, 78312, 82170, -16294, -39888, -30203, -27701, -14958, 5555, -16184, -22404, -4367, -1145, -24501, 25041, 125029, 84317, 24856, -34565, -25027, -103238, -68313, -37182, -151398, -80995, -42654, -5124, 41055, -1176, -54152, 73869, -2415, -4311, -33583, -19382, 4635, 29467, -13586, -18776, 21398, -22053, -53971, 106286, 121732, 51626, -101081, -62786, -8343, -55553, -28636, -12584, -76213, 33772, -11974, -136853, -113185, -62483, -85684, -96429, -122438, -135789, -12644, 11138, 1446, -33004, -16641, -3186, 65864, -14680, -11203, 37771, -87147, -95763, -51787, -119369, -5797, 50849, -40656, -7544, 10913, 112186, -113543, -100619, -49716, -90974, -96670, -102843, -103600, -109959, -37444, -20742, -28639, -23395, 2365, 10556, 14281, -3182, -22883, -38333, -101517, 40684, 17963, -99611, -25955, -33472, -45746, -57426, -78698, -117663, -174450, -160491, -78186, -124927, -153451, -160121, -174101, -128954, -52477, -7053, 19472, 45269, 10741, 39537, -3552, 11595, 62936, -45046, -29784, -21336, 111614, 30382, -6708, -92296, 61921, 22848, -13324, -130000, -87471, -49042, -162893, -117843, -106504, -160380, -283324, -158398, -82857, 8841, 22654, -241, 15103, -16365, -32810, -33728, 12052, -41140, 4810, -30136, 58836, -22978, -21290, 24204, -188092, -170501, -115859, -61845, -42604, -35302, -128409, -96399, -129550, -281937, -250218, -126841, -102233, -42663, 8214, 38035, 77201, -19265, -9793, -16483, -70617, -4050, 67400, 40587, -25236, -110232, -23449, -90011, -167551, -110849, 76866, 164673, 137192, 96000, 88158, 64471, -103331, -276315, -272596, -146485, -156151, -18562, -9193, -4580, 33598, -32828, 71991, -112641, -14576, 5691, -28152, -61390, 48261, 7829, -108937, -102253, -175479, -78459, 119567, 46456, -5481, 147554, -54772, 74002, -38301, -115184, -134187, -109228, -83068, -6998, 17347, -4649, 4996, -42529, 71432, 55675, 79804, 119419, 1193, -1229, 62692, 62552, 9100, -96852, -92772, 40688, 119243, 143382, 75314, 130121, 130994, 137661, 5702, -7754, -42373, -63023, -79828, 13995, 2977, -22021, -5947, -23802, 115489, 49121, 73832, 182941, 98616, 63545, -252, -16030, -43012, -6816, -57898, -16767, 209207, 180269, 124334, 190682, 31357, -26136, 182488, -32380, -117875, -390, -50726, -9811, 33693, -25266, -30420, -19122, 12603, -168152, 57881, 213761, 12351, -20896, 35679, 122205, 43494, -144477, -50536, 188021, 232504, 316746, 12824, 62828, 101127, 53552, 173593, -10032, -132546, 21093, -599, -20893, -27370, -30209, -14669, -90116, -45866, -75328, 149547, 124420, 92392, 24251, 165516, 217391, -129827, -23529, 6314, 256797, 237278, 139845, 9074, 66308, 125275, 11469, 27313, -5185, -82411, -47280, -33326, -26863, 10172, -10852, -42973, -60392, -91562, -83240, -42300, 56251, 105422, 19956, 166065, 111646, -12553, 77792, 169126, 256433, 159151, 169246, 130796, -72450, 40715, 102123, -45097, -72132, -103850, -10774, -44258, -39282, -4715, -8768, -38887, -1589, 6177, -85337, -84974, -40030, -58230, 31551, -15695, -5641, 46988, 72098, 149037, 72033, 102714, 38403, 62595, 102887, -15265, 54306, -93826, -12695, -82431, 6203, 5770, 21063, -25163, -7821, 18433, 14340, 3873, 43973, 63716, 99, -89775, -2826, -25473, 130447, -28569, -120614, 60097, -74120, -75078, -16720, -20996, 13668, 5363, 24696, -73383, -46965, -43388, -40136, -32172, 33260, -3807, -18583, -26920, -20656, 24635, -5168, 15624, 16181, -114234, -205010, -98641, -14851, -54372, 1367, 55329, 74428, 69385, -35501, -6657, -59636, -70439, -78151, -175434, -104903, -16213, -8596, 14005, -21319, -30728, -29279, -6128, 4927, -14024, -24476, -38904, -166136, -127292, -146650, -95946, -35044, 26803, 57094, 17465, -58355, -40240, 33138, -30882, -143226, -209386, -132306, -95060, -87924, -31638, -83646, 11136, 14330, -8749, 20414, -13773, 5257, -2425, 286, -139342, -199885, -84362, -109063, -20149, -136414, -213278, -193829, -165199, -178783, -106475, -231625, -239809, -152679, -175571, -88984, -34654, -75080, -75707, -39526, -9360, -12697, -29873, 19437, -12263, 22850, -56704, -56796, -61967, -41422, 16596, -134730, -110212, -157774, -244045, -251070, -181747, -230114, -290327, -122514, -164474, -82446, -63564, 35490, -28828, -52185, -63169, -2095, -21502, 20761, 10797, 14206, -16695, -25715, -38723, -33287, 13654, 52579, 56432, 30510, 108374, -1601, -20740, -106656, -187576, -69195, -65596, 88997, -50927, 60726, 93202, 80724, 25796, 9465, -41898, 33739, -35570, -27108, 21417, 1214, -21527, -9400, -31539, 16538, 65339, 121103, 131890, 134692, 124351, 112982, 104979, 171839, 226743, 149166, 110744, 36289, 90204, 110759, 157988, 52346, -139, -15884, 11748, -5533, -29160, 7055, 14526, 28858, 13843, 13196, 34844, 17949, 114345, 142086, 147936, 218974, 162120, 223150, 220684, 127967, 206678, 147467, 124104, 125672, 123573, 84087, 22123, 43194, 30050, -1891, 30590, 27532, -7872, 1379, 6291, -6999, -8799, -16121, -20152, 18204, -8385, -12659, 23157, -5589, 47421, 63955, 8803, 59324, 106268, 43091, 49759, 57373, 37502, 41601, 43425, -6078, 10513, 33360, -20209, -24219, -27389, 21349, -32758, -17368, 24121, -21410, 29043, -16695, 5650, 4675, -876, 22244, 30333, -22299, 19732, 8891, -666, -24972, 10594, 25923, -30655, -32984, -35110, 8252, -10262, -11094, 33256, -9109, -22680, 3213, -19602, -10464, 18865, 8243, -24507, 33957, 23283, -26730, -30138, -41298, -40942, -31457, -34108, 12516, 3838, 11528, -20532, 25958, 3957, -29663, -9240, 18211, 7697, -5682, -24952, -22217, 30805, -20458, 25309, -11954, 357, -34778, -11639, 29956, -33620, -3249, -99408, -106293, -132764, -111198, -159728, -103229, -41106, -63556, 118, 8440, 33182, 68708, 38601, -8476, -1542, 31681, 17782, -9471, 26964, -31212, 30567, 19982, -26215, -29129, 29763, 38664, 2321, -49089, -127909, -221394, -205886, -152131, -234881, -311072, -239640, -167384, -92221, -93803, -88935, -46586, -21427, -35832, -43568, 19931, -9127, -24420, 1084, -8784, -18966, -32498, 30376, -19161, 20584, 72290, 74133, 37426, -85835, -42593, 632, 67171, -29812, -61955, 56359, 23310, 13481, 53574, 174643, 56840, -45346, -57353, 19219, 27754, 27849, 23816, -15341, 14123, -13082, 14836, 18837, 15413, 28690, 127822, 128798, 70372, 30990, 36168, 36290, 46000, 214426, 55505, 69664, -120005, 7881, 49972, -71064, 12561, 1869, -84622, -13190, 83505, 79090, 84961, 52518, 14141, -27347, -24200, 8769, -37607, 115843, 167706, 145719, 19368, 125904, 171648, 110591, 88221, 31647, 52249, 43196, 50254, 66038, 5773, -10569, 130317, -1444, 89053, 56062, 52176, 73458, 82255, 51015, 19956, -15855, 27739, 8904, 30772, 97811, 96656, 56894, -11800, 37431, 48523, -9686, 22410, 52514, 5394, -3778, 98445, 39714, 46687, 6502, 52992, 23201, -6308, -46839, -18883, 121069, 115298, 50521, -26328, -15326, 25898, -3434, 82297, 134497, 19295, -19394, 79976, 49724, 86469, 33217, 8144, 131502, 110122, 136296, 77640, 44491, 40972, 3501, 27667, 63975, 17444, -10737, 47227, 258390, 172932, 34246, -23248, 25577, 18414, 20989, 55459, 70784, 13440, 97402, 148525, 136081, 81850, 69563, 56316, -29653, -75196, -33936, -33618, -2463, 107603, 7466, 18763, 73932, 126192, 106155, 180959, 207478, 157554, 53916, -22210, 34348, 520, -17848, 817, 38532, -25155, 77428, 10543, -41209, 162504, 29327, 11224, -9757, -234788, -178353, -151612, -20185, -60136, 14426, 95417, 67164, 82041, 122421, 133650, 215015, 191017, 74550, 55191, -18170, 7187, -39978, 5829, 69835, 58933, 88745, 41504, 87992, 140816, 17905, 70835, 193170, -62833, 96130, 29193, 164543, 108490, -7175, -36674, 75132, -43836, 94274, 56027, 111666, 110292, 60833, 15918, 35355, -5850, -6006, -17453, 24608, 31471, 93465, 104789, 53089, 65651, -7404, 103238, 27288, 257970, 122911, 91722, 39173, 249631, 48719, -103790, 81516, 13471, -74011, 23878, 4504, 75340, 13764, -2659, 16935, -10923, 3059, -27298, 33225, 106762, 51853, 48144, 69855, 111697, 167273, 228344, 71500, 166606, 56876, -12608, 51632, 34566, 108675, -23688, 124721, 110908, -59947, -94848, -72021, -70678, -23947, -4859, -28777, -2673, 7192, -7970, 56992, 59551, -2307, 51789, 8727, 155021, -27230, 86955, 46389, 25834, 165693, 82716, 160283, 301300, 156279, 71611, -15739, 69542, -36541, -108968, -149888, -53226, -25170, -33602, 6801, 18742, 21380, -19733, -91094, -122341, -46956, -17674, -4771, 138026, 86406, 201201, 90866, 59915, 99138, 95189, 59011, 171408, 938, -13552, 114015, 17479, 46560, -48295, 1618, -66177, 7692, 9875, -10464, -11530, -32107, -6914, -131144, -230764, -221890, 16260, 20971, 52574, 52399, 220342, 371723, 280050, 77869, 191230, -30367, 217265, -4488, -120881, -96882, -138674, -91380, -47408, -34831, -106895, -50819, -6252, -19021, -31263, -26954, -95720, -181036, -326352, -410199, -344119, -339042, -143909, -194714, 44364, 50389, 119088, 23369, 145304, -20222, 19643, 19090, -117540, -88777, -179169, -180384, -102412, -78299, -110247, -68548, -34595, 18610, -33418, -17505, -42976, -145607, -233945, -264296, -435564, -591417, -523852, -510755, -433273, -481651, -203942, -266425, -170446, -50144, -146514, -70220, -192037, -14420, -6778, -60831, -127158, -95441, -91314, 9929, 6235, 6046, -18419, 40872, 84088, 20315, -61679, -38047, -65727, -296742, -265230, -526296, -527719, -703716, -400028, -297860, -276481, -152917, 25158, 7585, -2254, 48343, -20757, -68384, -134495, -80796, -59400, -5183, 24120, 645, -27619, 10301, 92540, 153911, 148023, 62337, 153373, 208601, 26473, -20616, 39208, -17661, -66906, -62244, -72009, -93725, -52235, -13424, 57991, 25678, -79785, -27139, -67552, -124567, -78064, 29940, 13200, 16779, 8896, 47973, 81232, 199468, 7605, 6505, 64263, 35893, 66006, 42004, -43205, -23426, -73034, -100626, -68482, -101889, -100918, -119222, -75551, -99825, -63418, -99709, -132182, -147441, -20279, 2543, 81, 5115, -13519, 15335, 57635, 149464, -148765, -99553, -10287, -69591, -10262, 56302, -61117, -42914, -91709, -125979, -91040, -84199, -183473, -31386, -52193, -160362, -172640, -148310, -140708, -104559, -17681, 32886, -11187, -30641, -13490, 28545, 82753, 117149, -104745, -93929, -30514, 94180, -8656, 35296, 144189, 8732, 143709, 74898, -52658, -64213, -125521, -172390, -213389, -127065, -146922, -111425, -12066, -92383, -22453, 29427, 230, -22273, 1142, 14679, 65169, 90472, 28552, 43720, 43693, 12535, -90256, -25603, 43583, -32180, 58954, -208760, -48458, 23493, -71812, -73490, -27584, 74814, -18301, -63105, 524, -44815, -35244, 27894, 16628, 31103, 274, -17821, 32115, 34874, 100542, 140102, 228306, 100779, 94334, 158268, 64607, 29270, 52961, 33779, 64143, 163671, 150661, 129538, 94889, 113555, 49674, 39124, 23599, 7197, -8392, -6027, -18981, 23878, 32573, 13254, 1015, -8130, -14899, 16404, -2146, -25079, -29270, -32245, -8146, -28898, 40175, 18613, 45918, 56888, 67792, 53377, 9314, 31344, 4899, -13032, -495, 7306, -34691, -24859, 27902, 16149, -955, 1128, 4930, 8330, -24528, -9795, -35955, -36628, -15989, -19026, 19914, 11825, -10231, 4159, 38934, -1215, 364, -9960, -41249, -6854, -33310, -19397, -22583, 26604, -32899, 34412, 13391, -24135, 29589, -7870, -30249, -4960, 17650, -34725, -2676, 14532, -13919, 3253, -13997, -23961, 27969, -25359, -419, 11895, -19959, 17244, -29659, 34109, 15906, -5056, -29709, 1101, 12668, -19397, -4498, -35592, -35704, -3879, 29884, -1681, 11199, -14239, -11616, -3912, -18111, 21714, 22055, -27961, 10845, 6846, 5264, -2568, -12216, -20501, 5275, 20333, -5579, -2503, 2688, -15349, 18908, 32953, -3264, 2428, 28776, 29252, -26568, -16539, -35027, 21930, 27948, -13401, 8364, 5964, -36252, -4277, 23236, 81699, 102989, 105588, 31666, 15904, -6385, 11990, -10288, 20140, -14353, -29434, 16756, 13246, 7861, 15195, 4250, 14661, 15150, -19266, -4118, 1286, -9714, -42351, -34980, -46248, -100095, -109090, -116440, -33422, 4921, 16026, -42413, -114389, -53764, 9788, -76928, -36391, -22385, 22566, -28600, 10870, 17163, -5427, 18472, 25572, -16090, -7106, 21395, 6943, -31830, -35348, -82966, -79939, -117333, -84977, -10118, -40108, -101601, -6690, -37072, -94863, 58964, -45598, -64234, 76495, 49779, -104367, -86308, -17197, 33066, -20270, 3054, 30463, -6002, -9317, -33976, -23589, -870, -133949, -167988, -205105, -115036, -74737, -64519, -26268, 76141, -50416, -252035, -37272, -103282, -41591, 65266, 54698, 53698, 41550, -52279, 1576, 19604, 24419, 21326, 20000, 27947, 17456, -77039, -131422, -149089, -263046, -318865, -159163, 9313, -118659, -219000, -78521, -169478, -33665, -114820, 35108, -102189, -49761, 13568, -13688, 45489, -91944, -107465, -13117, -16055, 15756, -14749, 12227, 1915, -40245, -78935, -142893, -158610, -279533, -255357, -80690, -41608, 6050, -87597, 2403, -184937, -44419, -2690, -37794, 17573, 64909, -39286, 35718, -9672, -100018, -113152, 12446, -34944, 12165, 27971, 15037, -34615, -19305, -35610, -55003, -147106, -238030, -246677, -3356, 4453, -65763, -50615, -33372, -6228, -173598, -18217, -53270, 23313, -30125, -18478, -61563, -135897, -139331, -39389, -17154, -19586, -25388, -20955, 34159, -18268, -34616, -41930, -121950, -183089, -210731, -239432, 6017, -190, 583, 27693, -95809, 48094, 95997, -121785, -86427, -153838, -85777, -29779, -138746, -132913, -55421, -10767, -34355, 1772, 35335, -34819, 8311, -23761, -41890, -94004, -79311, -131573, -145748, -157880, -23021, 56039, 30265, -16285, 112759, 231760, 135614, 8622, -52925, -141608, -171852, -102247, -159742, -149346, -80999, 12938, 2134, 29755, -349, -12314, 28533, -19580, -66257, -35421, -55867, -93910, -125230, -112420, -33374, 480, -138162, 69662, 239522, 179294, 65162, 17215, -74118, -117380, -131881, -126077, -129107, -86940, -47288, -46759, -21379, 31741, -18882, -11921, 25472, 8916, 17787, -47997, -50, -34109, -122901, -98259, -133422, -118675, 37392, 97259, 308056, 144200, 75748, 62300, -68655, -104309, -133341, -50356, -33332, -28843, -25548, -45111, 1161, -1880, 8444, -23022, -16207, 36205, 11991, 6055, -41765, -33700, -34046, -57851, -106179, -163417, 63579, 77847, 198331, 149889, 94332, 158219, -144265, -248233, -111086, -89938, -78217, -83094, -48606, -25601, -21590, 28402, -1765, -13131, 8110, 41398, -5231, -53704, -11719, -34272, -64663, -26649, -150928, -120678, 6325, 83, 260924, 162630, 315114, -39627, -183939, -212164, -145706, -102221, -50196, -45958, -39350, -44565, 18714, 32606, -10783, -31916, 17472, -23281, -24179, -42101, -65483, -84416, -47225, -104461, -119449, -87670, 52733, 147135, 290068, 15174, 178433, -188885, -189806, -144069, -105468, -96731, -18951, -61181, 16480, 3432, -760, -33427, 32477, 22843, 37254, 13259, 8941, -80017, -149398, -136450, -115316, 45647, 16723, 68226, 13630, 101732, 199857, -74445, 49287, -300727, -205529, -128892, -63204, -40877, -76396, -92137, -39887, -46752, -25539, 19703, -4798, 17015, 27245, 1895, 14547, -109523, -163667, -157331, -73665, -75205, 1031, 20870, 24630, 171083, 155541, -61699, -251402, -220169, -197986, -64661, -63368, -24737, -52710, -48574, -19566, -3659, 58265, -3608, 8869, -5865, -1139, -13375, -29250, -95641, -261851, -196256, -103052, -72594, -91414, -76713, -164161, 112734, 103030, -183585, -280024, 9877, 39428, -16713, -61127, -108097, -92391, -57857, -14644, -32796, 26055, 34228, -19691, 27483, 18031, -16073, -11601, -168097, -128649, 20735, -75176, -86793, -68886, -44322, -171101, 69718, -96475, -21808, 2347, -9403, 65860, -21012, -84014, -154441, -145612, -57405, -19073, -27942, 57416, 27280, -10729, 5163, -883, -17879, -53840, -81834, 45704, 36381, -21316, 5938, 41876, 19672, -26488, -136514, 77483, 90012, 157050, 101733, 38625, -105714, -99281, -147819, -97616, -65489, -15192, -7775, 50538, -2234, 667, 26067, 24063, 20562, -63921, 63246, 144335, 81095, -52873, 7187, 122244, 10702, -103619, -89414, -66445, 3385, -57529, 49203, 104501, -102184, -176593, -137331, -114304, -75843, -29160, 34301, 30890, 20363, -26821, 20385, 7863, -6636, -18207, 207238, 129710, -15489, -71446, -24663, -157526, -139456, -130291, -178030, -63717, -82824, 57012, 140998, 164843, 2553, -201566, -149969, -77889, -35515, 5366, 1980, -10542, -124, -34619, -25158, 4727, -1838, -36066, 211589, 154956, 19453, 12971, 91164, -83941, -46461, 90519, 19815, -96226, -53379, 31920, 108263, 100210, -99627, -173608, -111888, -48370, 5623, -30778, -243, 31570, 18764, 29680, 28040, -8763, -49219, -40893, 58667, 20395, -52398, -96867, -18033, -75296, -174412, -175427, -159766, -89496, -84249, -145669, -53846, 78478, -6213, 6784, 3244, -1766, -20034, -2818, -28155, -16423, 27484, -33498, 5877, 5690, -34203, 4198, -10552, -23519, -45401, 29172, -26368, -135819, -70380, -99358, -172564, -128068, -110661, -139020, -108158, -15131, 9749, -28523, 2321, 16608, 3697, -3380, 22961, 15535, -31750, 21018, -28169, 20062, 30073, 2595, -15953, -26045, -25144, -13074, -36136, -11829, -56867, -34650, -108864, -47876, -19317, -37182, -248, 11280, -31113, -21130, 12755, 33603, -10679, -325, -34476, -34280, 31060, 30307, -10885, -14122, -2312, 16548, -34731, -20012, -11881, -15846, -9047, 15695, -3154, -36065, 33212, 28596, 10811, 17054, 13186, 29265, -34142, -22168, -4535, -6794, -23719, -34250, -27276, -5547, 30317, 23678, 10294, -21935, -14368, 3441, -33104, -1630, 7263, 32289, -9375, 35056, 2694, -24778, 33754, 30963, -28220, -20718, 17077, -21975, 24284, -17040, -11084, -10252, 34073, -12077, -6944, 21610, -24436, -172, -27587, -32964, -8154, 3948, 34047, -11947, 4655, 29869, 19669, 9624, -39859, -29500, -15241, -43129, 15231, -20529, 30965, 13209, -12115, -3200, 23393, 26264, 21663, -20790, 10263, 26801, 6299, 23645, -22149, 25102, -1185, -32042, -4255, 52567, -14049, -28199, -23024, -14510, -27469, -48998, -41013, -51406, -48941, -40094, -60082, -54329, -135985, -77670, -54381, -30108, -10081, 30148, 32594, 17438, 17738, -17317, 14599, -24079, 15443, -25157, 1237, 35600, 23921, 162, 9626, -688, -29238, -15277, 26102, -154222, -160190, -102250, -200203, -215659, -215315, -124539, -97976, -95343, -109269, -22314, 25083, -32896, 22826, -22253, -25823, -14273, -12341, -20820, -1750, 33728, 60915, 112400, 63791, 29585, 44408, 145066, 50363, 88523, 3896, -76286, 44314, -76320, -16808, -71666, -110526, -120539, -191315, -101675, -10521, 22521, 18743, -30129, 13344, 24240, 30679, -12507, -74577, -46033, 69038, 79411, 61637, 12526, 362, 68226, 116954, 79845, 67349, 106337, 77189, -30020, 69998, -58904, 41216, -34499, -136553, -67778, 10241, -22838, -20200, 21221, 28529, 3554, -13565, -31519, -51099, -53700, 78944, -76661, -86912, 10588, -65430, 10305, -24609, -18201, 9550, -46798, 88992, -106110, 38738, -41222, 85006, -90324, -56796, -168528, 13844, -21177, -11100, 6109, 9805, 39291, 14550, 58541, -12595, 63242, 109467, -43481, 26507, 41265, 11831, -3046, 93036, -112182, -142301, -73518, -53081, 20806, 42978, -31582, -16420, 94581, -53604, -101067, -145101, -10477, -2911, -472, 20845, 22267, 65737, 110198, 61302, 36732, 146725, 121800, 47207, 37959, -39881, 19442, 75784, 63048, 23786, -49137, -3514, -50358, 42268, 164304, -77645, 103620, 116734, -38021, -43327, 41995, -10699, 19266, 26865, 32132, 124746, 158308, 195400, 74742, 93313, 46718, 112447, 11774, 29191, 3645, 116773, 141941, 76549, 4492, 155523, -71708, 31926, -37404, 53719, -30864, 111696, -27622, -98417, 22566, 5330, -4750, 14496, 81853, 93023, 136099, 208201, 132998, -58906, -43257, 25761, 112906, 12492, -39588, -64687, 72199, 51337, 77765, 8461, 133272, 82086, 5975, -27499, 83982, 87052, -145090, -160071, -50879, 8240, 5867, 47766, 172003, 177298, 261393, 77947, 98281, 197511, -1847, 132166, 92901, 162625, 3856, -161415, 42690, -115415, -51781, 37395, 97012, 21382, 103396, -25047, 194158, 312854, 85274, -33457, -35235, -15042, -33753, 74975, 150772, 178428, 209105, 72795, -178, 196712, 150918, 18773, -73908, -96877, -270581, -371002, 15683, 8338, -115, -71537, 4432, 66916, 148426, 7744, 147370, 155584, 173069, 7197, 1884, -671, 3588, 56642, 58360, 102880, 87871, -25105, -2969, 220996, 172247, 107742, -90360, -325653, -402179, -59984, 3411, -60354, -139984, -73029, -54554, -225271, 94633, -65684, -146362, -17516, 56612, -31855, -3622, 21123, -3665, 2625, 26498, -1344, -80893, -125622, -179892, -187757, -389961, -688397, -652595, -386270, -262200, 11137, 126515, 12625, -31688, 49609, -35166, -27242, -190620, -98509, -53161, -130775, 2255, 29363, -2903, -4788, 16634, -25476, -18993, -98238, -284994, -371397, -616069, -956274, -1151398, -778879, -369734, 40167, 161520, 166674, 51391, 43399, -121141, -41711, 31542, -70885, -69164, -113976, -163753, -174531, -76633, 2351, 32783, 1483, 839, 27944, -6864, -62685, -331543, -544379, -632967, -681902, -400595, 77118, 147835, 228551, 176778, 86564, 66440, 146243, 28315, 42191, 31915, -61601, -71845, -54009, -118774, -135776, -81123, 19997, 21949, 21677, -11855, -22619, -15118, -28537, -193285, -402677, -341251, -23358, 161234, 252609, 177832, 55844, 104710, 180818, 153331, 26553, 35290, -53788, 22285, -97937, -29468, -100698, -131758, -32562, -9955, 80080, -1746, -14624, 22215, 18957, 26176, -64041, -105969, -253349, -61709, 165868, 91312, 98972, 37358, 16965, 102329, 164560, 23191, 67399, 21852, -37144, -57029, -1081, -33382, -81843, -36038, 3861, 16728, 70629, 17989, 29087, -9904, -26639, -8728, -98121, 3346, -150320, -98740, 49868, -50702, 182430, 251007, 117665, 55794, 65591, 84884, -9741, 130365, 5494, -15842, 40822, -25935, -42520, 49985, 37183, 100044, 151071, 10384, 31060, 31798, 10461, -31609, -34320, -27881, -53985, 50535, 119663, 124278, 46386, 69710, 61014, 81197, 55526, 36702, 30203, -29319, -48264, 78306, -31128, -76892, 68536, 31726, 168545, 163624, 60665, 5456, 8335, -9619, 15387, -19258, 36947, -89737, 35920, 102276, 19257, -102472, -19057, -37490, -107136, 55810, 31325, -52438, 32006, -97154, 164953, 115058, 82121, 21577, 88897, 21145, 213878, 111856, 82225, 787, 34452, 21021, -2912, 6181, 800, -61557, 105193, 83460, 63825, 41872, -80620, 76155, 11201, -30497, -60142, 131871, -6606, -77272, -156297, -14332, -8891, 124677, 91925, 136172, 102241, 63028, 35468, -20616, -21713, 16090, -21452, -16697, -91554, -111731, -109723, -35325, -9533, -38842, 142096, 52237, 6080, 116484, 106800, 58647, 141280, 172116, 12631, 15670, 10916, 38743, 87548, 65034, -3749, 25477, -25451, 5675, 32182, 6493, 6300, -24483, -69027, -62474, -126279, -52975, -255874, -155486, -52866, -95701, 69405, 4775, 43007, 2808, 52167, -1487, 44935, 59118, 78026, -22959, -56496, -80726, -9123, -23176, -22191, -5052, -20345, -9992, -15535, -10831, -22370, -22048, -31589, 3840, 43237, -88508, -40772, -71284, -64472, -17709, 27751, 5261, -11197, 34465, 23645, -84063, -119288, -78603, -136971, -90859, -8083, -37262, -22121, -8327, -33476, -32152, -10730, -6732, 26198, -149, 32397, 54875, 110751, 167679, 220431, 151140, 18220, 65569, 118853, 152522, 153898, 51583, 120474, 54291, 32325, -22667, -27048, -47243, -32728, 27784, -24129, 34284, 15863, 13784, -4423, 6718, 9159, -16778, 29337, 26089, 19135, 49081, 41540, 38953, 22475, 30907, 43187, 86628, 79976, 93035, 43125, 30360, 66852, 571, -950, -11129, 31834, 13525, 8847, -861, 900, 14411, -33595, -34573, 24082, -34960, 18768, 25851, 23684, 10893, 3968, 16494, 21282, 1125, -25698, 22220, 3979, 21514, -23934, -8928, -22943, 2046, 30350, 6788, 30358, 26241, -24565, 34283, 1984, 29903, 6916, -6098, 30319, -26426, 793, -5169, 1325, -10601, 28076, -2029, 13941, 14291, 31461, 11670, -35492, -28616, -34040, -35276, -30233, -905, 33511, -23246, 15025, -16295, 27667, 23228, 16594, 31463, -26937, -30326, -18246, 7238, 31543, 23143, 10139, -7530, -22105, 20055, -86148, -70901, -28646, -39412, -40172, -31327, -49551, -48755, -55527, -2310, 16033, -18440, 22133, -8610, -25907, 6132, -6826, 29700, 2475, -7834, -27887, 26304, 17876, -3076, -33806, -58382, -61302, -102601, -181664, -168090, -138510, -86269, -85176, -87747, -194161, -202985, -160177, -113147, -141181, -157443, -80992, -52558, 8698, 4975, 20523, -19300, -23060, 16605, -616, -29060, -25437, -101164, -158876, -147769, -139525, -137697, -113028, -98904, -67842, -248138, -55234, -14107, -18636, 4581, -47983, -68518, 31401, -11645, -30658, 58722, -15369, 4942, -29497, 17108, 7123, -21917, -32842, -33665, -116259, -205113, -207243, -130017, -119269, -123524, 37926, -69640, 1068, -57022, -116637, -133113, 118642, 66190, 132416, 49465, 169696, 114114, 73838, 2484, 41651, 3949, 23813, -28725, -15827, -46, -65347, -37090, 35551, -34396, 35544, 48713, -124886, -10828, -88224, -108784, 27631, 101391, 24052, 81536, 117165, 10304, 65685, 44291, 140385, 192750, 34356, 102965, 127363, 17803, -19211, -34937, 27704, -41897, -18756, -94408, -44163, 74017, 224834, 9299, 108733, 81263, 171304, 14130, -99797, -67176, -118211, -50177, -63953, 46976, 129406, 43821, -102873, 23905, 106950, 101791, 197922, 52483, -33325, -33708, -22095, 42953, 68994, -112973, -21175, -14273, -43974, 25164, 6204, 133326, 116801, 22693, 81930, 69651, 1940, 79351, -3456, 4093, -96750, 63994, 58465, -34348, 166134, 200961, 203582, 32314, -20729, -2861, 49102, 105071, 188771, 51020, 96178, 10813, 34761, 21211, 162761, 91202, 210196, 49668, 61882, 11709, -55887, 95167, 123445, 68935, 54454, -33450, 23140, 5600, 102915, 336371, 237367, -5905, -17796, -8670, -1784, 130688, 93442, 117872, 206616, 24026, 46557, 86082, 157701, 204094, 174494, 161930, 117499, -183578, -100777, 10657, 13524, 130648, 45690, 116198, 190481, 33712, 8575, 158530, 51689, 38, 27977, -20645, 7633, 87290, 40860, 106567, 52389, 51022, 159397, -66567, -10429, 2510, 192381, 150555, 152165, -317788, -266603, -182085, -122730, -51595, -146492, -64931, -7514, -89003, -20700, -38053, -6358, 30687, -7984, -8864, 29877, 49679, 68634, 68257, 42887, 49427, 96111, 36683, 34340, 1186, 9211, 133036, 25839, -463445, -362633, -138489, -133858, -139020, -197234, -154831, -191849, -65896, 76889, 22067, -17382, 5666, 12762, 7592, 2542, 62808, 19263, -43344, 83754, 26363, 24265, 46946, 50037, 155732, 57080, 98587, -255095, -339773, -61291, -169994, -199883, -140767, -99352, -195362, -210094, 9981, 59734, 24393, -30742, -225, -2771, -28461, 2831, 51492, -19524, -132014, 68872, 33799, -14695, -7263, 85922, 46368, -89752, -95639, -525402, -262484, -36223, -209964, -105963, -159722, -182827, 14346, -7801, 99018, 155399, 26236, -90205, 26390, -19021, 6815, -33421, 30131, -71452, -79841, -26791, -91384, 98891, 22257, -27237, -8729, 17042, -288773, -477649, -14701, -137067, -167213, -66409, -10921, -636, 852, 66046, 30273, -126, -4091, -88407, -31021, 4800, -7931, 11378, 29281, -37274, 38247, -35457, -23745, 2223, -10654, -65624, -97884, -202646, -522523, -338086, 27291, -61319, -176005, 880, -127895, 114450, 5195, 35226, -23164, 72842, 36903, -62452, -2640, -6457, 27250, 25319, -3180, -60036, -57763, 31420, 3462, -36683, -151058, -177680, 36495, -241767, -468354, -144890, -25593, -99780, -79994, 93032, 99705, -48111, 30698, 37172, -35555, 63514, -14067, -22453, -2137, 13968, -18842, -6967, 9139, -128210, -75766, -5197, -21140, 7145, -7493, -164665, -102521, -240712, -412546, -116467, -157495, 10163, -96812, 62927, -535, -58685, 129711, -2759, -14360, -8464, -5966, -41028, 2222, 13558, -7565, 28204, -22405, -146872, -39474, -22961, 109709, 63342, 33924, -156746, -137638, -103995, -100247, -80795, 4556, -4803, -21304, -51810, -91395, 56192, -36488, -46341, 15024, -62576, 25251, -55724, 9751, -4019, -2854, -17444, -10814, -117324, -42209, 89025, 26339, 30547, 18255, 124972, 123124, 154706, 254056, 87725, -74307, -148983, -166264, -119930, -76635, -92218, -169708, -62371, 17765, -45534, -26601, -24950, -26963, -16137, 15611, -10270, -56621, -52415, -23293, -42330, -33330, -62916, -13586, 105216, 146893, 104301, 106677, 13001, 24851, -9322, -46516, -37748, -127170, -149314, -11274, 93403, -63725, -34955, -26585, -2898, 29299, 1880, 34824, -23702, -42909, -83516, -132724, -85690, -73821, 16902, 71179, 79726, 71674, 17995, -57697, 135419, 144988, 33164, -21873, 20515, -3074, -51000, -20686, -27257, -16913, -65039, -65136, -29285, -27446, -30679, 10336, -9801, -30238, -39926, -98164, -70212, -38007, 7190, -12888, 65207, 96089, 99129, 72942, -95793, 135416, 80881, 154359, 143577, -66532, -86945, -151178, -31015, -10304, -23034, -37814, 3758, 10673, -5699, -3223, 10979, -21866, -54714, -67026, -91827, -59786, -39797, -27386, 34480, -78661, -169910, -65779, -22176, -6524, -106459, -61854, -15885, 26374, -6065, -57022, -43867, -15354, -9693, -24288, 33047, 35002, -24004, 23652, -6810, -10178, 12109, -5875, -53804, 24576, 129974, 68568, 153096, 22155, 207042, 236095, 60599, 135911, 138203, 66782, 66786, 64850, 132043, -34458, -37676, -11071, 16067, -14441, 18693, 8240, 23160, -33801, -3332, -34228, -28112, 22732, -39309, 5694, 121011, 150887, 86406, 106776, 134694, 228782, 139472, 242786, 230641, 188678, 106253, 74935, 192232, 103981, 27307, 39951, -8723, -7375, 13392, -26722, 33750, 4439, -33197, -20623, 17222, 8320, 18930, -31764, 16995, 55529, 60524, 66290, 4969, 52870, 56982, 102887, 67900, 53993, 37822, 52288, 67291, 30474, -10263, 29077, -17345, 30457, -22245, -2461, -13809, -19555, -11779, 23018, 11799, -3294, -28684, -19785, 20283, -16683, -27539, -19588, -11942, -13409, 25428, 835, 33763, -32877, -17932, 11864, 21897, -14666, 14286, -19674, -21631, 19530, -2175, -26136, -1381, 31432, 8154, -7147, -6470, -21224, 21548, 12176, 4437, 24024, 35691, 15899, 17993, 4519, 12168, -35222, 4111, -7018, 24681, -10401, 7986, -3968, -16758, 2883, -13789, -15459, 3764, 15010, -16994, 19039, 10597, 27572, 3455, 28569, -28207, 39893, 9616, 91833, 91946, 117273, 204862, 219751, 162792, 160459, 233787, 157067, 127063, 61707, 124631, 39291, 60916, -2262, 38549, -26682, -9850, -5458, 21019, -3328, 5129, 27202, 13917, 36538, 5175, 60117, 13276, 54497, 185339, 155902, 200673, 139120, -6049, -47389, 119482, 135796, 59457, 67424, 82396, 119124, 234793, 103403, 50285, 13671, 1202, 38665, 7373, -32423, -4875, 7682, 9742, 22742, 19422, 28226, 10694, -17591, -90343, -60256, 40532, 99200, 94331, 26047, -49545, 73266, 94025, 33622, -15948, 5599, 37045, -71817, -139979, -127694, -35050, 7288, 37435, -15450, 14390, 34121, 1481, 37680, -27965, -16448, 9046, 62571, 49768, -61125, 62455, 23321, 109676, -12422, 14626, -33178, -103108, -92173, 8603, 18032, -83988, -126156, -227254, -226264, -54186, -21246, -13224, 12214, -21147, 25706, 22864, 98862, 6909, 43678, 74579, -59175, -81067, 24556, -10512, 42713, -62624, 44606, 51338, -73130, -89759, -52682, -51276, -109388, -41249, -207942, -326268, -293230, -113557, 8311, -22884, 22649, 33269, 28559, 82874, 118049, 63394, 39442, 59535, 47812, 63169, -5249, -6093, -44121, 93750, -121786, -245719, -457, 82413, -93949, -25615, -18233, -50837, -89013, -253117, -274775, -150779, -2249, -2696, -22929, -24916, 45531, 20142, 122168, -10053, -23628, 105212, 53720, -93422, 93922, 51806, -58805, -7450, 170552, 85681, -148825, -67325, -101716, -51006, -14259, -35229, -37477, -156876, -338962, -129525, -12633, 1407, 10149, -14748, 104764, 72246, 229415, 76606, -100806, 25755, 21759, 20504, -6352, -163521, 68139, -41609, 62482, 87708, -18836, -3597, 48656, -118046, -189407, -179171, 18048, -149642, -294486, -94492, -56884, 36009, -11745, 45082, 68117, 6090, 125010, 128737, 186653, 294356, 307427, 141210, 157567, -19175, 13670, -78527, -25680, -51732, 77391, 75360, -42154, 15807, -78922, -82370, -80270, -159790, -204781, -167421, -39311, -3995, -14563, 14132, 48963, -4505, 60256, -93375, 10503, 157084, 147170, 26083, -88760, -63878, -207868, -341024, -35384, -130747, -123300, -163969, -158012, -14661, 1622, 37044, -154512, -150541, -147001, -130982, -49089, 21133, -20102, -122, 29945, 1366, -29503, -334562, -422200, -475680, -548453, -619996, -665725, -560116, -500855, -477195, -309036, -190095, -110441, -111225, -48460, -176282, -180092, -73584, -78774, -66012, -8663, 43408, -2903, 769, 4114, 6672, 43015, -68131, -202696, -481587, -658107, -858001, -792103, -396810, -301750, -157789, -123041, 155833, -21167, 46269, -102126, -33626, 74063, -31098, -108106, 24517, -765, 167630, 260717, 67565, 30428, 27749, 11197, -25181, -26906, -76973, -307326, -531294, -521347, -364137, -90918, -26686, 141192, 25118, 75504, 20471, 72728, -51121, -70375, -92084, 58025, 41516, -77296, 82503, 40911, -19492, 61322, 117496, 34473, -19292, 31148, -16938, -53425, -49839, -306181, -249946, -2081, 128713, 237904, 147083, 85663, 47622, -58448, 131689, 121940, 11739, -776, -35158, 93617, -128447, 39640, 120592, -40281, 21593, 31923, 166938, 59665, 3650, -4440, 13811, -63547, -74201, -178727, -80138, 189375, 142217, 20088, -5623, 35060, 100841, -21309, 175675, 213789, 11667, -38272, -21741, 9042, -17704, 62966, 9962, 79727, 88340, 123505, 313857, 152075, -12329, 25744, -4298, -38184, -1745, 26853, -36760, 39369, 112243, -50631, -62384, 83847, 54252, 118229, 144630, 97977, -18203, 27010, -31080, -46768, 48879, -15565, 76198, 39659, 68117, 155384, 269920, 97404, 33275, -8132, 14777, -34654, 32236, 154149, 65899, -24813, 39170, -45102, 73423, 22608, 2086, 106322, 134647, 235783, 106938, -17621, 103902, 83615, 93908, -34795, -40723, -3160, 85960, 172108, 252943, 72844, 36406, -15715, -11257, -36995, -10250, 61398, 10967, 11715, 54389, -23349, 73340, 77190, 64156, 145062, 276354, 24800, 35563, 138002, 19072, 20071, 3507, 11880, 78478, 100885, 73936, 84209, 207237, 29441, 13182, -26096, 26621, 2389, -34838, 77833, -2137, -65175, 126235, 134086, -23501, 243076, 130101, 241418, 84310, 136533, 13862, -49368, -129341, 45265, -37243, 26069, 72669, 22134, 137607, 187349, 98317, 19917, 23914, -17184, -24349, -28581, -3604, -41644, 55225, -22194, -46539, -109831, -85673, 85122, 112721, 46975, 88176, 144499, 47382, 44674, 113163, 111370, -47734, -65420, 19416, 38572, 148370, 169893, 74186, 27517, 18507, -32831, 21471, 15710, 24130, 40045, 146928, 99299, 109222, 117574, 11337, -58069, -263699, -116421, -122108, -10042, 25801, -72458, -41961, -118053, -25993, 40168, 35736, 83658, 46655, 68823, 6255, -39939, -14098, -23941, -18456, -22791, -63418, -16309, 45690, 96382, 81542, 73395, 100466, -11584, -49938, 5887, -57278, -78131, -33673, 20438, -114767, -1165, -12756, -50333, 20910, 13618, -68400, -16435, -13083, 22234, -17379, -15584, 14178, 14923, -87079, -8082, 53169, 81202, -45, 8453, -67454, 17287, 54966, 37956, -67810, -17676, -8156, 6500, 102028, -62392, -96737, -102939, -136703, -49610, -102538, -16531, 4611, 27786, 8646, 16640, -7768, 34172, 21670, 55799, 29556, 32413, 114373, 74155, 99757, 156336, 79857, 164825, 91767, 39307, 94295, 81555, 79809, -86172, -122894, -119297, -144484, -45365, -45209, -36669, -12574, -30498, -22079, -2270, 1283, 20094, 23726, 31207, -26315, -7035, 107447, 134277, 217198, 225851, 145110, 179481, 163304, 181340, 170190, 103026, 123897, 41021, 7813, -54916, -80081, 2476, -24771, 4994, 34625, -22398, -19235, 24200, 17992, 28106, -6202, 21307, -29991, -15231, 19853, -2674, 22548, 21854, 81090, 50682, 79769, 85496, 115945, 53326, 62800, 17073, 3510, 28472, 19684, -54436, 28611, 11777, -20240, 17223, 35511, -9155, 27740, -11024, -33521, -28220, -12009, 33779, 15008, 30794, 18100, -508, -23599, -31946, -10708, -15630, 32149, -8626, -4316, 6478, 29318, -3675, 18729, -24640, -34026, -5479, 16363, 22372, 13022, 27068, -20999, 8031, 29715, -22091, 25198, -23355, 32754, 28335, 42244, 7927, 17799, 6168, 51953, 8267, 5152, 19831, 38186, -8702, -21861, -3212, 13993, 7149, -5672, 4645, -2903, 27674, -20986, 34441, 339, 25085, 14379, -26298, 27348, 2518, -384, 56995, 77944, 79876, 141174, 214023, 143042, 209044, 246191, 204627, 195802, 46751, 40820, 5851, 38475, -264, -27502, -606, 28171, -20572, 30098, 19880, -4075, -1299, 29700, 3951, 16598, 24400, 11465, -32328, 71168, 83300, 284, -90823, -54074, -76585, 383, -54216, -31388, -60954, -14553, -16276, 57954, 58964, 25823, -18773, 2299, -4864, -20855, 8667, 30569, 18696, -15153, 8692, -4435, 4508, -159332, -25212, -37343, 55165, -83806, 18084, 68489, 30965, -28577, -73853, -9630, -63099, -121489, -101718, -138140, -121730, -83434, -151299, -91244, -14992, 15067, 12873, -10826, 29195, 16941, -52020, -18700, -53514, -91863, 29320, 144555, 24103, -86925, -103687, 6639, -34678, 45320, -38475, -88755, 130393, -61114, 46207, 12822, -52185, 74572, -52693, -94496, -8070, -4182, 8814, 28245, -31401, 28650, -55923, -120067, 8341, 29971, -33092, -86998, -117032, -184673, -207956, -247908, -134468, -73236, -212783, -141416, -44061, -178833, -33947, 2620, -61204, -38561, -145768, -112185, 5753, 18027, -33520, -34125, 2523, -23231, -12221, -51936, -50425, -30516, -23858, -95170, -4948, 134271, -185190, -227595, -76695, -169270, -131108, -37347, -108889, -110872, -94491, -165246, 16584, -180131, -232192, -166281, -12641, 11985, 14374, -16168, 33563, -22487, -16928, 33888, -45386, -127171, -154393, -44469, -180525, -125885, -145343, -62470, -129864, -528, -196110, -32600, -124424, -53695, -62703, -31811, -85735, -298265, -324548, -195711, -14016, -2902, 33398, 32999, -14318, 20812, -56380, -85555, -196487, -113435, -119827, -183462, -149072, -244865, -66641, -205332, -71443, -93532, -58368, -34968, -203730, -57561, -171751, -133224, -20203, -356243, -388218, -153856, -88725, -30986, 33559, -27359, -1292, -71674, -102942, -81096, -163530, -9618, -108887, -127984, -30584, -98862, -76303, -54879, -154643, -115009, -45784, 26898, -105375, -75760, -193101, 3704, -164930, -359037, -313339, -152668, -61465, -6894, -21178, 14226, 4847, -51303, -73242, -159382, -292870, -229756, -137867, -136843, -281760, -340723, -203533, -183426, -40800, -108074, -124812, -177358, -69490, 79906, -82288, -34100, -185112, -232927, -118398, -141543, -120106, -22228, 21, 31986, 24094, -88886, -139390, -233534, -298117, -167859, -107444, -24607, -129734, 15153, -169984, -168310, -123127, -90269, -68084, -180102, -178048, -97600, -181571, -89387, -111770, -125967, 50349, -726, -77214, 10589, -33481, -13643, -3287, -26579, -38030, -101767, -17898, -67123, -52388, -24533, 154, -87570, -241985, 120879, 11630, 74415, 40478, 14674, 84578, -78877, -67706, -13543, -54564, 111974, 173113, 19313, -3660, 46238, -31717, 2955, -26652, 37275, 28916, 154778, 154716, 79760, 7357, 88315, 171982, 64022, 171595, 234194, 56697, -74470, 23506, -89566, -26129, 63153, 49014, -23643, 95853, 60791, 52518, 110881, 59386, 5565, -5079, -16492, 12541, 96931, 113134, 160482, 201745, 135316, 220646, 171812, 124118, 157006, 108603, 249519, 240339, -11303, 31448, 61858, -54250, -67347, -48063, 64778, 77681, -7620, 16936, 129296, -6561, -5888, -2766, -12126, 19241, 40640, 33573, 44796, 89008, 78796, 22733, 157178, 96593, 192243, 84804, 238749, 254173, 57264, 72184, 24820, 97750, 41037, 23192, 135938, -19734, 16280, 34156, 215962, 45783, 29945, 18856, 16128, 45866, 37565, 17076, -2316, 61154, 1387, 159305, -2095, 135350, -42557, -36682, 211582, 257597, 24192, 93330, 16349, 8498, -30811, 53014, 141478, 5189, -51430, 55217, 217081, 75778, -45156, -17111, 22686, 12722, 12341, 49277, 27942, 30918, -14362, 60802, 43311, 35204, 55521, 182951, 115924, 189516, 85791, 118411, 93104, 73388, 146217, 51104, 38103, -34397, 183921, 253891, 210148, 11860, 13434, 10373, 6049, -37734, -28168, -44480, -27650, -69319, -1289, -77822, 86541, 26658, 49731, 70619, 183822, 132452, 207416, 63755, 140484, 94318, 120424, 23524, 124197, 132065, 176591, 149368, 94096, 54141, 17565, -26492, -6848, -49538, -44526, 16132, 267, -27162, 116449, 83856, -35595, 171963, 151517, 96342, 568, 264090, 123267, 242660, 130097, 291095, 170742, 120698, 97964, 88969, 121640, 165077, 11034, 36486, -28529, -23194, 13454, -22811, -17342, -12714, 113994, 31078, -22312, 40634, 47470, 128733, 47488, 43741, 31920, 49639, 104789, 43315, 207315, 135607, 134504, 20674, 155033, 50662, 160607, 146341, -16536, -29074, -16595, 42, 29051, -49853, 18428, 87547, 173205, 139854, 44993, 16583, -7017, -6163, -191333, -105431, -36688, -122188, 3339, -68513, -147113, -56089, 89084, 42670, 104299, 26146, -100025, -55460, -67632, 6562, 3849, 34911, 24125, -16324, 12682, -34507, 37346, 17596, -51858, -34705, -65067, -72676, -56823, -70447, -114833, -134743, -60783, -54404, -144726, -110530, -103571, -114627, 19796, -49933, -157299, -74235, -20476, -35379, -4673, -20796, -24307, 19182, -6807, -27073, -25045, -112238, -142282, -203771, -120429, -85641, 18600, -35252, -108066, 43446, -88657, -39894, -24941, -22944, -143941, -180525, -87834, -36158, -91474, -25043, 19304, 21386, 11413, 19820, -32392, -35580, 18466, 33699, -59659, -93777, -142436, -192204, -278567, -202391, -241890, -253456, -281428, -256406, -163092, -195947, -206858, -199242, -186310, -137565, -73445, -39927, -60581, -1047, -31288, 2726, -30969, 30541, 17926, 28291, 6925, -15810, 9081, 6733, 6995, -23457, 24456, -51157, -85552, -89265, -102505, -79086, -123539, -172465, -61796, -114464, -101722, -53557, -48013, -25648, -18007, 17057, -15225, -8137, -8589, 19387, 31371, 2228, 156, -3654, 17116, 25937, 8715, 22144, -11226, -13143, -38359, 14933, -19569, -22046, -34539, 3374, 11531, 21627, -7860, 1723, 33563, 259, 25716, 34987, 30390, 16202, 22811, 32601, -3508, 28655, -14693, -11313, 16037, -21519, -13688, 1920, 2943, 1808, -4785, 11369, 34505, -11966, 19648, 8747, 22593, 29132, -3416, -7423, -14086, -9896, -15179, -8819, 20874, 10720, -16850, 20200, 3203, 1413, 13790, -20006, -3786, 27095, 22955, 20100, -4860, 4718, 24438, 6552, 19409, 14948, 12078, 16275, -24004, -31724, -35673, 27825, -19869, -28081, 4566, -6878, 11339, -9327, 27671, -33861, -35195, 30761, -15498, 8752, 13835, 5858, -22170, 3325, -19583, 54817, -19893, -50760, -107898, -221540, -226471, -121888, -85253, 14272, -17372, 16919, -14257, 12471, 19002, 6717, -6925, 14567, -35589, -3665, -7271, -27339, -1748, 3028, -35904, 31441, 12385, 31329, 13056, -2131, 14513, 21901, -70835, -79506, -32674, -8381, -55692, -203943, -122109, -75199, -18812, -86395, -21863, -878, -6747, -8697, 19729, -20223, -13727, 31605, -9160, 5183, 31836, 20211, 113215, 101203, 136940, 185105, 327795, 221699, 268250, 110992, 38561, 59729, 78575, 800, -48471, -98159, -117341, -80586, -62772, 34891, 44513, 29123, -16345, 7610, 30710, -29514, 41045, 39122, 102143, 135513, 91410, 111612, 59168, 127482, 195654, 254264, 210763, 118676, 62206, 74766, 18985, -20749, -11637, -65162, 24146, -58393, -51260, 18885, 69830, 28901, -15797, 20754, -17530, 15564, 83153, 94441, 156994, 157736, 89636, 228875, 119983, 114444, 199409, 115983, 167357, 282544, 285890, 176138, 243254, 92724, 6152, 43352, 95769, -62233, -97115, 34013, 155902, 31171, -20783, -27355, 11642, 42462, 131022, 171665, 150709, 221159, 189447, 171292, 93390, 123280, 157179, 68404, 128333, 178722, 194044, 127818, 80836, 145278, 82721, 193076, 18700, -10265, -92121, 121379, 141258, 91638, 40272, -29322, 18216, 40396, 139042, 198632, 215751, 186757, 82498, 209776, 64826, 198522, 137448, 198273, 98253, 218184, 50356, 290106, 57325, 186959, 101217, 153870, 62185, 121288, 128198, 220905, 190781, 78054, 41012, 22054, 35064, 81326, 147188, 179437, 277264, 36536, 69952, 54603, 170830, 121836, 75694, 205567, 241376, 209404, 274673, 237077, 297002, 204384, 158353, 132701, 109977, 89629, 172386, 275015, 184749, 46087, -3257, -23224, -20024, 109738, 183549, 105678, 53810, -25050, 13452, -8498, 58159, 119261, 68305, 64400, -10082, 120014, 88656, 182884, 80015, 46545, 103541, 50382, 70777, 116897, 154161, 103121, 91871, 46122, -28476, -22214, -18084, 102303, 117740, 72044, -11478, 30552, -59544, -39960, -65111, -61249, -4068, -54453, 19384, -245862, -220456, -151238, -60760, -142592, -32704, 29949, 40852, 65723, 43298, 54164, 16913, 364, -34090, 4647, -19147, 75311, 47346, 2583, -65323, -65585, 1317, -59701, -130489, -34738, -192252, -61629, -98791, -174752, -108613, -14265, 90328, 26568, 96899, 119538, -17968, -76091, -94992, -18587, -11679, 11326, 28312, -33792, 16704, 35437, -12506, -50372, -110782, -131167, -90092, -127647, -262249, -142411, -115484, 21193, 1132, -129154, -96983, 47552, 814, 58579, -24450, 21585, -66509, -104902, -209082, 16499, 7858, -9175, 9233, 29357, 9489, 40360, -457, -48055, -133645, -37706, -129415, -166367, -61732, -33601, -75243, -74100, -27905, -169591, -103533, -182894, -114731, -33539, -37990, 14141, 2007, -132987, -112657, -14790, -38718, -3840, 1973, 23830, 10779, 3455, -113491, -55101, -127814, -142107, -77158, -92455, -69445, -110942, -158458, -56718, -69602, -143795, -88169, -55108, -52963, -78571, 99950, -51330, 50650, -74194, 31161, 87248, 31570, -8497, 13926, 32753, -20944, 45439, -31008, 90616, -46549, -266001, -27005, -10358, 549, -53051, -71031, -39269, -81118, -169598, -141980, -33370, 55818, -34576, -13261, -41286, 36443, -24974, -27695, 68555, 18834, -18592, -23796, -4381, 9743, 15052, -20313, 191391, -20812, -41517, -64784, -94534, -75370, -40775, -19234, -167196, -235827, -180520, -48152, -46430, -30682, -41544, -61289, -88215, 58847, -110693, -81854, 73897, 42379, -33307, 4031, -25391, -29996, -15751, 14561, 134650, 156596, 6652, -119769, 37139, -178547, -33785, -143011, -143989, -189644, -195205, -31385, 12705, 107297, 39407, 7920, -6336, 35831, 51070, -14834, 39221, 1690, -23037, 23645, 8159, 9084, 5796, 35780, 146859, 269565, 195685, 114157, 141511, 14726, -3994, -79869, 101925, -132423, -101530, -28668, -167010, 1442, 84191, 69351, 44856, -20862, 44051, 57323, 60096, 538, 12460, 31456, -12517, -446, -10528, 112641, 149330, 345555, 313730, 106426, 123319, 37564, 23886, -147487, -24387, 4417, -53027, -51149, -32833, -132272, -55973, -60166, -14817, 47264, 37680, 61845, 7951, -378, -24148, 8320, 6106, 35530, 39542, 78313, 157312, 43935, 43030, -26032, 2361, -113044, -79130, 5096, -69540, -58738, -172387, -78322, 11172, -146449, -152706, -153676, -80860, -32057, 32309, 10780, -15037, 28468, 38730, -318, -32268, 12496, 55698, 64007, 57220, -56628, -14820, 134489, 135129, 115769, 134866, -2462, -661, -56586, -76598, -75920, -43084, -55826, -31342, -29362, 1513, -154982, -45390, -20949, 6223, 23771, -6192, -6404, 13770, -13803, 3605, 47707, 62485, 40255, -30454, 108388, 46388, -204, 21010, 144806, 170144, 139937, 86048, -33984, -57405, -12380, -104844, -103989, -108098, -174266, -18552, 22901, 22076, 5794, -10729, 4408, -2171, -5120, -7019, 28571, 56574, 46560, 84524, 96918, -56926, -22130, -14444, -50624, 71864, 159636, 114950, 41289, 52154, 74293, 51333, 50305, -68468, -82977, -14848, 15592, 28108, 27851, -29099, -16061, 12705, -8892, -30285, -7881, 33957, 34890, 122748, 217661, 200306, 225753, 236542, 306337, 285332, 129657, 101135, 248464, 220902, 378763, 211284, 143809, 70891, -25563, 13219, 15875, 39282, -26963, -7001, -14249, 26580, 28049, 737, 14340, 39066, -18113, 42893, 130294, 166789, 165013, 210093, 177729, 227816, 306832, 313486, 179472, 194358, 192966, 129175, 122028, 50324, 47935, 19553, -9683, -13950, -30494, -34722, -7312, -31020, -35687, 17802, -15704, 88, -8121, -24475, 2609, 7438, 44649, 84206, 34633, 49078, 75159, 115061, 72451, 47132, 44349, 17614, 54599, 8443, 20638, 21487, 30421, 6163, 618, -10329, 22826, 26609, 27755, -31710, 2537, -21813, -23530, -31171, -13638, 31926, 19997, -24686, -7396, 15881, 21666, 26120, -18775, -14413, 19327, 7806, -18422, -27050, -2077, 30347, -14141, -4962, 13509, -29805, -14451, 5065, -16301, 27930, -5058, 15137, -6608, -3990, 33114, -27823, -24288, -12729, 7845, -7784, 15560, -17394, 9326, -32823, 2602, 19694, 6987, -15148, -13323, 7777, -24646, -27735, -462, -30475, 7999, -23600, 19730, 20833, 28840, -22580, 1840, 26521, -15914, 5341, 7563, -6464, -7943, 19191, 12790, -14166, 35126, 38254, 39295, 115731, 91032, 15676, -14176, -17563, 21892, 29692, -5344, -12306, -28752, -1310, 19812, 17243, -14601, -13891, 9555, 6186, 12329, -14895, -46181, -60920, -71667, 8045, 9635, 4188, 82330, 52395, 61293, 156670, 198783, 98918, 52501, 9695, -7811, -7007, -4850, -27199, -14993, -8964, 277, -8988, 10431, -9854, -20822, 12419, -21486, -29670, -38275, 25992, 81066, 120188, 57240, -3231, 135533, 51568, 5572, 199131, -39808, -52252, 119265, 52827, 50353, 30988, 43094, 10606, -25657, 30452, 11889, -3749, 43720, 8983, 81230, 25095, 4285, -18584, -20421, 45305, 75037, 3404, -108474, -3512, 104430, 23812, -3343, -41846, -21282, 12412, 38736, 78018, 83704, 44132, -18947, -40625, 4220, -11335, -23792, 26268, 16280, 19998, 38477, 8602, -60259, 78970, -23809, -26237, 25088, -40660, 123556, 97283, -43384, 14211, 1474, 89565, -38337, -61643, 101548, 117262, 89557, 171746, 125347, 18289, 31757, 1609, -1282, -2511, -12579, -55123, -20744, 2606, -49569, -19472, -151382, 1868, -90211, 38004, 64055, 87131, 156807, 101989, 55430, -29464, 108673, -21924, -71433, -47125, 16253, 227743, 229330, 88169, 35295, 14810, 33620, -2826, -19755, 11274, 1403, 55531, -30908, -72647, -6189, -2718, -18522, 72636, -7116, 10295, 80123, -31090, 8942, -26515, 16606, -25613, 75875, 60429, 85486, 377770, 368233, 109920, 25246, 25748, 30197, -48769, -79232, -1629, -49158, 30569, -68906, -29681, -17116, -101543, 4724, -39581, 10651, -28766, 10857, -24981, 19181, 9256, -44968, 84895, 119110, 136308, 70982, 355086, 240750, 67614, -32044, -26012, -415, -24686, 80907, 19773, -101715, -13396, -29891, 55510, -48755, 97172, 12807, 18835, 86285, 87662, -148134, -70193, -122781, -137393, -117337, -173137, -50143, -113579, -189166, -2304, 85513, -10041, 153, -30140, -26501, -57799, 100325, 61988, -48457, -31300, -82185, -174, -45188, -114721, -35591, -120433, 163329, 200211, 4551, -48131, -40978, 2402, -84081, -185634, -332250, -480929, -357725, -224003, -23004, 20538, -10250, -32581, 13602, -51244, -26806, 1884, 25568, -96389, 3906, 78922, -63039, 27826, -12835, 39510, 145136, 154866, 30811, 9526, -25834, 92950, -28175, -5007, -274889, -430639, -282869, -229426, -43942, -29969, -22743, -9261, 17400, -13033, 33429, -22567, 26286, 3374, 41147, 74797, -68191, 39857, 15912, 54177, 104488, 178496, 38702, 27313, 7542, -39300, -167005, -145613, -185687, -280320, -228563, -203719, -65053, 32308, -39938, -13582, 36248, -18143, -15541, -46537, -100436, -67587, -16264, 87012, -16394, 27189, -58899, 25591, 177814, 86928, -8517, -123338, -96383, -87034, -132379, -87112, 29836, -12391, -167642, -100780, -58431, -12173, -13637, 24205, -19085, 766, -42341, -82343, -215354, -258447, -177260, -61000, 61041, 72808, 51249, 241601, 148961, -18882, -43767, 10832, -99479, -67336, 25087, 6753, 9779, 44826, -13402, -24353, -1491, -23216, -8068, -7463, -9252, -1172, -14292, -123729, -350765, -448010, -528775, -477058, -197829, 134087, 177620, 181128, 116758, -23656, -261764, -51397, -40413, -14762, 62171, -14217, 72778, 67107, 8624, 26756, -41920, -39376, 27584, 4330, -17211, 13901, 78513, -41229, -191660, -226621, -440744, -785347, -1168562, -1075420, -904420, -595755, -335246, -257279, -139734, -88298, -97136, -3361, 59642, 34195, 117087, 32001, 93915, -14740, -66314, -39075, -4005, 5851, -12538, 40028, 166395, 54056, -124363, 62751, -948, -153507, -529999, -729931, -987278, -756899, -365490, -127083, -24796, 14627, 93067, 29817, 207173, -18005, 191206, 77933, 27744, 30153, -92255, -12957, -25484, 10943, -7454, 21415, 195181, 210040, 34044, 142321, 129844, 219601, 199515, 263289, 6664, -93429, 5930, -33928, -39359, -88522, 63965, 54705, 22720, 38944, 80039, 17563, 3407, 18471, -10752, 3272, 10921, 11050, -29044, 24479, 205887, 230874, 26023, 233627, 74566, 134229, 241299, 183504, 235876, 12104, -11895, -137677, -81547, -46825, -8770, -41066, -24920, 53403, -64090, 103293, 57476, -8360, -9348, -8784, 26220, -31049, -17023, 13988, 151958, 236953, 25650, 32691, -27815, 94901, 30423, -82814, 27914, 71434, 113101, 121465, -25573, -66328, -46367, -9123, -9686, 38790, 23060, 52352, 12459, -17416, -35704, -3272, 932, -26281, -11776, 59871, 54407, 165206, 94043, -40786, -83341, -149920, 68497, 57550, 87291, 61260, -17562, -8217, 94624, -2658, -28796, -98019, 24953, 63367, 16691, -9015, 29032, -36204, -39741, 1868, -26669, 12633, 22376, 8958, 30668, 107747, 162154, 45088, 72769, -45389, 115683, 170520, 53521, 92828, 90638, 33287, 47260, 14113, -27682, -9365, -144905, -23445, -75696, 3335, -23237, -152, -28485, 15927, 19659, -34023, -25778, -24613, 15475, 79117, 76191, 173193, 204479, 149811, 112023, 126547, 14957, -44644, 82102, 35206, -77020, 26727, 35375, -58819, -108120, -120182, -14556, 14258, -17211, -32408, 13191, 33673, -5460, -13856, 15613, 22042, -28207, 11206, 88821, 141407, 109635, 196837, 84408, 130626, 257849, 207553, 91107, 103702, 80466, 153537, 151968, 62581, -17639, 40929, 48867, 60414, -18593, -22804, 31024, 26576, -18674, 754, -9596, 27189, -32064, -30973, 28729, 24762, -928, 12187, 6874, 58866, 109834, 93948, 139135, 91559, 139812, 131274, 56784, 59064, 39278, 22033, 49591, 43993, 6860, 21341, 8411, 34921, 14780, 10517, 27037, -14185, 30610, 3402, 32693, -21292, -24257, 25998, -20704, 5899, 49066, 34441, -5678, -17173, -20351, -34913, 15893, 11943, -5783, 7364, 20751, 3123, 23185, -4798, 13795, 7635, 308, 25984, 34477, 28744, -9063, -11594, 29399, -16226, 3831, -20269, -9289, -13338, 22295, -14324, -12454, 15366, -1965, 3444, -26707, -15716, 17946, 16407, -32743, -24799, 10378, -28046, -18898, -20201, -27258, -17445, 25058, -32855, 23665, -30878, -9765, -9879, 32599, -19618, 1723, -992, 36860, 66863, 69609, 37290, -7978, -7055, 33807, 43148, 48622, 41257, 12896, -24267, -18869, 21770, -30403, -26158, -22735, -9593, 16651, 24754, 27527, 18580, 9319, 6281, 31106, 82979, 151976, 223674, 246892, 302897, 245270, 214509, 214275, 284625, 309792, 299185, 231743, 187422, 123205, 47144, 6544, -6441, 15335, 8153, -11082, 27991, 3171, 18464, -13448, -22754, -37836, 14155, 68007, 137905, 200390, 215926, 134659, 116389, 162846, 31788, -10232, 21645, 148480, 289723, 214995, 238939, 269885, 190638, 102542, 61100, 15651, -23148, 25273, -20741, 27829, 9710, 3806, 32045, -39626, -53332, -33738, 1870, -58900, -82773, -157124, -51645, -38184, 30031, -13, 44645, 36457, -77165, -85459, -90599, 51172, -57385, 93158, 71369, 22654, 11013, -23581, -4118, 5776, 25956, -33279, -82891, -158299, -174414, -190547, -9640, 72154, 19917, -40072, -65602, -249576, 2546, -126293, 49660, 98901, -11823, 6855, 114514, 37670, 19793, 130347, 105609, 80428, 21410, -25677, -1937, 29342, -31829, -46567, -164241, -292749, -349495, -14697, 11796, -14383, -81472, -33568, -9443, -100472, -56854, -102993, -168101, 5906, -142001, -15444, -84985, -103064, 61612, 244045, 375785, 238019, 57564, 3084, -19738, -14837, 23541, -102499, -189682, -332631, -171367, 78406, 243926, -44487, 101032, -20258, -194816, -132048, -155858, -188908, -174095, -58908, -82675, 16902, -47921, 42332, 31851, 127178, 429015, 299979, 81008, -18031, -18491, 8811, -1135, -94144, -279373, -251613, -47352, 111410, 21744, 85218, 22561, 33674, 22710, -166905, -104357, -102140, -9412, -2215, -157698, -88349, -33242, 9432, -15121, 205726, 367555, 434558, 141517, 7162, 5763, -18834, 11444, -112081, -183336, -170677, -166652, 55786, 15911, 64201, 65636, 149587, -96965, -255589, -336836, -291660, -123760, -174116, -126190, -94113, -215352, 29378, -44050, 41375, 443446, 490651, 109051, -2330, 862, -10905, -10976, -54203, -42365, -73875, 7054, 194790, 89205, 188423, 51859, 177882, 107717, -131067, -429919, -365328, -336298, -263873, -163409, -59972, -75480, -16174, -78469, -109624, 148186, 331800, 54756, -21916, 28647, -60429, -41102, -88457, -85682, -65509, 5407, 30599, 47278, 113249, 19164, -9929, 250865, 97656, -154085, -177788, -2413, -212689, -316465, -91433, -186219, -214682, -251244, -286264, -145646, 86204, 49767, -12601, -20546, -15728, -24431, -83875, 39227, 82187, 60937, 27144, -30606, -6034, 37035, 145160, 266657, 251502, -247033, -82519, 32559, 36199, -32310, -67768, -144139, -169363, -315513, -347516, -251820, 7343, -18317, -18046, 27633, -33085, 10772, -41165, 23561, -40685, -10966, 54535, 31604, 71762, 8684, 68097, 231042, 165102, -151351, 55401, -81463, 14528, 68230, -114066, 37566, 48101, -46337, -308943, -142869, -38716, -38366, -28329, 12978, 8571, -31744, 17367, 56903, -55884, -42446, 72054, -103806, -99904, 113100, 207094, 84621, 72913, 88754, -7019, 40650, -75953, -45085, 9242, -53322, -32376, -47725, -92267, -65139, 10797, 38923, 32461, 20520, -1914, -16071, -2788, 91313, -199453, -104547, 25582, -19727, 157894, 27344, 5462, 157625, 87651, 74238, -6071, 180754, 11575, -28831, -38765, -114684, 38317, -41710, -67549, -17417, 13644, 6851, -33348, 8050, 4561, 25585, 20057, 68526, -140509, -85696, -203026, -79694, 10425, 3213, 592, 221040, 207522, -34960, 198708, 48372, -130483, -133371, -97403, -210666, -114645, -69187, 496, 50276, 150587, 46152, 20031, -5671, 16349, -29766, -70981, -27179, -33392, 29333, -105456, 59394, 70249, 74801, 73703, 118455, 24077, 90767, -68224, -19785, -54384, 46079, 19603, 130482, 92337, 6321, 44328, 117608, 127187, -18081, 31902, -20041, 19340, -13214, -102675, -5750, -41263, 172048, 87793, 135875, 58273, 103946, 123520, 264557, 79289, -56765, -5870, 2340, 67562, -11546, -17463, -33298, 43890, -15295, 124983, 152661, 151948, 12784, -31844, -30743, 29640, 10727, -93519, -82091, 3783, 157625, 46994, 94152, 8852, 221389, 88171, 183012, 88277, 51298, 245684, 62642, 184303, 140300, 11085, 96257, 25721, 171264, 230540, 123750, 41557, -15262, -1822, -8406, -21204, 12026, -42016, -76796, 112532, 107622, 109329, 136147, 111759, 89406, 30484, 173656, -49030, -31788, 72871, 29078, 7980, 79984, 140304, 35950, 2087, 94776, 185421, 99830, 24951, 8782, -10913, 19219, 25330, -35908, -25338, 45196, -71043, 44813, 57294, -62102, 91248, -75011, 60863, 177897, 238479, 130100, -12851, 40152, 155830, 56793, 120159, 40487, 138065, 191528, 201187, 95100, 23490, 6175, -24525, 17622, -24720, -9011, 15721, 111256, 34300, -30991, 28615, 9925, -12196, 32440, -13304, -6046, 32482, 14371, -16524, 9485, -13958, 56208, 111018, 113017, 211502, 105360, 119928, -5685, -35824, -30101, 9434, -3279, -7737, 14020, -25014, 2245, -72324, -41221, -42258, 94543, -33204, 87462, 99022, 128439, 99079, 41470, 57326, 64860, -65185, 22822, 97045, 155490, 107157, 62805, -11962, -12606, -48027, -1568, -16366, 11011, -30298, -18729, 8409, -12637, -141862, -178002, -80084, 42668, 37536, 36714, 103658, 123907, 93174, 99090, 12748, 122326, 71906, 80402, -53184, -184100, -130434, -55824, -62027, -28392, 31773, 20100, 33557, 33548, 8507, -11343, 20575, -31832, -86281, -111623, -85675, -93355, -191219, -135224, -139054, -186138, -157771, -2132, 129163, -79756, -19211, -184298, -193800, -124011, -134075, -55054, -16797, 25700, -34493, -15694, -26150, -25798, -20808, 11637, 27611, 2186, -27737, -80321, -110676, -12241, -41715, -93527, -58506, -24844, -318, -48111, -57301, -40413, -26422, -5825, -29146, -68186, -41198, -29426, 36326, 24284, 32047, 30320, 32402, -35051, -30214, -30416, 28422, -18828, 24071, 14015, 34990, -16686, 8298, -39573, -30917, -31535, 20878, -10527, 1670, 27343, 18679, 10625, -22133, 18424, 7302, -49770, -7696, -27293, -8944, 7700, -33627, -24873, 13560, 28836, -14211, 19400, -28032, -14100, 26806, -4593, 15017, -21467, 11633, -7917, -1100, 12859, 9080, 24670, -2104, -10969, 26589, -488, -30052, -23843, 22040, 17131, -16865, 25579, 17339, 15649, 1873, 16967, -8134, -30538, -11617, -2343, -8047, 4950, 39072, 42941, 80442, 83948, 74329, -4229, 42073, -18037, 69689, 54980, 70249, 26978, -6387, 44886, -12437, 404, -21910, 25588, 23783, -19009, -2537, -346, -33318, 36059, 13360, 8924, 85033, 120557, 152254, 192097, 232877, 223675, 213015, 210097, 216121, 141569, 266441, 252658, 229279, 170058, 138861, 81377, 9657, -3388, 21321, 23076, 13051, 7079, 26576, 32316, -31889, 29898, 41478, 65183, 79014, 118623, 173821, 157043, 200325, 89553, 106699, 236931, 204087, 257504, 233691, 269756, 277917, 202769, 274689, 201319, 58479, 33650, 4259, -5582, 20952, 30634, -12485, 10866, 26644, 6497, 19402, 35278, -49233, -52304, -7209, 10301, -68243, -24426, 120669, 16172, 142266, 90753, 83905, 154157, 221800, 118515, 156865, 21811, -50951, -58957, 6345, 6692, 7641, -22937, -16322, 8602, 9984, -1741, -124350, -103266, -154821, -51229, -44254, -123152, -17208, 37386, -25302, -193053, -138921, -174810, -50631, -12410, 3628, -82523, -17669, -30104, -134437, -135979, -24997, 21147, -12174, -35340, 26229, 12715, -19282, -12896, -14446, -77880, 12313, 90074, -19518, -35839, 24244, -50300, 82134, 85197, 76921, 43153, 141723, 50700, 67980, 10854, 24276, -127038, -224959, -208983, -114447, -47385, -24609, -21454, 19238, -14339, 54000, 42318, -16748, -66248, 84093, -51073, 102592, -40964, 85953, 152423, 118042, 131522, 248457, 83869, 148442, 58367, 10424, -32445, -113157, -126119, -211250, -294091, -153216, -75236, 1120, 31231, 40364, 47981, 24763, -66318, -140458, -50912, 56758, -3847, 60904, 32404, 58287, 139107, 152113, 53702, 117553, 176381, 25913, -72245, -66091, -22827, -74148, -21944, -149586, -316412, -200887, -87665, 3662, 7113, 40121, 92585, 31249, -41746, 7651, -14689, -3753, 24765, 85460, 40470, 22554, 137297, 128438, 178615, 91479, 87362, -14521, -96447, 43018, -101326, -66950, -136957, -97856, -316570, -301924, -79441, -27336, 14562, 74801, 130562, 14925, 4235, 61489, -77389, 2703, -3567, 30414, 161614, 139616, -13127, -6014, 3636, -60721, -709, -19966, 27319, 73598, 32717, -101135, -15270, 25378, -313800, -339295, -148337, -35825, -21957, 12871, 101586, 22384, 7969, 72458, 15476, 169830, 110594, 16823, 13883, 40023, 15886, 104644, -183678, -299589, -97781, 66220, 55705, -2455, 252907, 208724, 83250, 209800, -166334, -307934, -169844, 15350, -13003, -23230, 71017, 69835, 78009, 140494, 175769, 87954, 27774, 26636, -108718, 36381, -23203, -107848, -296680, -95161, 24878, -60043, -79876, 48242, -49575, 145633, 102758, 406848, -5768, -226090, -146749, -5870, -17017, 17539, 48151, 8242, 84096, 121890, 111623, 9247, 28060, 2293, 83515, -63893, 10423, -146263, -96659, 1793, -26964, -54945, -41004, -23738, -49633, 105612, 99001, 163846, 58745, -174515, -61580, 30264, 34029, 29448, 16136, -9651, -123651, -63705, -112724, 6756, 37795, 22572, 36724, -370, -66455, -216585, -83707, 31519, -74036, -37089, 14914, -80433, -68223, 71641, 159179, 73441, -11333, -108479, -52703, -36530, -13186, 27179, 7284, -184519, -162312, -41788, -54229, 97306, -70818, -58875, 111826, 5006, -146571, -207986, -100312, -51074, -80636, 7034, 53045, -126190, 164960, 126017, 12557, 66646, 42581, -110346, -77552, 156, -17041, -23406, -9195, -169691, -37660, -16590, 1820, 3153, 28188, 19249, 115962, -18468, -135464, -180082, -88329, -154459, -117347, -142404, -129194, -92061, -32363, -25962, -45732, 38842, -49352, -45847, -5522, -10716, 4975, 5758, -62348, -136942, -121034, 1192, 34728, 994, -60128, 50036, -2152, 75786, -70621, -123945, -113699, -179046, -64326, 186, -82515, 80743, -13923, 89480, 3181, -36756, -100578, -45850, -69250, 22200, -11132, 19294, -41445, -183407, -168873, -11989, -106391, -25820, 64635, 4310, 107467, 17885, -146112, -213345, -115619, -67067, -110035, 90561, 26281, 25189, -89402, 8326, 10661, -82199, -251255, -96751, -21008, -9386, -5782, 13833, -32940, -171702, -159695, 13079, 39316, -22351, 75939, -43204, 36586, 131378, 200711, -118365, -24150, -105406, -58001, 51618, 18618, -38223, -48532, 5028, 71184, -153198, -234152, -104810, -17500, 4388, 32403, -5317, -11000, -107642, -115510, -7144, -135362, -141995, -94685, -177300, -69905, -116120, 258807, 163426, 89512, 3254, -74830, -135664, -86849, -59391, -127436, -78127, -77476, -192653, -182439, -50072, -20097, -20817, 7744, 19125, -20522, -120637, -97514, -94213, -63102, -67436, -166141, -181027, 86071, 44175, 161746, 54762, 76864, 123497, -59556, -88576, -24474, -149484, -148474, -187190, -176370, -171046, -83652, -25802, -28861, 4495, 27635, -3791, 1316, -74603, -215212, -169892, -134144, -90745, 56415, -28641, 54248, -45953, -59860, -43400, 35162, -86461, 54445, -14061, -143476, -65635, -75166, -205139, -133918, -52368, -2447, -31516, 27903, -26589, -9217, -31181, 10243, -55545, -152520, -190959, -214573, -66573, 33605, -30842, 77287, -57770, 15920, -12136, 58139, -92292, -82147, -171016, -95528, -100649, -93267, -70272, 33961, 76436, -15586, -43022, -29066, -17905, -35355, -1661, -18087, -74042, -66581, -66555, -89342, -49003, 27353, 10969, 54075, -169899, 9298, -91172, -168253, 28955, -25263, -49137, 14569, 53049, 200437, 125725, 17006, 12265, 12705, 20469, -7052, 17304, -25298, -6422, 14468, 26901, -10929, 45907, 78460, 189258, 274897, 148914, 36173, 204869, 134497, 108093, 69503, 199881, 277273, 201018, 235226, 340453, 257957, 170245, 36975, 31909, -25886, 34468, -24560, 32503, -6040, 20676, -2703, -17739, -2468, 25247, 87359, 226156, 273729, 367711, 366971, 364873, 423704, 437889, 426104, 303282, 350753, 279572, 272697, 271418, 149700, 44298, 5783, -5065, -21686, 28422, 26366, 23220, 29360, 26855, 29476, 1279, 30946, 12955, 20806, -2892, 39668, -1229, 43183, 21745, 39862, 54830, 90336, 106987, 31430, 16402, 50024, 23909, -6977, -4790, 42232, -22055, -29378, 25616, -22966, -4003, -21528, 10570, 30783, -21574, -25956, 14971, -21683, 13711, 22053, 27045, 4597, 32812, -9541, 20326, -11079, -19309, 10680, 19387, 16794, 23343, -180, 14027, 25481, -24408, -6925, 22119, -6512, 30145, 16577, -14981, 28014, -13918, 23203, 27967, 6872, -20521, -37172, -58981, 7747, -45707, -97898, -63398, -53927, -16344, -43934, 12845, -34947, -46525, 5462, -5527, 8795, 5866, -11196, 509, -27118, -10869, 13757, -10349, 29137, 19162, 22836, 27560, -17556, -43871, -73466, -33735, -73584, -154243, -127935, -127034, -59804, -96566, -106127, -25471, -26661, 15471, 31721, -20545, -14961, -21854, -33138, -27042, 33247, 26283, -12689, 13589, -7788, 5567, -2381, 10283, -35868, -18405, -130395, -116414, -158481, -181198, -273945, -428640, -284506, -298344, -147964, -55251, -48978, 16225, -71506, -33811, 39613, -1689, -34428, -15005, 4532, -14147, -17131, -20418, 30234, 31303, -17379, 32091, 20861, -50738, -108947, -210739, -110828, -147861, -357784, -440585, -439888, -318640, -224535, -146808, -51401, 938, -35676, 66314, 42990, 17074, 13953, -9238, -50046, -34141, -4137, -27944, -29673, -553, 18347, 35267, 7256, -43533, -61747, -40300, -83367, 13421, -41209, -114098, -65548, -151209, -178198, -181552, -141701, -82067, -17193, 72893, 107095, 102828, 38321, -36304, 26321, 1908, -26070, 6998, 27932, 26901, 91297, 30464, 51131, 94861, 165980, 137816, 42724, 78310, 79483, 75543, -10291, -95442, -118, 120600, 26798, 35313, -40195, 78382, 101966, 75477, 99120, 51022, 13425, -36396, 30848, -31274, 58645, 62673, 102000, 62457, 47978, 164217, -71356, 93275, 127862, 69123, 40541, 61699, -16324, -5821, 73195, 93738, 65524, 21594, 120575, -630, 65369, 244360, 184358, 104305, 21075, 5402, 89, -7507, 41499, 70306, 98249, -1911, -14953, 64533, 48347, 119733, 88952, 60001, 54616, 19766, 16484, -31627, 44401, -30457, 101591, 4379, 54778, -41530, 19719, 123839, 139134, 74062, -33690, 10578, -29679, -19231, 64214, 36119, 103929, 62384, 107278, 27146, 61950, 34102, 73479, 135591, 116279, -18938, 97803, 51469, 67708, 144529, 17758, -71102, 52766, -11996, -111434, -9543, -19495, -13239, -42142, 38917, -9859, 6863, 41496, 46483, 41763, 30615, 45584, -96163, -22003, 12794, 79675, 36990, 163241, -5569, -162804, 29944, 46083, -50119, -47172, 31152, -60314, -3900, -47078, -74919, -85655, 37415, 10030, 15916, 30628, 22890, 78749, 50110, 48816, 14343, -33817, -5958, 132322, 98332, 95013, 188190, 267816, -125567, 8188, 168764, 97833, 109467, 210825, -13166, 66627, -25828, -67692, -149403, -133933, -31388, -9141, 27504, -7795, 36494, 23806, 121001, 134753, 18495, 98916, 206324, 168417, 24499, 109537, 113904, -109281, -244765, -85033, 36603, 68578, 77254, 99213, -20886, -82938, 66776, -778, -157246, -198896, -6483, 24368, 12913, 6271, -24919, 46612, 36023, 210675, 154706, 103778, 122579, 108060, -13172, 28444, 34380, -129140, -182487, -30043, 67320, 40437, 55007, -58191, -37426, 23175, 122206, 33416, -294576, -255470, -29520, 6149, -9739, -35032, 6827, -28144, 36222, 228381, 194068, 22028, 78856, 5008, 34417, 29895, -80214, -67078, 60861, -74396, -18783, 62808, 160906, 112500, 171715, 20272, -29571, 12769, -329187, -289695, -78724, -39432, 16959, -5151, -6357, -45482, 33556, 44612, 18624, 40324, -48389, -6754, -35116, 33405, 72343, -181057, -192739, -67181, 138181, 86733, 175868, 52803, 174348, 50905, 71119, 75864, -201147, -271426, -103125, -25650, 23930, -23934, 12666, -60155, -30461, -103978, 65442, 72123, 80484, 163422, -56869, -5372, -87385, -34849, 38508, -147044, 88789, 176282, 246372, -12455, -52913, -50560, 102066, 54625, -183346, -210118, -212957, -38866, -12813, -6403, 23392, -35319, -142258, -91303, -2207, 8512, -12010, 87270, -86292, -32115, -9831, -6098, -27095, -94982, 159954, 6938, -23566, 69880, -55316, 58560, 30937, -233100, -260221, -192262, -94012, -27234, -37321, 3247, -32421, -4516, -128482, -93306, -70570, -107600, -107936, -135379, -463, 11817, -46233, -32667, 65425, 21970, -64966, -47947, -61863, -2862, -46854, -9823, -217847, -336482, -288325, -172088, -77402, -6559, -28221, -10946, -16430, -36292, -59686, -98164, -129764, -159549, -105561, -287951, -203578, -199480, -207305, -304499, -213568, -31198, -33370, -225558, -66736, -189902, -114669, -173906, -332510, -343563, -259043, -113956, -66632, -32796, 33731, 33134, 30760, 20567, -118025, -158437, -268891, -316448, -217736, -250160, -190810, -245972, -119691, -233787, -80111, -129095, -190146, 16010, -109492, -181996, -186834, -199518, -223216, -236900, -184996, -100825, -13843, 16487, 6691, 12158, -4784, -28721, -118424, -83382, -232389, -319829, -144133, -82113, -55890, -145111, -141091, -37336, -17846, -170899, -128350, -110861, -146551, -137905, -202667, -160726, -71875, -46296, -119755, -23514, -52848, -48484, 4712, 33272, 27319, -56301, -90256, -97985, -163511, -164902, -46183, 115900, -599, 82885, -49222, -80886, -135177, -42670, -189105, -96055, -55149, -104274, -174987, -82105, -37367, -41273, -57791, -16041, -27327, -29987, -8258, -29668, 18147, -68778, -57960, -92866, -66508, -81424, 15286, -628, -114595, -36528, 6264, -86771, 15008, 9702, -88652, -4692, -26151, -57944, -80175, -50438, -36196, -2813, -47825, -10311, -23792, -28613, -10783, 27732, 15194, -14199, 1009, 9908, 58048, -19083, -70256, -82296, -153688, -47662, -161900, -130208, -107554, -246547, -147783, -173426, -56093, -159464, -122138, 53338, 26457, -81380, 4187, -10637, -9588, 30873, -624, 4224, 23413, 3497, 4240, 47072, 76714, 44152, 41592, -81092, -62999, -53686, -95233, -117332, -56834, -24353, -54199, -20055, -82288, -67002, -8809, 17534, 15895, -44291, -10549, -30888, -29850, -7741, -28752, 11862, 23459, 7178, -34184, 23066, 78776, 54423, 36155, 85875, 225897, 152688, 144221, 153824, 164848, 224801, 177357, 79306, 129407, 12687, 31425, 49148, 2353, -19339, 9610, 35487, -13127, -31702, 20261, 29237, -22883, -18088, 17213, 8068, -27039, -6057, 11039, 701, 18550, 39512, 24804, 17175, -15810, 51473, 42352, 17206, 27077, 13446, -18409, 12507, 41376, -18328, -3480, -8154, -19948, 16085, -34194, 34994, -29722, -3749, -25250, -23276, 27370, -6898, 15866, -12441, 783, -18095, 30171, -35042, -1467, 30806, -25436, -5578, 6430, 34485, 661, -28626, -25040, 6018, 30389, -34330, -26562, -28920, -30808, 2873, 19687, -30866, -5541, 9070, 10139, 15281, -8244, -10207, -21651, -32799, -10031, 7631, 1622, 44523, 91715, 85061, 540, 11343, 9002, -9615, -29990, -31529, 29258, -25110, 32571, -29822, -16070, -3114, 32787, 6062, -23032, 26031, 4533, -65617, -18917, -3089, -38852, -78913, -34629, 14605, -22243, -35715, -66587, -20686, 32405, -58395, -132460, -80342, -64046, -34193, -51501, -27323, 1506, 10419, -32699, -27064, -23333, -17129, 27561, 14579, 17804, -15859, -22330, -49655, -37820, -19863, 19003, 107312, 141351, 9786, -50456, 104595, 39544, -131697, -163725, -94874, -119116, -135729, -40708, 2578, -8383, 20094, -3503, 10600, -25380, -20610, 13980, -2528, -30109, 17776, 103158, 157200, 205822, 103506, 167716, 121872, 329184, 58901, 7321, 218786, 78580, 60507, 45702, 11869, -70552, -105215, -175662, -30549, -35496, 6267, 35156, 5464, 3002, -22564, -10338, 17888, 32683, 126377, 173785, 199520, 169087, 195318, 98805, 115700, 72581, 193834, 141378, 103739, 24703, -27060, 84765, -46818, -25620, -55399, -123192, -153376, -24604, -8428, 32067, -30573, -25258, 19429, 65458, 72888, 138505, 241308, 82433, 124923, 117860, 149756, -10539, 69317, 204053, 136519, 57130, 52526, 182122, 104129, -31710, -115847, -1276, -37136, -162683, -198415, 3987, -13827, -21946, 28516, -7949, 333, 77357, 116621, 168501, 218466, 64727, -93730, 40803, 128350, 136347, 45404, 179463, 119847, 54251, 91504, -14781, 34733, 129431, 35636, 52789, 53482, -168600, -192790, -47842, -151, 31108, 19882, -24497, 33651, 95175, 181205, 169424, 47596, 70103, 168432, -15273, 106759, -15715, 139279, 50876, 291605, 223272, 170282, 58211, 8958, 122899, -14218, -7166, 28016, -119735, -272823, -127346, -27650, -33375, 12579, -22940, -21541, 37212, -10781, -19490, -49185, 25028, 43279, 31533, -104442, -91550, -272549, -235395, 19770, 192698, 193874, 204263, 143305, 61064, 38147, -4009, 124167, -17141, -216157, -102634, -541, 18478, 25179, 18997, 4576, -14825, -131000, -200948, -353712, -455380, -472818, -508653, -520862, -386031, -449722, -422299, -236029, -180857, 167697, 172258, 55880, 98298, 89685, 149154, 21426, 5118, -238964, -130649, -28650, -23974, 16192, -12474, -46619, -73558, -316918, -438068, -669849, -668404, -736006, -568022, -462496, -296342, -108938, -99228, -290208, -203539, -83350, -64636, -40514, 133599, 162245, 64260, 21963, 112439, -58648, -61185, -28841, 16880, 10889, 8845, -50801, -115210, -340465, -496781, -531531, -396383, -210521, -32852, 85449, -47863, 158919, -56264, -170050, -85362, -88393, -60790, 114, -13766, 34589, -49761, -31008, 102561, 59332, -175, -2594, 8549, 17201, -3798, 10293, -91577, -317007, -361133, -231892, 13919, 130019, 134651, 112264, 24429, -51580, -67798, -58050, -224431, -11912, -1678, -15795, -115509, -16028, 65740, 86195, 47111, 59031, 11858, 29889, 2381, -34965, -29235, -54540, -70833, -142831, -62024, 162216, 155436, 22723, 1536, -11079, -84373, -48994, -10692, -78091, -116158, -87445, -50689, -8995, -27309, 45948, 99624, 41275, 2099, -23215, -39230, 22490, 10362, -20965, -9236, -46265, -54879, 25386, 274188, 104949, 35715, -42654, -71328, 16243, 86305, 743, -60348, -129791, -75911, -113538, -42085, 21180, 16736, 25707, 50356, -19729, -35775, -58093, 58999, 25073, -174, -7852, 24815, -22598, -36292, 110924, 105166, 27218, 69427, 19756, 71670, -10804, -54608, 79606, -21259, -46709, -88843, 17599, 42552, 22402, 52868, -41655, 83485, -44501, -13863, 60127, 147121, 47904, -1526, -28820, 17561, 45635, 60371, 182816, 47561, -10021, 96140, -22108, -677, -102302, -28393, -32612, -120032, -79572, -102742, 5023, -16548, -25925, -12438, -143478, 55296, -61455, -49562, -5674, 171637, 29721, 25735, 25877, 11589, -12346, 42617, 76046, 148427, 69174, 14221, 21881, 36861, -38820, -11716, 24125, 8738, -37729, 30958, 32744, 40707, 117491, 151670, 56068, 167772, 28439, 141214, 134870, 181584, 16875, -22966, -2345, 24549, -44789, 63402, -16237, 124726, 10171, 7116, -16030, 404, 102927, 22175, -7046, -8382, -83292, -10370, 53312, 9521, 68953, 55307, 52759, 172621, 60078, 30668, 165129, 168748, 17443, -30542, -17215, -24011, -8399, 58389, 60758, 163720, 159096, 141295, 80729, 113111, 12696, -4108, -10100, 6122, 9371, 2248, 63880, 5871, -42377, 14405, -4764, 37628, 25822, -8648, 59102, 19916, 39770, 27230, -17181, 32158, 64641, 165895, 160036, -34467, 13192, -88488, -53834, -69458, -16737, -67132, -100069, 11501, 20475, -104458, -45528, 55704, -36171, 52786, 2851, 107968, 103783, -17433, 71246, 63026, -2069, 31581, 23132, 5981, 3023, 123996, 124488, 56723, 58851, 34373, 114733, -62174, -72868, 45972, 57727, 130909, -32499, -10045, 21901, 81305, 6795, 77008, 33670, 36582, 58359, -6255, 56383, 16203, -5945, -10604, 13748, 2405, 4477, 30179, 95531, 45699, -22245, 68862, -98515, 47200, 46294, 99364, 13316, -72439, 45553, -87121, -5900, -131213, -121783, -68082, -151356, -73228, -5486, -17347, 46450, -35482, -35686, -13100, -15834, -24552, -23984, 12370, 8588, 9527, -4722, 17969, -46023, -73713, -13697, 39857, -16565, 52506, 91708, 58117, 80286, -104554, -108102, -156154, -288483, -121029, -53165, -41178, 30067, 9491, 23578, 15127, 16901, 12749, 18455, 33005, 38994, -34118, -14552, 5017, 87915, 142861, 113968, 128244, 46954, 90850, 153617, 58556, -121823, -186, 30087, -75305, -166897, -176118, -83218, -55224, 2691, 9179, 9429, -724, 17575, -2108, 27701, 23644, -25465, -25257, 16423, 16339, 38649, 80339, 87127, 63940, 72611, 156258, 137105, 54502, 43103, 427, -18088, -11838, -7662, -19172, -17222, -24776, 1043, 26571, 1541, 34020, -16902, 32978, -22897, 28375, 3905, 35554, 33992, -12251, -2327, -8260, 10324, -13023, -5874, -19215, 22878, 28944, 3187, -1628, -26828, -32486, -27625, -26499, -29432, 16745, -27243, 17115, 23764, -144, 8461, 22291, -32387, 30849, 35169, 34080, -13942, 21925, -13136, 5556, 29867, 7482, 12896, -10474, -17627, 29110, -32232, 6246, -3453, -10060, -34889, -21237, -20385, 5383, 13930, -32463, -13734, -34055, 24424, -32813, -4778, -5097, -19604, 22956, -7061, -8214, -3203, -43241, 7220, 11993, -37006, -18532, -6570, -55776, -44397, -21757, -23544, 23364, -31695, -11348, 18592, 438, 14479, 1538, -33234, -25648, -12092, -24048, -22246, -11560, 34290, 25330, -4336, -35103, -36014, 14408, -18084, 13272, -24555, -53330, 54755, 75490, 59256, 80941, 61119, 67910, 49619, 96115, 29534, 5249, 28108, 18061, -5217, 22113, 573, -34814, 28950, -20784, -22954, -2765, 8394, 22140, -65887, -54512, -7204, -501, -55540, -124085, 48137, -5772, 43349, 89345, 78254, 84927, 98451, 75505, 44217, 49370, -6629, -24973, -30240, -7248, 16528, -10535, 25625, 16709, -10382, 18790, 28742, 13877, 13620, -13969, 31012, -72528, -158097, -231410, -130047, -131370, -18094, -19700, -111983, 13376, 77574, 101416, 74458, 58963, 21064, -26012, -9495, 31395, 20498, -29850, -907, -21758, 12673, -4771, 65693, 74414, 117750, 110744, 16772, -47816, -13780, -96260, -154551, -33668, -106777, -148042, -153304, -26344, -6911, 19798, 78114, 73335, 31433, -50411, -3927, 366, 17979, -24742, 20482, -23055, 21301, 3884, 77668, 107577, 74711, 90731, -64639, 20084, 144807, -96109, -10974, -106486, -93659, 122708, -29413, -98248, -55943, 55434, -16802, -5942, -72364, -85266, -10716, -21762, 33443, -28884, -7761, 14804, 93892, 92732, 45583, 143230, -178454, 37036, -53102, -44525, -42437, -75223, -61706, -132780, -90118, 5556, -21373, -49260, 27184, -13931, 17417, 39208, -66932, -158025, -53329, -5081, -25428, 15837, 21939, 43721, -20992, 5124, -16993, 150103, -9062, 204623, 217193, 46383, -43003, -13690, -56077, -145104, -78961, -82102, 46597, 19937, 7300, -57190, -30331, -10487, -142840, -203718, -91456, -11909, 928, 48697, -933, 11101, 152014, 29451, 49951, 91344, -18226, 94349, 86157, 57144, 13103, -79195, -95659, -84933, 35881, 122293, 59173, 107751, 102052, 43309, 49947, -28472, -254968, -221858, -33368, -13962, 3980, 57182, 44436, -15481, 39412, -7018, 6705, -1792, -83844, 82472, -5109, 40250, 184351, -21991, -329115, -40194, 137206, 48233, -34574, 4237, -63598, -23044, -3277, -144006, -222250, -161690, -73982, -40050, -10746, 15079, 70725, 50727, 50969, -46701, -8766, 70328, 101239, 39972, 92546, 88080, 294570, -189552, -331645, 214233, 208006, 188239, 240328, 160889, 91352, 34299, -16316, -216350, -259756, -81037, -66036, 8206, -21199, 45783, 29927, 107837, 71155, -11002, 9155, 18155, 12596, -51860, 105118, 226399, -93864, -477457, -170960, 187347, 169005, 59035, 95699, 97430, -7160, 73465, -50785, -125032, -135711, -142480, -46397, 1692, -19874, 13018, 26712, 47984, 95903, 165937, 22966, 107381, 61848, 36998, 97062, 100158, -120698, -509812, -59125, 75571, 108384, 123710, -56587, -23298, 145243, 154324, 114883, -192309, -200839, -83444, -98903, -1622, 32535, -24815, 20550, 14047, 170438, 231835, 73331, 101352, 58898, 18015, 99647, -35245, -220440, -204848, 1372, 38297, 316855, 282002, 261582, 296978, 46687, -23864, 201729, -163042, -284974, -95909, -39138, -17706, -20079, 17789, -45750, -5583, 37070, -95325, 67548, -5418, -69500, 10198, 99995, 32283, -142358, -310309, 3562, 104386, 173695, 269383, 53331, 157178, 172161, 179825, 225204, -67670, -212438, -95459, 16762, 33333, 9778, 772, -2324, -64003, -71297, -77193, 163231, 144009, 154780, 20525, 53189, -133405, -279750, -97663, -51476, 205628, 155726, 121569, -26411, -26589, 78327, 105571, 30256, -172173, -224251, -179112, -81363, 21845, -16829, -30054, -63076, -127433, -107478, -144907, -49569, 83363, 140254, -65433, -52953, -86641, -90105, -14192, 49527, 209950, 53612, 55580, 114357, -44136, 51378, 25125, -136357, -232508, -305411, -130340, -40435, -19951, -6011, 18749, -43300, -119666, -98723, -188245, -189576, -68548, -79091, -152478, -60586, -66524, -64826, 39480, 11510, -6298, 103148, -24188, -45546, 102052, -36414, -159444, -283890, -352591, -262017, -137746, -36614, 24931, 15173, 16690, 999, -14370, -55756, -136018, -123876, -176347, -289916, -103472, -148602, -59958, -227408, -125369, 184682, -48079, -157588, -90772, -105624, -82224, -200054, -177744, -310888, -229977, -96473, -37092, 9370, -9640, -35608, -14895, 18828, -56459, -102619, -205687, -216171, -148400, -261206, -183549, -183249, -86283, -78324, -51957, -12181, -50985, 15547, -34376, -86956, -144496, -132263, -224837, -248118, -238533, -99625, -43487, -680, -28227, 13077, 13579, -30531, -78781, -37719, -165919, -293590, -239251, -50526, -60965, -109487, -55892, -72604, 8417, -60765, -24414, -62085, 39598, -102920, -134290, -101167, -115171, -127591, -134841, -89081, -14633, -32609, 20338, 376, -7732, -45770, -9174, -53101, -105648, -155563, -86326, -8083, -74386, -75045, -204964, -244590, -232537, -162029, -142522, -70883, -114973, -205482, -73896, -109876, -125931, -108266, -75445, -32453, 2135, -15071, 11233, 21119, 7115, -283, -13887, -109584, -20422, 29838, 108370, 3747, -87767, 46772, -50619, -90488, -103412, -65639, -71660, -143316, 13739, -85790, -106621, -28893, -77172, -65646, -74010, -38622, 30074, 33448, 6665, 35669, 28318, -35379, -60320, -35119, 105856, 93398, 114092, -57473, -76658, 29190, -75756, -1688, -35522, -240539, -124714, -97037, 2658, -135904, -29559, -9597, -59449, -55516, -34214, -34208, 202, 14146, -30663, 6929, 2890, -5139, -14777, -14149, 158507, 83610, 52546, -28374, 108582, 54624, -49021, 7149, -90787, 34263, 42437, -44126, -123504, -82459, -97096, -122356, -124730, -91385, -21033, -40518, 28332, -3233, 27830, -9124, -31458, -21305, 3302, -15225, 74347, 89614, 65344, 134154, 193139, 113568, 44760, 63586, 25593, 123917, 101072, 70165, 67905, 83904, 49739, -18622, 26203, 17125, 18030, 3647, -10633, -16241, 27743, 11326, 22989, 27821, 14587, -28458, 4887, 23419, -3264, 24217, -24775, -20414, 45235, 3493, 50785, 79021, 22576, 62655, 80679, 25633, 39094, 29983, -23282, 10190, 13847, -874, -29631, 18198, -29618, 11194, 1597, 1663, -25512, -13787, -10485, -16590, -13577, 4175, 34301, -14762, -30927, 10654, 33449, -35613, 31352, 25793, 10902, 21065, -22631, -32528, 32453, 17660, -23432, -25057, 9561, 23394, 31270, 4495, 20904, 13946, 12629, -17932, -28778, 16902, -6269, -55787, -28527, 7127, 11638, -26054, 33570, -38989, -7677, -42151, -26474, 16457, -7449, -4602, 3077, -15449, 29218, -33638, -12243, -4335, -9929, -21911, 4733, 721, 22691, 13197, 21248, -36945, 29649, -24104, -10087, 6469, 3124, 23679, 40599, 37189, -25677, -3792, 65550, 133793, 160665, 132881, 94634, 65426, -31, -25464, -827, -20523, 31494, -10605, 2575, 15107, 12278, -28316, -29207, 1923, -36603, -25808, -42591, -69951, -86498, -88307, -127806, -92681, -177841, -162496, -77319, 94939, 69670, 141588, 68890, 81167, 62300, 10061, -24105, -2918, -20797, -29081, 25517, -13267, 28656, -22353, -42275, -106373, -121173, -126220, -125554, -53784, -165763, -130515, -154718, 4038, 74100, -36006, -116851, -91201, -26413, -20695, 9261, 2380, 32323, 55435, -1625, 20271, 28685, -22426, -6616, -31837, -41510, -45846, -137671, -206991, -244159, -92845, -108455, -87707, -5488, -114466, -215486, 41467, -264135, -84863, 20330, -99906, 71980, 8490, -15211, 110630, 138504, 143551, 102558, 26959, 29007, -7490, -15252, 19284, -91510, -82985, -133241, -262712, -111554, -71254, -25733, -100953, -141191, 28230, -126776, 41931, -98030, -64666, 32196, -132044, 48172, 12460, -137172, 23221, 282557, 400627, 201244, 14966, -34438, -1190, 5720, -41170, -120242, -180890, -112675, -72461, -18786, 209586, -54060, -10732, -122625, -150571, -94277, 23231, -21491, -78488, 32323, -31346, 54575, 50523, 136209, 110230, 67244, 277706, 266688, 78470, 8595, -27772, 10448, -45705, -125469, -185062, 32743, -5584, -29104, 55901, 115142, -94606, -5089, -112945, -171332, -119159, -5589, -172681, -96331, -26573, -30790, 4339, 60821, 90087, 75894, 347111, 309852, 70370, 1456, -16045, 8178, 3009, -119831, -161204, -92736, 39234, -60570, -38114, 46356, 44372, 133606, -127419, -195645, -122111, -132842, 16700, -83853, -27925, 52693, -881, 174994, 134635, 190346, 524133, 361209, 85438, 19714, 12913, 28796, -40810, -132092, -37625, -123246, 6365, 116680, 172064, 205041, 186942, 18458, 53001, -493203, -447663, -94842, -196271, -100164, -105298, -20028, -111652, -66716, -83128, 233444, 365704, 264587, 48201, 21068, 24828, -33940, -78443, -129701, -198741, 53054, 124290, 30803, 89450, 189000, 186535, 157573, 363703, -200803, -447715, -322796, -264683, -361355, -368898, -357372, -332167, -421380, -369145, -82476, -83538, 73252, 52555, -20969, -9370, 8862, -71321, -221282, -163308, 31586, 200891, 172316, 133975, 72193, 118484, 136581, 449866, 348893, -251725, -35379, 46398, 7369, -100321, -227714, -64541, -330529, -392966, -325175, -247834, -62909, -55482, -46945, 35236, 9148, -32267, -162304, -128645, -17388, -23200, 169304, 136132, 112612, 192081, 102182, 309357, 130757, -68232, 220391, 72856, 141124, 124189, 133555, 109550, 41549, -184508, -421663, -454587, -224576, -122486, -30254, -11558, 26669, 192, -59958, 6328, 100633, 23611, 73075, 92681, 47226, 155567, 239562, 146046, 183941, 56307, 15867, 58780, 112044, 37101, 121443, -24804, 23870, -120472, -259609, -298627, -230813, -41400, -4104, -28389, 5421, 9822, 39449, 15989, -741, -16984, 51153, -35994, 183197, 83853, 36252, 214297, 113313, 63635, 58408, 95874, 29312, -82934, 13045, -106566, -47052, -29505, -166692, -232454, -138280, -44609, 2721, 31180, -20174, -30065, -84345, -163145, -133869, -70634, 90486, 132487, -90752, 61928, 55816, 224309, 73252, -66389, 256785, 10435, -42708, 22736, -145921, -134921, -57385, -41652, 37130, -214738, -132934, -66806, 31277, -30141, -23160, -32731, -146358, -183816, -29881, -93001, -30788, 166569, 68128, 154384, 126985, 63887, 165331, 102037, -730, 52914, -72078, -31531, -115937, -9938, -55648, -26595, -203988, -66787, -66224, -79528, 23784, -6708, -23784, -35438, -147692, -222576, 8779, 133985, -68788, -26110, 101351, 23679, -20743, 156245, 96975, -117982, -34777, -15094, -1326, -118935, -28899, -138021, -94429, -161382, -156028, 13650, -110844, -37428, -12814, 28547, -32263, -7480, -65569, -199728, 13840, 167930, -163531, -69249, -53346, -26403, -81036, -51647, 24317, 53251, 78799, -72519, 10472, -29955, 12508, -27377, -48711, -34546, 7674, 60886, -120210, -7953, 16969, 23923, -5328, 3727, -108718, -248888, -26945, -20212, -8748, 73708, -5861, -62987, 82776, -5767, 5452, -66951, 99319, 20736, 46357, 42668, 41692, -52150, 49440, 84480, 29452, -68127, -80567, 4744, 3160, -21319, 6572, -12421, -90686, -46212, -104467, -109005, -8012, -79790, 65001, -40227, 39070, 84944, 101558, 29028, -11305, 24580, 66214, 24570, -24454, 6874, -14058, 87443, 21884, 7978, -38110, 3676, -7165, 18919, -507, 7132, -35230, 29973, -136125, -154810, -69363, -72046, -80945, 55214, -51111, 22031, 108781, 9692, 14027, 49924, -45674, 28459, 36143, -35283, -13117, -97670, -6519, -11100, -6175, 43478, -30444, 1824, 2002, -17805, 7577, 13639, -125339, -244189, -132447, 162088, -99545, 155936, 36595, 27538, 45762, 66092, 66746, 204765, 69713, 34970, 43783, 166496, 96136, -30708, 60881, 6824, -798, 9012, -10350, 16190, -18847, 23015, -10768, 10522, -29433, -154766, -177750, -18258, -27529, 39078, 21017, -48353, 45615, -58929, -56450, 118221, 36846, 65822, 172335, 169042, 58550, -38283, 626, 26930, 9566, -24170, 33610, -3514, 23272, -12325, -19159, -3465, -51763, -41929, -85487, -114106, -211528, -91071, -138036, -169846, -75228, -2804, -67469, -92138, -6960, 99219, -7955, 61467, -6552, 10273, 33262, 39984, 4411, -11723, 1889, -801, 10668, 6743, -16050, 16727, -33733, -86029, -61781, -128650, -160929, -50293, 54559, 92216, -40067, -95349, -89271, -82903, -65816, -17513, -56174, 4329, -41590, -6253, 18634, 638, 35559, 14336, -34184, -28201, -32099, -24304, -8753, -13392, -33760, 14949, 6240, -15378, -4405, -24311, 2947, -44163, -13467, -18703, 1438, 13102, 645, -14289, -34193, -10069, -18155, -12404, 29003, -22760, -13213, -21884, -23500, 18390, -15862, 5460, 29958, 18564, 3059, 29078, -12563, 28912, 32870, -34729, 13803, 14972, 11075, 30595, 32910, -9095, 5935, -11495, -29826, -1859, 10611, -12551, 16178, -31471, -23357, -23822, -371, 22905, 19335, 28393, 32736, -28664, 11422, -20201, -26522, 33266, -29900, -31090, -28481, 25086, -23413, 27346, -11496, 15251, 19877, -22492, -2063, -21591, 35409, -4661, -23599, -7036, 13314, -26580, 26574, 5748, -29454, 23820, 11324, 19130, -3612, -18510, -19277, 11412, 25383, 10385, -28277, 44447, 48258, 74418, 141561, 117339, 36061, 26802, 6840, 38139, 44818, -3925, 15241, 19453, 12211, -31332, 23349, -7022, -33617, -14308, -6766, 27001, -31824, 4469, -58661, -16608, -100474, -121321, -128075, -129777, -81080, -17370, -8997, 2560, -9353, -19990, -36601, -62158, -96964, -86007, -97095, -91014, -51091, -32416, 6830, -32022, -7314, -32968, -10420, -15806, -38471, 813, -97199, -179499, -219064, -196144, -160404, -140202, -38196, -113057, 29794, -8009, -93159, -45823, 13408, -47426, 46659, 93237, -1733, -6953, 20391, -34449, 10541, 359, 1010, -29746, 21392, -17441, -110854, -132824, -138301, -156317, -145502, -193924, -23342, -128206, -114057, 21025, -23663, -50055, 44216, 50036, 66424, 104879, 134342, -34535, -154422, -73067, -40430, 8536, -35616, -11934, -6308, 1933, -2636, -55784, -132568, -233752, -133776, -129960, -185588, 6024, -101574, -40722, 45144, 77194, -30632, -37605, 81620, -25538, 172563, -65104, -16287, 81737, -1567, -61457, -20264, -14439, -27087, 34699, -37175, 1082, -62350, -108586, -150259, -118348, -68730, -150642, 20824, 40915, 96868, -86258, -24953, -2334, 59193, -110426, 44570, 108176, -455, -77274, 5823, 71063, 101422, 73350, 33667, -33443, -17987, 16872, 7301, -11332, -42763, -160233, -85481, -120265, -61235, -55856, 66740, 34627, -17781, 72873, 83980, 31760, 105211, 69987, 74068, -7820, 29166, 75414, 27040, -84660, 64951, 188033, 80871, 63117, -22194, 25481, 6208, -236, -55097, -104350, -140381, -210501, 40206, 69244, 67113, 56646, 146749, -8807, -61234, -202721, -143751, -259239, -52215, -47660, 143519, -82884, 42358, -85799, 84093, 443192, 183021, 72240, 9273, -20723, 7907, -15359, -76519, -101337, -170160, -156526, 114132, 138314, 239688, 184994, 162473, 165021, 139838, 25253, -282362, -448629, -153441, 7986, -171598, 9086, 55729, 40564, 204933, 305279, 195279, 44414, 20014, -35398, 19267, 16873, -38335, -188954, -132319, 20444, 240538, -47549, 64019, 110582, 76456, 69823, 152398, 121107, -95941, -305765, -354935, -226630, -143906, -166363, -47685, -46200, 104343, 133057, 150546, 84841, -15527, 19207, 8622, -35991, -28725, -251727, -79438, 19087, 125391, 59971, 76259, 28733, 49806, 85994, 170392, 179165, -23067, -268022, -217069, 75747, -9917, -42420, 53440, 58138, 174311, 76166, -31739, -31628, -6803, 22946, 925, -34521, -15965, -144003, -140569, -54243, -31991, -45487, -16706, 53842, 38039, 109591, -27527, -2272, 6599, -150342, -279039, -90328, -35453, -66446, -115398, 156890, 170768, 15017, -97819, -26532, 19994, 2991, 16088, -11563, -52289, -77688, -16252, -140668, 17402, -45047, 57908, 188110, -65451, -9503, 67115, 61592, 77330, -312340, -214737, -216242, -202273, -44499, 4760, 92316, 140983, 47617, -172372, -55875, -31726, -19268, -7670, 7692, -73926, 71725, 1318, -175361, -85276, -14925, 156147, 65920, -31427, 21640, 149925, 11180, 47560, -259932, -130295, -33234, -102605, -143691, 79094, 78440, 110180, 54189, -171881, -50651, 14065, -27015, -19838, 540, -42002, -20630, 85665, -46350, -25434, 46294, 58581, -31734, -27261, 20090, 32910, -76905, -78888, -289004, -221803, -130967, -30051, -8901, 92262, 17569, 45695, -94713, -221594, -82403, 44, 29780, 13738, 5179, -67888, -92796, 87630, 185180, -16470, -62580, 141425, 156262, 60184, -12584, -3570, -52101, -281712, -75835, -88830, 32103, -44065, 62796, 72357, -55112, -21715, -93733, -162606, -17148, -41864, -35656, 9156, -35892, -72306, -73055, -71233, 116478, 91463, 2341, 149328, 170025, 3880, -32284, -78298, -63232, 35215, -82001, 73335, -40947, -48377, 57632, -182671, -9289, -97891, -109921, -134103, -57703, 15788, 34936, 29953, -21617, -134558, -123151, -100819, -28675, 13525, 110058, 156563, 114043, 292825, 90565, -8736, -13616, -7674, 79406, -81600, -39590, -30995, -9966, -66637, 26726, 11501, -56436, -48208, -44057, -5718, 11569, -1107, -11253, -89930, -149721, -41259, 23100, 48745, 152917, -3993, 229855, 180108, 194256, 9587, 64015, 76168, -43541, 34061, -67458, -102192, -31832, 14007, -13416, -94672, -54971, -52095, -26183, -3498, -6435, 22521, -35905, -68486, -164233, -49999, -32492, 94986, 39981, 94401, 141930, 182914, 190316, 9188, -14205, -15003, -34094, -60360, -127478, -184027, 56680, 78040, -60148, -149544, -96312, 1233, -3279, -32203, 7570, 10877, 27272, -80272, -127007, 17195, 67193, 168466, -33442, -1257, -28950, -7324, 60755, 36008, 100890, -39022, -92075, 42366, 1606, -66349, -33074, -141284, -152534, -55786, -36871, -21117, 2783, -17613, -16509, -21925, -12475, -58696, -133039, -41917, -3008, 1694, 18551, 38845, 101538, 7379, 264581, 170555, 214632, 132792, 310960, 226053, -151399, -132363, -166716, -201889, -121006, -6909, 8307, 5265, -17273, 1766, 2278, 8995, 22368, -38977, -95145, -252088, -252203, -270354, -105318, 21277, -107634, -5985, 42483, -1859, 63937, -20994, 16461, -83242, 3126, -59194, -73450, -113785, -120143, -61262, -12092, 31107, -31988, 9559, 11248, 18391, -28317, 20431, -25479, -202752, -246582, -256207, -304262, -260403, -208239, -22408, -129168, -221609, -215234, -201859, -178849, -130523, -52405, -51382, -99496, -49221, -34847, -28858, -22839, 35102, -18796, -32390, -33501, -23713, -26591, 30591, 12299, -97713, -77179, -150274, -87941, -156167, -125754, -136852, -133445, -162199, -235715, -138690, -71621, -43749, -47724, -25153, -21053, 21884, 24081, 35779, -9577, -16482, -22646, -10464, -1214, -28784, 17586, -20366, 19780, 14173, 14171, -4777, -29664, 21123, -39957, 35167, 1630, 24680, -17231, -42724, 29717, -8250, 11609, -29644, 16431, 4485, 8432, -33136, -18591, -401, -21501, -14370];
global b1: [Field; 20] = [-887127339840, 357286568, -688299417496, 266051530838, 510404169559, -367371439934, -87618887424, -227530956268, 1281285643578, 551842808723, 767115116119, 86816608906, 151371315122, -193017750978, 420045584440, 727648556232, 69962143898, 307075470686, -226460248232, 389632344246];
global w2: [Field; 200] = [-390918, 663741, -1003359, 769490, -237069, -1497802, -235386, -1355245, 974008, -1088395, -746983, 610130, -1087264, -282890, 743219, -950127, 745972, -481135, -764404, 663408, 518524, -1356668, 646930, -162982, -1107148, -726342, 1651281, 871035, -818552, 929081, 520283, -447047, 768281, -308833, -1171800, -922269, -630291, -828320, -739073, 263864, 773456, 547440, -69828, 747748, 493796, -564768, -516525, 955772, 116544, 1060558, 720003, 554999, -238334, 491156, -210995, -75323, 1026112, -150879, -208433, 3750, 679934, -608980, -505457, 722685, -419604, 572334, -659705, 411768, -355090, 425902, -73732, 612415, 1343595, -310627, -267430, -250328, 924483, -594480, -532952, -689212, -1103675, 458775, -11276, -773987, 620964, 621954, 117987, -1098258, -872139, -1049286, 485643, -1538241, -855578, 346325, -722569, 944574, -615289, 985363, 837967, -512629, -224596, 194527, -385929, 659823, -320190, 541506, -283652, -112487, 767481, -87095, -18047, 571218, 1301168, 565477, 147988, 349987, -228959, -687031, 746807, 523865, -1551080, 649871, 776545, 765067, 632006, -1302211, -333039, -657831, 321211, 751823, 674355, -1049057, -484908, 675448, 629116, -1103406, -913456, 557281, 602855, 485092, 639553, -950100, -384770, -1057958, 511678, 450516, 95435, 926982, 835654, 961750, -438433, 580823, -824253, -1414095, 640789, 1037016, 716627, 1013683, -857723, -704034, 657337, 434253, 675776, 72182, -584001, 496438, -298518, 786675, -692999, -346824, -531933, 509333, -649802, 538473, -318882, -405163, -5743, -767440, 733624, 470744, 485155, -163013, 639452, -600027, 620124, 654232, 199801, -698870, -229029, -1186328, -1300698, 389761, 909429, -673444, 537976, 911341, -922283, 868579, 609785, -601244];
global b2: [Field; 10] = [-183820188045501696, 1192338466644287232, -1316067576408386304, 559926211833953856, 418076992034912128, 50735618919134144, -993632256984710656, -819676637649536128, 484559565782547008, 218293786048889152];
fn main(input: [Field; 784]) -> pub Field {
let output = input;
let output = relu(fc(output, w1, b1));
let output = arg_max(fc(output, w2, b2));
output
}
////////////////////
// TESTS //
////////////////////
#[test]
fn test_main_001() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 474510, 474510, 474510, 474510, 745098, 474510, 745098, 745098, 635294, 854902, 474510, 474510, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 419608, 858824, 976471, 988235, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 988235, 988235, 984314, 941176, 941176, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 905882, 988235, 988235, 988235, 909804, 619608, 854902, 988235, 792157, 992157, 988235, 850980, 929412, 988235, 988235, 988235, 752941, 592157, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 913725, 988235, 988235, 988235, 764706, 121569, 0, 98039, 152941, 74510, 152941, 152941, 98039, 396078, 988235, 988235, 415686, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 729412, 976471, 988235, 988235, 933333, 400000, 82353, 0, 0, 0, 0, 0, 98039, 768627, 988235, 988235, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 466667, 854902, 988235, 988235, 988235, 729412, 188235, 0, 0, 0, 90196, 501961, 988235, 988235, 831373, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 749020, 870588, 988235, 988235, 952941, 650980, 74510, 78431, 784314, 988235, 988235, 945098, 380392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 474510, 952941, 988235, 988235, 796078, 800000, 988235, 988235, 952941, 376471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 776471, 988235, 988235, 992157, 988235, 968627, 639216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 815686, 988235, 988235, 992157, 988235, 619608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 474510, 827451, 992157, 992157, 992157, 1000000, 992157, 800000, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 568627, 988235, 988235, 988235, 988235, 764706, 772549, 988235, 988235, 780392, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 839216, 988235, 988235, 988235, 949020, 592157, 47059, 50980, 945098, 988235, 988235, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 890196, 988235, 988235, 988235, 772549, 329412, 0, 0, 0, 772549, 988235, 988235, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 831373, 988235, 988235, 917647, 615686, 66667, 0, 0, 0, 0, 556863, 988235, 988235, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 949020, 988235, 988235, 615686, 0, 0, 0, 0, 0, 211765, 949020, 988235, 988235, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474510, 988235, 988235, 988235, 207843, 0, 109804, 160784, 160784, 435294, 992157, 988235, 988235, 690196, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 956863, 988235, 988235, 701961, 627451, 874510, 988235, 988235, 988235, 992157, 988235, 698039, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 941176, 439216, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 658824, 988235, 988235, 988235, 988235, 988235, 682353, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_002() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 501961, 43137, 0, 0, 0, 0, 94118, 992157, 270588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 925490, 619608, 454902, 0, 0, 0, 0, 176471, 988235, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 600000, 988235, 988235, 807843, 98039, 0, 0, 125490, 666667, 988235, 917647, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 941176, 988235, 988235, 588235, 66667, 0, 0, 454902, 992157, 988235, 988235, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 988235, 988235, 988235, 0, 0, 0, 0, 454902, 992157, 988235, 988235, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725490, 992157, 992157, 43137, 19608, 27451, 168627, 945098, 1000000, 992157, 968627, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 721569, 988235, 988235, 796078, 698039, 729412, 113725, 615686, 992157, 988235, 431373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 721569, 988235, 988235, 992157, 988235, 988235, 603922, 596078, 992157, 988235, 670588, 439216, 721569, 482353, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556863, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 792157, 266667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 537255, 537255, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 905882, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290196, 454902, 898039, 992157, 988235, 901961, 572549, 454902, 454902, 454902, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 811765, 988235, 901961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 862745, 988235, 901961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 274510, 988235, 988235, 529412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 988235, 988235, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 870588, 992157, 745098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 819608, 988235, 537255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 843137, 988235, 741176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556863, 988235, 701961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 274510, 988235, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 4);
}
#[test]
fn test_main_003() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 619608, 905882, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 254902, 568627, 568627, 345098, 0, 54902, 831373, 992157, 282353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 145098, 258824, 725490, 992157, 937255, 913725, 992157, 596078, 454902, 992157, 807843, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 870588, 992157, 992157, 937255, 803922, 270588, 145098, 647059, 996078, 992157, 898039, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 901961, 992157, 992157, 482353, 0, 0, 0, 588235, 996078, 811765, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 603922, 992157, 788235, 192157, 0, 466667, 984314, 984314, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 764706, 992157, 929412, 807843, 976471, 992157, 564706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 501961, 921569, 992157, 992157, 992157, 901961, 384314, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 992157, 992157, 992157, 996078, 992157, 937255, 584314, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560784, 992157, 788235, 66667, 294118, 517647, 811765, 992157, 847059, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 901961, 996078, 545098, 0, 0, 0, 70588, 564706, 984314, 862745, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 807843, 992157, 94118, 0, 0, 0, 0, 0, 666667, 992157, 690196, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509804, 992157, 388235, 0, 0, 0, 0, 0, 90196, 780392, 992157, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 270588, 968627, 647059, 643137, 0, 0, 0, 0, 0, 286275, 992157, 458824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 854902, 992157, 992157, 117647, 0, 0, 0, 0, 286275, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 831373, 992157, 874510, 325490, 0, 0, 0, 70588, 850980, 905882, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 980392, 996078, 886275, 309804, 0, 0, 235294, 956863, 866667, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 996078, 992157, 839216, 309804, 0, 286275, 992157, 435294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 992157, 992157, 976471, 788235, 815686, 992157, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 317647, 811765, 992157, 992157, 854902, 360784, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_004() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 203922, 992157, 996078, 835294, 917647, 596078, 596078, 278431, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 988235, 992157, 988235, 992157, 988235, 992157, 988235, 874510, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 717647, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 196078, 278431, 592157, 835294, 988235, 992157, 988235, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 992157, 839216, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 988235, 992157, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 992157, 996078, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 988235, 835294, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 996078, 992157, 556863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 992157, 988235, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 913725, 996078, 992157, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 988235, 992157, 831373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 839216, 992157, 996078, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556863, 992157, 988235, 913725, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 992157, 996078, 992157, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 913725, 988235, 992157, 670588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 835294, 1000000, 992157, 878431, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 988235, 992157, 988235, 796078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 992157, 1000000, 992157, 482353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 909804, 992157, 509804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_005() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 905882, 474510, 0, 74510, 643137, 698039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 403922, 196078, 866667, 992157, 635294, 403922, 623529, 992157, 992157, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 231373, 992157, 992157, 992157, 992157, 996078, 992157, 992157, 992157, 992157, 384314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 643137, 992157, 992157, 992157, 992157, 996078, 992157, 992157, 992157, 992157, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 996078, 992157, 992157, 992157, 992157, 996078, 992157, 992157, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388235, 1000000, 996078, 835294, 411765, 384314, 298039, 50980, 878431, 996078, 996078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 996078, 925490, 47059, 0, 0, 0, 435294, 992157, 992157, 666667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 537255, 337255, 0, 0, 0, 278431, 945098, 992157, 941176, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 670588, 992157, 992157, 776471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 996078, 992157, 870588, 133333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 768627, 1000000, 996078, 686275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 956863, 996078, 925490, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 823529, 992157, 996078, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 823529, 992157, 992157, 572549, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 992157, 992157, 235294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 231373, 937255, 996078, 996078, 376471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 937255, 992157, 992157, 917647, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 996078, 992157, 992157, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 996078, 980392, 454902, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 996078, 764706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_006() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 772549, 1000000, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 662745, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 552941, 992157, 996078, 992157, 996078, 992157, 996078, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 992157, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 662745, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662745, 1000000, 992157, 447059, 447059, 776471, 992157, 996078, 992157, 996078, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 992157, 984314, 0, 0, 109804, 768627, 992157, 984314, 992157, 984314, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 992157, 1000000, 329412, 0, 0, 0, 0, 223529, 882353, 996078, 992157, 996078, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 984314, 768627, 109804, 0, 0, 0, 0, 0, 658824, 992157, 984314, 992157, 768627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662745, 996078, 992157, 662745, 0, 0, 0, 0, 0, 0, 0, 996078, 992157, 996078, 992157, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 992157, 984314, 219608, 0, 0, 0, 0, 0, 0, 0, 545098, 984314, 992157, 984314, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 552941, 992157, 996078, 768627, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 996078, 992157, 662745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 992157, 984314, 992157, 325490, 0, 0, 0, 0, 0, 0, 0, 447059, 772549, 984314, 992157, 984314, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662745, 996078, 992157, 447059, 0, 0, 0, 0, 0, 0, 223529, 333333, 772549, 996078, 992157, 996078, 992157, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 878431, 992157, 984314, 0, 0, 0, 0, 0, 0, 223529, 878431, 992157, 984314, 992157, 984314, 992157, 541176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 992157, 996078, 992157, 223529, 0, 113725, 772549, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 882353, 658824, 772549, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 329412, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 662745, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 768627, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 882353, 996078, 992157, 996078, 992157, 996078, 992157, 662745, 658824, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 545098, 984314, 992157, 541176, 329412, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_007() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 647059, 917647, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 996078, 996078, 905882, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400000, 996078, 996078, 850980, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 839216, 996078, 996078, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 996078, 996078, 894118, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 996078, 996078, 827451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 423529, 996078, 996078, 501961, 0, 39216, 294118, 658824, 513726, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 870588, 996078, 898039, 109804, 39216, 611765, 996078, 996078, 996078, 678431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 996078, 996078, 501961, 39216, 611765, 996078, 996078, 996078, 996078, 905882, 541176, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 996078, 996078, 364706, 172549, 996078, 996078, 819608, 266667, 717647, 996078, 996078, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 886275, 996078, 498039, 305882, 996078, 996078, 619608, 0, 74510, 721569, 996078, 611765, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 584314, 996078, 964706, 925490, 996078, 996078, 266667, 0, 0, 227451, 949020, 996078, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192157, 996078, 996078, 996078, 996078, 996078, 266667, 0, 0, 0, 439216, 996078, 729412, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 996078, 996078, 996078, 996078, 996078, 266667, 0, 0, 0, 58824, 878431, 996078, 262745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 490196, 996078, 996078, 996078, 996078, 447059, 0, 0, 0, 0, 854902, 996078, 580392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 678431, 996078, 996078, 996078, 850980, 290196, 0, 0, 0, 854902, 996078, 949020, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 858824, 1000000, 996078, 996078, 972549, 905882, 509804, 584314, 984314, 996078, 619608, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 858824, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 862745, 996078, 996078, 996078, 996078, 996078, 996078, 623529, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 141176, 509804, 509804, 509804, 509804, 929412, 368627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_008() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 86275, 86275, 86275, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 494118, 662745, 690196, 988235, 988235, 992157, 878431, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 415686, 690196, 964706, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 596078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 650980, 992157, 992157, 992157, 992157, 968627, 827451, 792157, 415686, 415686, 996078, 992157, 909804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 905882, 486275, 207843, 0, 0, 0, 313726, 992157, 988235, 596078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 498039, 494118, 149020, 200000, 0, 0, 0, 0, 23529, 635294, 992157, 988235, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 525490, 988235, 952941, 600000, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419608, 937255, 988235, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 305882, 960784, 992157, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 988235, 988235, 905882, 211765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 600000, 992157, 988235, 988235, 690196, 152941, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 388235, 662745, 882353, 988235, 992157, 988235, 988235, 988235, 988235, 937255, 662745, 662745, 556863, 250980, 250980, 250980, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 686275, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 839216, 725490, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 996078, 992157, 980392, 827451, 486275, 419608, 415686, 415686, 313726, 349020, 419608, 552941, 827451, 827451, 968627, 1000000, 992157, 992157, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 658824, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207843, 317647, 658824, 658824, 658824, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 2);
}
#[test]
fn test_main_009() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 58824, 0, 0, 0, 0, 15686, 529412, 1000000, 709804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 964706, 823529, 396078, 298039, 298039, 454902, 564706, 992157, 992157, 886275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 313726, 984314, 992157, 992157, 992157, 992157, 984314, 972549, 988235, 992157, 878431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 400000, 400000, 788235, 733333, 254902, 0, 658824, 992157, 717647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 764706, 992157, 886275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 992157, 992157, 886275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 992157, 992157, 623529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 835294, 992157, 992157, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 933333, 992157, 992157, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 933333, 992157, 749020, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 956863, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 992157, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 992157, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 992157, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 992157, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 992157, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 992157, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207843, 968627, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 952941, 992157, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 749020, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_010() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 529412, 603922, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 925490, 996078, 996078, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 698039, 996078, 996078, 996078, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 427451, 945098, 996078, 996078, 996078, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 843137, 701961, 490196, 996078, 996078, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 23529, 231373, 0, 27451, 231373, 15686, 847059, 996078, 933333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 627451, 956863, 247059, 0, 0, 0, 0, 839216, 996078, 952941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 733333, 996078, 501961, 0, 0, 0, 0, 0, 839216, 996078, 952941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 850980, 831373, 427451, 35294, 0, 0, 0, 0, 74510, 874510, 996078, 960784, 125490, 235294, 176471, 188235, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 603922, 788235, 282353, 290196, 305882, 305882, 305882, 305882, 415686, 839216, 996078, 996078, 996078, 890196, 996078, 937255, 949020, 800000, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 843137, 937255, 964706, 882353, 925490, 996078, 996078, 996078, 996078, 1000000, 996078, 1000000, 996078, 996078, 996078, 996078, 996078, 996078, 850980, 407843, 0, 0, 0, 0, 0, 0, 0, 0, 525490, 376471, 458824, 90196, 90196, 501961, 552941, 552941, 552941, 447059, 580392, 996078, 996078, 956863, 90196, 90196, 90196, 90196, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 996078, 996078, 952941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 996078, 996078, 898039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 996078, 996078, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 996078, 996078, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 996078, 850980, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 137255, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 4);
}
#[test]
fn test_main_011() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 996078, 831373, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439216, 996078, 996078, 996078, 811765, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 478431, 380392, 901961, 996078, 960784, 490196, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 960784, 996078, 666667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 882353, 996078, 596078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290196, 996078, 972549, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 898039, 996078, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 686275, 996078, 898039, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 176471, 274510, 376471, 964706, 996078, 898039, 133333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 776471, 921569, 960784, 996078, 996078, 827451, 513726, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 831373, 929412, 521569, 180392, 180392, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 996078, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 972549, 772549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 709804, 901961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 545098, 976471, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 674510, 960784, 172549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 996078, 905882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 450980, 807843, 333333, 101961, 215686, 674510, 964706, 960784, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 815686, 996078, 882353, 913725, 996078, 996078, 839216, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 898039, 1000000, 796078, 631373, 368627, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_012() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 729412, 996078, 466667, 0, 19608, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 968627, 992157, 992157, 607843, 0, 725490, 886275, 635294, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388235, 878431, 992157, 992157, 941176, 274510, 0, 839216, 992157, 992157, 725490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 800000, 996078, 505882, 341176, 239216, 0, 0, 62745, 650980, 992157, 992157, 560784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 992157, 670588, 35294, 0, 0, 0, 0, 0, 309804, 992157, 992157, 764706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 537255, 996078, 388235, 0, 0, 0, 0, 0, 0, 541176, 996078, 996078, 1000000, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 505882, 992157, 384314, 0, 0, 0, 0, 0, 274510, 945098, 949020, 972549, 996078, 529412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 992157, 501961, 0, 0, 0, 0, 541176, 945098, 992157, 341176, 764706, 996078, 529412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 866667, 976471, 741176, 533333, 592157, 917647, 996078, 831373, 192157, 7843, 764706, 996078, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 698039, 992157, 992157, 992157, 992157, 756863, 94118, 0, 0, 764706, 996078, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 384314, 384314, 90196, 0, 0, 0, 98039, 905882, 1000000, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 992157, 886275, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 274510, 992157, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 992157, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192157, 964706, 996078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 635294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 725490, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_013() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 827451, 996078, 996078, 756863, 564706, 396078, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 545098, 694118, 968627, 992157, 992157, 992157, 996078, 992157, 992157, 968627, 694118, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 325490, 894118, 992157, 992157, 992157, 992157, 992157, 992157, 172549, 172549, 172549, 435294, 992157, 858824, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 839216, 992157, 992157, 992157, 988235, 831373, 474510, 98039, 0, 0, 0, 43137, 811765, 992157, 725490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262745, 992157, 992157, 992157, 823529, 364706, 0, 0, 0, 0, 0, 0, 0, 556863, 992157, 980392, 537255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 600000, 992157, 925490, 215686, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 992157, 992157, 882353, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 992157, 796078, 709804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239216, 992157, 992157, 992157, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 619608, 992157, 992157, 509804, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 858824, 992157, 992157, 964706, 211765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 941176, 992157, 662745, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 992157, 992157, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 466667, 976471, 870588, 94118, 0, 0, 0, 0, 0, 0, 0, 654902, 992157, 992157, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 231373, 745098, 996078, 980392, 490196, 266667, 188235, 117647, 94118, 658824, 1000000, 996078, 996078, 996078, 823529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 301961, 823529, 992157, 992157, 992157, 956863, 901961, 992157, 972549, 639216, 843137, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 172549, 305882, 772549, 945098, 874510, 839216, 549020, 0, 780392, 992157, 647059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 35294, 27451, 27451, 0, 0, 780392, 992157, 427451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780392, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780392, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 992157, 901961, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 945098, 992157, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 647059, 992157, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 992157, 690196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_014() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 298039, 682353, 741176, 721569, 682353, 454902, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 784314, 996078, 937255, 866667, 592157, 847059, 996078, 843137, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 737255, 933333, 478431, 105882, 0, 0, 0, 333333, 992157, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 992157, 490196, 0, 0, 0, 0, 0, 7843, 521569, 803922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 913725, 972549, 98039, 0, 0, 0, 0, 0, 125490, 980392, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 972549, 980392, 192157, 0, 0, 0, 0, 86275, 937255, 254902, 474510, 686275, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 956863, 749020, 121569, 0, 0, 86275, 431373, 992157, 992157, 913725, 537255, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 945098, 686275, 23529, 372549, 937255, 992157, 898039, 458824, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 992157, 886275, 984314, 803922, 396078, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 705882, 992157, 992157, 501961, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 803922, 811765, 521569, 929412, 701961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 498039, 537255, 62745, 0, 521569, 992157, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 466667, 737255, 0, 0, 0, 125490, 960784, 619608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 937255, 411765, 0, 0, 0, 0, 658824, 796078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 992157, 372549, 0, 0, 0, 0, 619608, 972549, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 996078, 254902, 0, 0, 0, 0, 623529, 1000000, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 976471, 372549, 0, 0, 0, 0, 619608, 988235, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 811765, 992157, 482353, 47059, 0, 47059, 886275, 874510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 227451, 976471, 996078, 764706, 556863, 764706, 992157, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 392157, 815686, 992157, 815686, 392157, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_015() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 764706, 929412, 188235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 760784, 996078, 921569, 384314, 384314, 384314, 278431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 996078, 996078, 996078, 996078, 996078, 956863, 839216, 839216, 827451, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 313726, 780392, 780392, 780392, 976471, 996078, 996078, 996078, 996078, 882353, 450980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290196, 321569, 321569, 380392, 941176, 996078, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 996078, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 996078, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 756863, 996078, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592157, 996078, 996078, 403922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 745098, 996078, 866667, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 784314, 996078, 976471, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 643137, 996078, 984314, 568627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662745, 996078, 996078, 580392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 945098, 996078, 905882, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 956863, 996078, 996078, 294118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 356863, 933333, 996078, 996078, 996078, 901961, 866667, 556863, 329412, 329412, 329412, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 815686, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 886275, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 929412, 996078, 996078, 913725, 835294, 352941, 443137, 835294, 835294, 925490, 835294, 835294, 658824, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 996078, 996078, 949020, 447059, 0, 0, 0, 0, 0, 203922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 866667, 627451, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 2);
}
#[test]
fn test_main_016() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 454902, 23529, 0, 0, 125490, 870588, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 556863, 509804, 286275, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 603922, 992157, 847059, 0, 129412, 858824, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 992157, 992157, 847059, 0, 631373, 956863, 921569, 921569, 921569, 921569, 921569, 945098, 992157, 925490, 988235, 694118, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 992157, 992157, 847059, 0, 0, 203922, 0, 0, 0, 0, 0, 152941, 411765, 39216, 384314, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 823529, 992157, 992157, 866667, 125490, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 992157, 992157, 992157, 992157, 992157, 921569, 525490, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 454902, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 909804, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 909804, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 772549, 713726, 290196, 290196, 662745, 992157, 992157, 913725, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 780392, 992157, 992157, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 992157, 992157, 921569, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 913725, 992157, 992157, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 572549, 992157, 992157, 674510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 603922, 525490, 0, 0, 0, 0, 0, 0, 247059, 992157, 992157, 784314, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 992157, 945098, 368627, 145098, 0, 0, 0, 0, 35294, 788235, 992157, 992157, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 811765, 992157, 992157, 921569, 509804, 0, 0, 0, 0, 752941, 992157, 992157, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 313726, 811765, 992157, 992157, 980392, 576471, 211765, 415686, 772549, 972549, 992157, 992157, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 811765, 992157, 992157, 992157, 960784, 992157, 992157, 992157, 992157, 992157, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 811765, 992157, 992157, 992157, 992157, 992157, 992157, 858824, 137255, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 94118, 505882, 839216, 992157, 874510, 376471, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_017() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 588235, 749020, 996078, 1000000, 729412, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 635294, 992157, 992157, 992157, 992157, 992157, 925490, 227451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 839216, 992157, 823529, 447059, 113725, 278431, 960784, 992157, 505882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 964706, 992157, 843137, 101961, 0, 0, 0, 635294, 992157, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 360784, 992157, 658824, 109804, 0, 0, 0, 219608, 933333, 835294, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 992157, 952941, 105882, 0, 0, 0, 231373, 921569, 992157, 686275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 992157, 572549, 0, 0, 121569, 627451, 945098, 992157, 992157, 498039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 992157, 831373, 388235, 423529, 862745, 992157, 992157, 992157, 811765, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 458824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 725490, 992157, 992157, 988235, 705882, 384314, 984314, 780392, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 396078, 607843, 262745, 0, 313726, 992157, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 901961, 992157, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207843, 992157, 992157, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207843, 992157, 788235, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 427451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 611765, 992157, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 870588, 890196, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 431373, 992157, 607843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 431373, 992157, 513726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 431373, 992157, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_018() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 996078, 831373, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 992157, 992157, 172549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 992157, 992157, 745098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 992157, 992157, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 992157, 662745, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639216, 996078, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 992157, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 992157, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 992157, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 992157, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639216, 996078, 427451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 992157, 698039, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 992157, 992157, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 992157, 992157, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 992157, 992157, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 996078, 996078, 541176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 945098, 992157, 537255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 600000, 992157, 870588, 250980, 0, 200000, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 929412, 992157, 980392, 815686, 945098, 631373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239216, 952941, 996078, 992157, 537255, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_019() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 211765, 552941, 749020, 1000000, 992157, 992157, 992157, 1000000, 992157, 847059, 552941, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 662745, 992157, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 811765, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 941176, 988235, 992157, 988235, 729412, 658824, 219608, 219608, 219608, 219608, 219608, 509804, 917647, 988235, 992157, 941176, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 952941, 988235, 988235, 945098, 254902, 23529, 0, 0, 0, 0, 0, 0, 0, 86275, 698039, 992157, 988235, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 992157, 992157, 1000000, 968627, 588235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 752941, 992157, 992157, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 623529, 768627, 768627, 772549, 403922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 988235, 988235, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458824, 988235, 729412, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 945098, 988235, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 945098, 996078, 819608, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247059, 772549, 988235, 870588, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 333333, 74510, 149020, 384314, 917647, 988235, 988235, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 905882, 929412, 992157, 988235, 988235, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 690196, 956863, 992157, 992157, 996078, 819608, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 733333, 988235, 988235, 721569, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 494118, 992157, 988235, 988235, 498039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 882353, 992157, 988235, 498039, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 996078, 894118, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 988235, 992157, 988235, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 952941, 992157, 988235, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 600000, 890196, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_020() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 349020, 666667, 996078, 996078, 996078, 752941, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 650980, 992157, 992157, 992157, 992157, 992157, 992157, 870588, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 152941, 886275, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 980392, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 807843, 992157, 952941, 784314, 466667, 282353, 600000, 980392, 992157, 933333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 952941, 992157, 486275, 0, 0, 0, 0, 266667, 992157, 976471, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 992157, 992157, 333333, 0, 0, 0, 23529, 596078, 992157, 992157, 858824, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 949020, 992157, 654902, 94118, 0, 0, 764706, 992157, 992157, 992157, 992157, 968627, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 858824, 992157, 992157, 823529, 180392, 603922, 992157, 992157, 894118, 898039, 941176, 992157, 976471, 349020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262745, 847059, 992157, 992157, 992157, 992157, 992157, 686275, 86275, 94118, 156863, 427451, 886275, 411765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 11765, 419608, 941176, 992157, 992157, 992157, 819608, 345098, 31373, 0, 0, 11765, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 941176, 992157, 988235, 984314, 992157, 992157, 807843, 301961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 505882, 992157, 956863, 325490, 219608, 686275, 992157, 992157, 894118, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 847059, 992157, 635294, 0, 0, 3922, 682353, 992157, 992157, 843137, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294118, 992157, 901961, 43137, 0, 0, 0, 454902, 690196, 992157, 992157, 290196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 992157, 658824, 0, 0, 0, 0, 0, 490196, 992157, 996078, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294118, 992157, 658824, 0, 0, 0, 0, 294118, 949020, 992157, 964706, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 980392, 705882, 7843, 0, 0, 121569, 819608, 992157, 992157, 788235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 760784, 992157, 541176, 356863, 584314, 945098, 992157, 992157, 650980, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 992157, 992157, 996078, 992157, 992157, 952941, 615686, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 627451, 992157, 992157, 992157, 678431, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_021() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 674510, 1000000, 745098, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 952941, 929412, 815686, 733333, 964706, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 631373, 964706, 27451, 0, 39216, 854902, 792157, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 972549, 513726, 0, 0, 0, 274510, 992157, 380392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 701961, 949020, 54902, 0, 0, 0, 50980, 882353, 831373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 866667, 670588, 0, 0, 0, 0, 0, 705882, 831373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 933333, 345098, 0, 0, 0, 0, 0, 450980, 972549, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 992157, 94118, 0, 0, 0, 0, 0, 450980, 949020, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 815686, 854902, 39216, 0, 0, 0, 0, 0, 450980, 980392, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 886275, 352941, 0, 0, 0, 0, 0, 0, 450980, 835294, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 996078, 129412, 0, 0, 0, 0, 0, 0, 564706, 835294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 941176, 356863, 0, 0, 0, 0, 0, 0, 666667, 933333, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192157, 992157, 447059, 0, 0, 0, 0, 0, 11765, 792157, 694118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 992157, 447059, 0, 0, 0, 0, 0, 388235, 976471, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 992157, 447059, 0, 0, 0, 0, 11765, 780392, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 992157, 447059, 0, 0, 0, 0, 231373, 992157, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 956863, 447059, 0, 0, 0, 7843, 729412, 835294, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 647059, 866667, 141176, 0, 86275, 800000, 976471, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262745, 956863, 850980, 627451, 941176, 984314, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 278431, 960784, 992157, 678431, 133333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_022() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192157, 705882, 992157, 1000000, 909804, 419608, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 470588, 894118, 988235, 988235, 992157, 988235, 988235, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 988235, 988235, 988235, 866667, 478431, 603922, 988235, 603922, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 772549, 992157, 988235, 890196, 466667, 98039, 0, 184314, 988235, 988235, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 854902, 988235, 992157, 988235, 843137, 290196, 0, 0, 184314, 988235, 658824, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 870588, 992157, 992157, 207843, 290196, 572549, 737255, 43137, 0, 184314, 992157, 631373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 858824, 988235, 921569, 400000, 0, 0, 0, 0, 0, 0, 184314, 988235, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 541176, 988235, 988235, 501961, 0, 0, 0, 0, 0, 0, 0, 509804, 988235, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 988235, 600000, 35294, 0, 0, 0, 0, 0, 0, 35294, 760784, 988235, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 901961, 992157, 615686, 23529, 0, 0, 0, 0, 0, 0, 0, 94118, 988235, 866667, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 913725, 992157, 866667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 545098, 992157, 478431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 607843, 988235, 905882, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 831373, 874510, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 988235, 988235, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780392, 992157, 482353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 760784, 988235, 854902, 54902, 0, 0, 0, 0, 0, 0, 0, 101961, 525490, 972549, 752941, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 478431, 988235, 988235, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 545098, 992157, 992157, 180392, 0, 0, 0, 0, 0, 0, 50980, 462745, 992157, 960784, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 541176, 988235, 988235, 176471, 0, 0, 0, 0, 66667, 184314, 831373, 988235, 815686, 227451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419608, 988235, 988235, 603922, 274510, 274510, 274510, 600000, 819608, 988235, 992157, 815686, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 529412, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 384314, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 419608, 909804, 988235, 992157, 988235, 866667, 537255, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_023() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 188235, 329412, 980392, 709804, 380392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 611765, 996078, 996078, 996078, 996078, 980392, 568627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 247059, 894118, 968627, 941176, 454902, 447059, 62745, 164706, 658824, 878431, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 996078, 996078, 996078, 737255, 7843, 0, 0, 0, 23529, 760784, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 941176, 996078, 996078, 643137, 329412, 3922, 0, 0, 0, 0, 674510, 756863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 494118, 1000000, 996078, 690196, 0, 0, 0, 0, 0, 0, 58824, 898039, 956863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 466667, 1000000, 996078, 996078, 211765, 0, 0, 0, 0, 0, 0, 443137, 980392, 729412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509804, 996078, 996078, 835294, 58824, 0, 0, 0, 0, 0, 0, 494118, 733333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509804, 1000000, 768627, 121569, 0, 0, 0, 0, 0, 0, 7843, 835294, 733333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 941176, 254902, 0, 0, 0, 0, 0, 0, 0, 556863, 996078, 647059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 921569, 709804, 0, 0, 0, 0, 0, 0, 0, 419608, 941176, 996078, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 964706, 709804, 0, 0, 0, 0, 0, 0, 270588, 972549, 949020, 266667, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 933333, 996078, 403922, 0, 0, 0, 0, 0, 58824, 839216, 996078, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 996078, 682353, 19608, 0, 0, 0, 0, 50980, 768627, 996078, 933333, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 717647, 862745, 164706, 0, 0, 0, 0, 149020, 823529, 996078, 623529, 133333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 996078, 450980, 0, 0, 0, 223529, 921569, 996078, 917647, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 996078, 764706, 0, 0, 176471, 749020, 996078, 627451, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 878431, 898039, 43137, 427451, 949020, 996078, 823529, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 478431, 996078, 996078, 996078, 996078, 807843, 450980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 800000, 1000000, 803922, 321569, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_024() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 27451, 156863, 509804, 509804, 509804, 929412, 1000000, 796078, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 50980, 498039, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 792157, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419608, 992157, 992157, 968627, 894118, 894118, 741176, 411765, 670588, 992157, 992157, 949020, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 623529, 388235, 294118, 0, 0, 0, 211765, 937255, 992157, 992157, 498039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 439216, 992157, 992157, 933333, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639216, 992157, 992157, 992157, 498039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 196078, 196078, 196078, 839216, 992157, 992157, 819608, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 768627, 992157, 992157, 992157, 992157, 992157, 815686, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 317647, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 356863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 992157, 992157, 921569, 345098, 717647, 992157, 992157, 592157, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 560784, 580392, 156863, 0, 70588, 486275, 992157, 992157, 333333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345098, 992157, 992157, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 925490, 992157, 780392, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 368627, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345098, 992157, 992157, 580392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 780392, 925490, 768627, 0, 0, 0, 0, 0, 0, 0, 125490, 596078, 992157, 992157, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 992157, 992157, 980392, 901961, 901961, 662745, 901961, 541176, 101961, 0, 756863, 992157, 992157, 831373, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 588235, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 572549, 819608, 980392, 992157, 992157, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 333333, 811765, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 607843, 352941, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 19608, 105882, 600000, 992157, 992157, 992157, 850980, 352941, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_025() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 752941, 796078, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592157, 847059, 839216, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262745, 917647, 992157, 866667, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 870588, 988235, 992157, 866667, 98039, 0, 0, 0, 0, 0, 0, 0, 690196, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 847059, 992157, 992157, 886275, 149020, 0, 0, 0, 0, 0, 0, 360784, 992157, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 988235, 988235, 988235, 345098, 0, 0, 0, 0, 0, 0, 0, 356863, 988235, 556863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 988235, 988235, 643137, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 878431, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592157, 945098, 988235, 988235, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 749020, 1000000, 992157, 807843, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 482353, 988235, 992157, 941176, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 988235, 988235, 992157, 768627, 0, 0, 0, 0, 0, 298039, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 988235, 988235, 945098, 231373, 0, 200000, 447059, 541176, 882353, 976471, 980392, 784314, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 701961, 992157, 992157, 639216, 0, 90196, 898039, 996078, 992157, 992157, 992157, 996078, 992157, 847059, 749020, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 988235, 988235, 988235, 541176, 101961, 870588, 988235, 992157, 988235, 988235, 890196, 992157, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 988235, 988235, 988235, 921569, 627451, 941176, 988235, 992157, 666667, 219608, 121569, 415686, 584314, 988235, 643137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 501961, 988235, 988235, 992157, 988235, 988235, 988235, 698039, 35294, 0, 0, 247059, 564706, 988235, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 898039, 992157, 1000000, 992157, 992157, 992157, 996078, 698039, 552941, 749020, 996078, 992157, 956863, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 478431, 866667, 992157, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 992157, 988235, 556863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 494118, 992157, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 807843, 364706, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 647059, 792157, 988235, 992157, 988235, 839216, 545098, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_026() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 286275, 623529, 980392, 996078, 996078, 1000000, 666667, 235294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 396078, 741176, 992157, 992157, 992157, 992157, 992157, 996078, 992157, 945098, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 407843, 992157, 992157, 972549, 694118, 231373, 219608, 219608, 588235, 917647, 992157, 925490, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 407843, 901961, 627451, 184314, 0, 0, 0, 0, 0, 50980, 733333, 992157, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 407843, 992157, 709804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 584314, 992157, 411765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 992157, 780392, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 533333, 588235, 823529, 988235, 992157, 478431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 984314, 992157, 992157, 996078, 992157, 992157, 674510, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 992157, 992157, 996078, 992157, 992157, 992157, 709804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 725490, 423529, 98039, 98039, 372549, 760784, 996078, 996078, 784314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 764706, 992157, 984314, 501961, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 949020, 992157, 992157, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 992157, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 509804, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 890196, 992157, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 976471, 431373, 3922, 0, 0, 0, 0, 0, 0, 180392, 956863, 843137, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 992157, 992157, 494118, 50980, 0, 0, 0, 0, 333333, 862745, 992157, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 992157, 992157, 992157, 960784, 682353, 592157, 588235, 878431, 980392, 992157, 835294, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 474510, 956863, 992157, 992157, 992157, 996078, 992157, 992157, 956863, 603922, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 623529, 937255, 992157, 996078, 800000, 623529, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_027() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 584314, 1000000, 1000000, 286275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192157, 729412, 992157, 992157, 992157, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 949020, 992157, 992157, 992157, 992157, 827451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 317647, 960784, 992157, 992157, 992157, 992157, 992157, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 505882, 992157, 992157, 992157, 992157, 992157, 992157, 572549, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439216, 956863, 992157, 992157, 992157, 992157, 937255, 247059, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 956863, 992157, 992157, 992157, 992157, 925490, 211765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 827451, 992157, 992157, 992157, 992157, 776471, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 407843, 992157, 992157, 992157, 992157, 909804, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 992157, 992157, 992157, 992157, 992157, 82353, 0, 0, 19608, 215686, 215686, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 992157, 992157, 992157, 925490, 490196, 19608, 0, 133333, 776471, 992157, 992157, 882353, 403922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 992157, 992157, 992157, 764706, 0, 43137, 450980, 956863, 992157, 992157, 992157, 992157, 980392, 376471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 870588, 992157, 992157, 964706, 129412, 82353, 607843, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 858824, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 870588, 992157, 992157, 603922, 74510, 772549, 992157, 992157, 992157, 992157, 992157, 682353, 815686, 992157, 992157, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 870588, 992157, 992157, 776471, 619608, 992157, 992157, 992157, 992157, 901961, 364706, 94118, 580392, 992157, 992157, 427451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 580392, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 470588, 678431, 933333, 992157, 992157, 992157, 337255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 274510, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 717647, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 960784, 694118, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 611765, 964706, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 964706, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 494118, 992157, 992157, 992157, 992157, 992157, 992157, 647059, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_028() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 498039, 980392, 980392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 741176, 980392, 980392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 980392, 980392, 980392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 980392, 980392, 980392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 988235, 988235, 988235, 850980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 988235, 980392, 980392, 760784, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 988235, 980392, 733333, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 988235, 980392, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 988235, 980392, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 858824, 1000000, 988235, 494118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 768627, 980392, 933333, 650980, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 498039, 980392, 980392, 823529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 498039, 980392, 980392, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 278431, 901961, 980392, 980392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 905882, 823529, 133333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 439216, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 988235, 815686, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 988235, 980392, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 988235, 701961, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_029() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 490196, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 847059, 992157, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 843137, 984314, 992157, 992157, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 854902, 992157, 992157, 898039, 482353, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521569, 976471, 992157, 992157, 694118, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 976471, 992157, 882353, 227451, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 850980, 874510, 227451, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 796078, 980392, 874510, 443137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 603922, 992157, 992157, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 149020, 176471, 262745, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 976471, 882353, 262745, 23529, 0, 0, 0, 0, 0, 0, 294118, 768627, 882353, 882353, 905882, 976471, 882353, 752941, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 866667, 992157, 443137, 0, 0, 0, 0, 0, 0, 180392, 611765, 921569, 992157, 992157, 992157, 850980, 780392, 992157, 992157, 600000, 0, 0, 0, 0, 0, 0, 0, 0, 996078, 898039, 39216, 0, 0, 0, 0, 0, 203922, 929412, 992157, 992157, 850980, 709804, 278431, 105882, 23529, 305882, 898039, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 615686, 11765, 0, 0, 0, 0, 58824, 411765, 992157, 952941, 447059, 94118, 0, 0, 0, 0, 0, 447059, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 733333, 992157, 458824, 11765, 0, 0, 133333, 674510, 992157, 741176, 254902, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 870588, 992157, 992157, 662745, 443137, 576471, 941176, 992157, 745098, 82353, 0, 0, 0, 0, 0, 0, 78431, 419608, 831373, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 917647, 992157, 992157, 992157, 992157, 992157, 992157, 545098, 105882, 105882, 105882, 105882, 105882, 105882, 156863, 839216, 992157, 992157, 890196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 917647, 988235, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 988235, 627451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 607843, 960784, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 960784, 901961, 411765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 458824, 890196, 968627, 968627, 968627, 584314, 458824, 811765, 886275, 458824, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_030() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 149020, 149020, 584314, 1000000, 1000000, 588235, 572549, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 231373, 705882, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 882353, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 525490, 964706, 992157, 988235, 819608, 545098, 270588, 125490, 125490, 717647, 992157, 443137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 388235, 992157, 992157, 811765, 317647, 0, 0, 0, 0, 66667, 866667, 992157, 443137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 717647, 992157, 933333, 352941, 23529, 0, 0, 0, 0, 0, 109804, 992157, 862745, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 568627, 992157, 972549, 427451, 0, 0, 0, 0, 0, 0, 0, 101961, 658824, 133333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 992157, 933333, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 615686, 447059, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 772549, 992157, 674510, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 592157, 992157, 992157, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 870588, 992157, 286275, 0, 0, 0, 0, 0, 0, 0, 43137, 603922, 992157, 992157, 968627, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 870588, 992157, 345098, 0, 0, 0, 0, 0, 0, 109804, 729412, 992157, 992157, 992157, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 992157, 925490, 407843, 141176, 0, 156863, 78431, 364706, 866667, 992157, 992157, 992157, 992157, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 568627, 972549, 992157, 956863, 933333, 960784, 945098, 992157, 949020, 627451, 898039, 992157, 972549, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388235, 760784, 905882, 992157, 980392, 670588, 337255, 164706, 156863, 929412, 992157, 639216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 188235, 176471, 0, 0, 0, 576471, 992157, 905882, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 992157, 886275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 745098, 992157, 886275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 992157, 992157, 713726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 992157, 992157, 756863, 411765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509804, 992157, 992157, 964706, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 850980, 992157, 705882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_031() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 482353, 839216, 200000, 200000, 200000, 200000, 200000, 200000, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639216, 952941, 992157, 988235, 992157, 988235, 992157, 988235, 992157, 909804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 678431, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 988235, 992157, 988235, 992157, 988235, 992157, 670588, 592157, 752941, 992157, 988235, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 992157, 996078, 992157, 717647, 400000, 0, 0, 0, 482353, 996078, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 992157, 988235, 913725, 435294, 0, 0, 0, 0, 82353, 874510, 992157, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 996078, 674510, 160784, 0, 0, 0, 0, 0, 596078, 992157, 996078, 513726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 39216, 0, 0, 0, 0, 0, 0, 756863, 988235, 835294, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 996078, 992157, 717647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 796078, 992157, 988235, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 992157, 996078, 752941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 913725, 988235, 992157, 435294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 996078, 992157, 796078, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 796078, 992157, 988235, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 992157, 996078, 913725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756863, 988235, 992157, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 1000000, 992157, 956863, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400000, 992157, 988235, 635294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403922, 1000000, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400000, 992157, 509804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_032() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 454902, 941176, 698039, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 392157, 992157, 992157, 996078, 301961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 992157, 992157, 823529, 360784, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 937255, 992157, 992157, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780392, 992157, 992157, 831373, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 325490, 949020, 992157, 858824, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 666667, 992157, 952941, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 992157, 992157, 513726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 992157, 992157, 513726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 992157, 992157, 513726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 996078, 996078, 517647, 0, 0, 0, 188235, 678431, 996078, 996078, 901961, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 992157, 992157, 513726, 47059, 262745, 639216, 996078, 992157, 992157, 992157, 992157, 647059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 992157, 992157, 913725, 854902, 992157, 992157, 996078, 890196, 603922, 976471, 992157, 933333, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 662745, 992157, 992157, 992157, 992157, 917647, 231373, 31373, 0, 305882, 964706, 992157, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556863, 992157, 992157, 992157, 509804, 47059, 0, 0, 0, 19608, 725490, 917647, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 827451, 992157, 992157, 701961, 47059, 0, 0, 0, 392157, 992157, 647059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556863, 988235, 992157, 992157, 733333, 482353, 478431, 647059, 992157, 992157, 627451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 647059, 992157, 992157, 992157, 1000000, 992157, 992157, 992157, 596078, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 333333, 784314, 992157, 996078, 992157, 874510, 274510, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 694118, 752941, 560784, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_033() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 203922, 945098, 831373, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 921569, 992157, 992157, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 619608, 988235, 992157, 992157, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 674510, 996078, 992157, 992157, 992157, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 576471, 992157, 996078, 992157, 992157, 992157, 800000, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 498039, 992157, 992157, 996078, 901961, 858824, 992157, 992157, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192157, 878431, 992157, 992157, 996078, 211765, 368627, 992157, 992157, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 992157, 992157, 992157, 949020, 43137, 368627, 992157, 992157, 780392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 698039, 992157, 992157, 992157, 223529, 0, 156863, 905882, 992157, 780392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490196, 992157, 992157, 992157, 713726, 0, 0, 0, 839216, 992157, 780392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 266667, 996078, 996078, 949020, 501961, 0, 0, 0, 176471, 917647, 996078, 788235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 266667, 992157, 992157, 886275, 0, 0, 0, 0, 368627, 992157, 992157, 780392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 733333, 992157, 933333, 282353, 0, 0, 0, 0, 839216, 992157, 992157, 588235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 270588, 960784, 992157, 666667, 0, 0, 0, 0, 800000, 976471, 992157, 768627, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 317647, 992157, 992157, 313726, 0, 0, 141176, 792157, 984314, 992157, 992157, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 317647, 992157, 992157, 313726, 23529, 239216, 870588, 996078, 992157, 992157, 647059, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 317647, 992157, 992157, 780392, 713726, 992157, 992157, 1000000, 992157, 741176, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 972549, 992157, 992157, 992157, 992157, 992157, 1000000, 396078, 231373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 980392, 992157, 992157, 992157, 964706, 694118, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 827451, 937255, 470588, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_034() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 443137, 443137, 447059, 47059, 101961, 443137, 443137, 447059, 443137, 443137, 443137, 443137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 713726, 988235, 988235, 992157, 894118, 905882, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 941176, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 862745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 894118, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 741176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 615686, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 690196, 992157, 992157, 635294, 0, 690196, 992157, 992157, 992157, 992157, 1000000, 843137, 549020, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 988235, 988235, 854902, 333333, 992157, 988235, 988235, 988235, 988235, 658824, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 470588, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 988235, 988235, 988235, 988235, 992157, 701961, 329412, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 796078, 992157, 988235, 988235, 988235, 988235, 745098, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 992157, 992157, 1000000, 992157, 992157, 882353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 843137, 988235, 988235, 992157, 988235, 988235, 388235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 784314, 988235, 988235, 988235, 992157, 988235, 937255, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 623529, 988235, 988235, 988235, 988235, 992157, 988235, 764706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 988235, 988235, 678431, 988235, 992157, 988235, 764706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 992157, 992157, 682353, 992157, 1000000, 992157, 768627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 988235, 988235, 988235, 988235, 992157, 988235, 705882, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 870588, 988235, 988235, 988235, 988235, 992157, 788235, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 396078, 913725, 988235, 988235, 988235, 635294, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 439216, 439216, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_035() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 474510, 835294, 1000000, 1000000, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 862745, 984314, 992157, 992157, 992157, 992157, 745098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 588235, 984314, 992157, 992157, 992157, 992157, 796078, 972549, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 592157, 917647, 992157, 992157, 992157, 741176, 564706, 152941, 74510, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 992157, 996078, 992157, 701961, 207843, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 211765, 541176, 749020, 992157, 996078, 407843, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 705882, 992157, 992157, 992157, 992157, 996078, 211765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 521569, 898039, 992157, 980392, 858824, 364706, 368627, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 619608, 992157, 992157, 992157, 894118, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 839216, 992157, 992157, 992157, 992157, 968627, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 901961, 996078, 996078, 996078, 996078, 996078, 752941, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 439216, 572549, 615686, 992157, 992157, 996078, 972549, 945098, 368627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 101961, 101961, 996078, 992157, 992157, 960784, 380392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 431373, 909804, 992157, 560784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 894118, 992157, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 435294, 968627, 992157, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 160784, 19608, 0, 0, 0, 109804, 160784, 188235, 682353, 1000000, 992157, 992157, 827451, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 941176, 992157, 666667, 631373, 631373, 631373, 878431, 992157, 992157, 992157, 1000000, 992157, 796078, 380392, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725490, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 1000000, 749020, 419608, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 470588, 913725, 992157, 992157, 992157, 992157, 992157, 713726, 474510, 270588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_036() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 835294, 1000000, 996078, 996078, 996078, 996078, 937255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 643137, 784314, 854902, 992157, 992157, 992157, 992157, 901961, 811765, 396078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 980392, 992157, 992157, 992157, 992157, 694118, 419608, 419608, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 980392, 992157, 992157, 992157, 992157, 874510, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 274510, 992157, 937255, 956863, 992157, 992157, 411765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 450980, 486275, 886275, 992157, 992157, 266667, 0, 168627, 545098, 545098, 545098, 545098, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 564706, 992157, 992157, 992157, 952941, 937255, 952941, 992157, 992157, 992157, 992157, 968627, 937255, 549020, 192157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 423529, 984314, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 878431, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 572549, 992157, 992157, 992157, 992157, 992157, 725490, 482353, 482353, 482353, 482353, 509804, 992157, 992157, 992157, 992157, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403922, 984314, 992157, 827451, 690196, 615686, 43137, 0, 0, 0, 0, 7843, 86275, 674510, 992157, 992157, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290196, 298039, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 741176, 992157, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 807843, 992157, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 815686, 992157, 992157, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 490196, 992157, 992157, 964706, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 341176, 992157, 992157, 976471, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 243137, 776471, 945098, 992157, 933333, 360784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 603922, 635294, 176471, 31373, 3922, 98039, 635294, 635294, 666667, 992157, 992157, 992157, 976471, 360784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 968627, 992157, 992157, 458824, 839216, 992157, 992157, 992157, 992157, 992157, 705882, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474510, 992157, 992157, 992157, 992157, 992157, 925490, 780392, 780392, 247059, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 388235, 717647, 992157, 917647, 388235, 270588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_037() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 705882, 1000000, 898039, 756863, 588235, 435294, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 827451, 992157, 992157, 992157, 992157, 992157, 992157, 866667, 631373, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 270588, 980392, 552941, 39216, 39216, 47059, 447059, 768627, 933333, 992157, 741176, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 709804, 0, 0, 0, 0, 0, 219608, 780392, 992157, 913725, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 58824, 0, 0, 0, 0, 0, 0, 27451, 898039, 992157, 721569, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 913725, 992157, 443137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 686275, 992157, 729412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 729412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 729412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 729412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 466667, 992157, 729412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 713726, 992157, 729412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 552941, 752941, 752941, 650980, 349020, 137255, 0, 0, 0, 0, 713726, 992157, 588235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 847059, 992157, 992157, 992157, 992157, 992157, 960784, 454902, 3922, 0, 168627, 976471, 984314, 286275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 968627, 992157, 835294, 572549, 282353, 282353, 752941, 992157, 992157, 650980, 74510, 819608, 992157, 788235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403922, 992157, 835294, 82353, 0, 0, 0, 43137, 349020, 862745, 992157, 921569, 988235, 992157, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 772549, 992157, 501961, 0, 0, 0, 0, 0, 54902, 713726, 992157, 992157, 992157, 992157, 317647, 0, 121569, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756863, 992157, 949020, 482353, 450980, 450980, 450980, 458824, 882353, 992157, 988235, 952941, 992157, 992157, 984314, 745098, 862745, 713726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 752941, 843137, 992157, 992157, 992157, 992157, 992157, 992157, 654902, 305882, 0, 396078, 839216, 992157, 992157, 992157, 768627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 552941, 584314, 584314, 584314, 576471, 180392, 39216, 0, 0, 0, 58824, 380392, 862745, 992157, 603922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 2);
}
#[test]
fn test_main_038() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 521569, 1000000, 996078, 996078, 764706, 898039, 611765, 466667, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 968627, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 850980, 270588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 725490, 984314, 992157, 901961, 168627, 39216, 39216, 105882, 447059, 847059, 992157, 992157, 874510, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 329412, 992157, 992157, 682353, 90196, 0, 0, 0, 0, 0, 35294, 262745, 921569, 992157, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 835294, 992157, 521569, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 274510, 486275, 270588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 992157, 921569, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741176, 992157, 533333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 956863, 992157, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 450980, 898039, 603922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 992157, 486275, 0, 0, 0, 0, 7843, 23529, 490196, 835294, 984314, 992157, 980392, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 992157, 588235, 149020, 0, 0, 172549, 533333, 992157, 992157, 992157, 992157, 992157, 976471, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 886275, 992157, 937255, 792157, 792157, 960784, 992157, 992157, 992157, 992157, 992157, 992157, 752941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 952941, 992157, 992157, 992157, 992157, 992157, 992157, 929412, 596078, 282353, 937255, 992157, 505882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 615686, 647059, 647059, 647059, 647059, 564706, 149020, 0, 0, 937255, 992157, 364706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 945098, 956863, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474510, 992157, 686275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 968627, 992157, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 992157, 992157, 556863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 992157, 992157, 952941, 419608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 992157, 992157, 800000, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 992157, 992157, 356863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_039() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 992157, 992157, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 450980, 988235, 988235, 564706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 850980, 988235, 988235, 564706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247059, 929412, 988235, 988235, 564706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 1000000, 992157, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 929412, 992157, 988235, 988235, 823529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 988235, 992157, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 988235, 992157, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 811765, 1000000, 992157, 992157, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 564706, 992157, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 866667, 992157, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 745098, 992157, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 1000000, 992157, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 564706, 992157, 988235, 988235, 823529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 564706, 992157, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 992157, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_040() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 250980, 749020, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 250980, 749020, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 0, 0, 0, 250980, 749020, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 1000000, 1000000, 1000000, 0, 0, 250980, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 749020, 0, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 749020, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 749020, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_041() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725490, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 772549, 396078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 992157, 364706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 992157, 231373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 894118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290196, 435294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 650980, 501961, 0, 0, 0, 0, 749020, 270588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 764706, 450980, 0, 0, 0, 266667, 878431, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 466667, 823529, 35294, 0, 0, 0, 776471, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 968627, 462745, 0, 0, 0, 149020, 952941, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 501961, 694118, 0, 0, 0, 0, 733333, 909804, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 741176, 992157, 760784, 364706, 98039, 364706, 498039, 996078, 874510, 658824, 721569, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 866667, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 1000000, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 917647, 996078, 992157, 992157, 992157, 996078, 992157, 992157, 992157, 996078, 992157, 992157, 992157, 996078, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 541176, 670588, 537255, 670588, 541176, 752941, 992157, 992157, 541176, 537255, 537255, 537255, 443137, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 992157, 858824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509804, 968627, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 901961, 701961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 862745, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 274510, 807843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 4);
}
#[test]
fn test_main_042() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 772549, 992157, 529412, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439216, 980392, 956863, 611765, 607843, 156863, 0, 572549, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 972549, 709804, 101961, 0, 0, 0, 98039, 949020, 482353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 968627, 650980, 15686, 0, 0, 0, 0, 133333, 996078, 482353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 803922, 729412, 113725, 0, 0, 0, 0, 0, 545098, 996078, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 996078, 282353, 0, 0, 0, 0, 0, 250980, 960784, 913725, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 827451, 19608, 0, 0, 0, 0, 15686, 760784, 996078, 764706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 670588, 803922, 0, 0, 0, 0, 11765, 619608, 996078, 996078, 431373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 984314, 317647, 0, 0, 192157, 733333, 980392, 321569, 996078, 192157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 792157, 980392, 968627, 968627, 988235, 886275, 215686, 411765, 996078, 192157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 501961, 647059, 647059, 439216, 0, 0, 639216, 913725, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741176, 866667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 768627, 835294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 996078, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 996078, 286275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 996078, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 709804, 1000000, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 996078, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 392157, 996078, 741176, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 913725, 600000, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_043() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 749020, 501961, 0, 501961, 501961, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 749020, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 501961, 501961, 749020, 501961, 1000000, 1000000, 749020, 250980, 0, 0, 0, 501961, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 501961, 0, 0, 250980, 749020, 501961, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 749020, 501961, 1000000, 1000000, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 749020, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 749020, 501961, 501961, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_044() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 788235, 952941, 454902, 27451, 27451, 27451, 19608, 19608, 27451, 27451, 27451, 27451, 27451, 219608, 513726, 301961, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 996078, 996078, 996078, 996078, 996078, 996078, 898039, 874510, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 976471, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 960784, 933333, 952941, 960784, 972549, 996078, 996078, 996078, 941176, 925490, 925490, 949020, 996078, 996078, 1000000, 286275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 203922, 43137, 160784, 203922, 274510, 411765, 411765, 411765, 101961, 0, 31373, 647059, 996078, 960784, 694118, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 996078, 996078, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 807843, 996078, 690196, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 839216, 996078, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 996078, 929412, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780392, 996078, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 941176, 996078, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756863, 996078, 756863, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 945098, 996078, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247059, 996078, 996078, 192157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 650980, 996078, 584314, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 831373, 996078, 396078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 415686, 996078, 996078, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 709804, 996078, 996078, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 709804, 996078, 996078, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 984314, 996078, 870588, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 713726, 996078, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_045() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 831373, 913725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 784314, 847059, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 992157, 717647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458824, 984314, 964706, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 19608, 0, 0, 0, 0, 0, 0, 184314, 901961, 996078, 525490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 933333, 54902, 0, 0, 0, 0, 0, 35294, 854902, 992157, 823529, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 968627, 752941, 15686, 0, 0, 0, 0, 23529, 666667, 996078, 992157, 337255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 678431, 976471, 929412, 145098, 0, 0, 0, 0, 0, 337255, 992157, 996078, 486275, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 686275, 996078, 992157, 721569, 0, 0, 0, 0, 0, 184314, 956863, 992157, 917647, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439216, 917647, 992157, 992157, 992157, 945098, 584314, 584314, 584314, 435294, 584314, 835294, 992157, 992157, 588235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 996078, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 611765, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 607843, 952941, 843137, 760784, 494118, 368627, 368627, 368627, 372549, 584314, 992157, 996078, 862745, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 54902, 0, 0, 0, 0, 0, 0, 607843, 992157, 886275, 301961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509804, 988235, 992157, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 968627, 996078, 592157, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823529, 992157, 733333, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 552941, 988235, 941176, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 992157, 992157, 333333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345098, 996078, 549020, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 474510, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 4);
}
#[test]
fn test_main_046() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 286275, 184314, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 517647, 921569, 925490, 921569, 615686, 878431, 992157, 968627, 976471, 745098, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 972549, 992157, 992157, 996078, 992157, 992157, 980392, 847059, 850980, 847059, 847059, 839216, 580392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 992157, 984314, 921569, 694118, 564706, 388235, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823529, 992157, 662745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 996078, 996078, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 992157, 654902, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639216, 992157, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639216, 992157, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388235, 992157, 949020, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 949020, 996078, 560784, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 909804, 992157, 815686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 960784, 992157, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 603922, 992157, 756863, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 788235, 996078, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 1000000, 996078, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 545098, 921569, 921569, 921569, 921569, 925490, 921569, 921569, 921569, 972549, 996078, 992157, 266667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639216, 890196, 992157, 992157, 992157, 996078, 992157, 992157, 992157, 992157, 996078, 960784, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 62745, 211765, 494118, 564706, 921569, 921569, 921569, 921569, 921569, 921569, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_047() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 396078, 596078, 996078, 1000000, 996078, 996078, 996078, 996078, 592157, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400000, 815686, 992157, 992157, 992157, 898039, 811765, 811765, 811765, 858824, 992157, 898039, 227451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 968627, 992157, 992157, 992157, 572549, 203922, 0, 0, 0, 274510, 992157, 992157, 890196, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 976471, 992157, 792157, 58824, 7843, 0, 0, 0, 0, 274510, 992157, 992157, 992157, 360784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 972549, 992157, 450980, 0, 0, 0, 0, 0, 0, 733333, 992157, 992157, 713726, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 992157, 450980, 0, 0, 0, 0, 0, 266667, 941176, 992157, 741176, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 513726, 301961, 0, 0, 0, 0, 86275, 964706, 992157, 992157, 537255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 992157, 992157, 949020, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 992157, 992157, 615686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 831373, 964706, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 913725, 992157, 992157, 745098, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 513726, 992157, 992157, 756863, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 937255, 992157, 968627, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 525490, 992157, 992157, 901961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725490, 992157, 992157, 623529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 952941, 992157, 733333, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352941, 972549, 992157, 992157, 333333, 31373, 31373, 31373, 31373, 31373, 15686, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 545098, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 643137, 976471, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 949020, 992157, 992157, 992157, 992157, 890196, 611765, 592157, 992157, 992157, 984314, 450980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 827451, 992157, 992157, 568627, 200000, 0, 27451, 388235, 533333, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 2);
}
#[test]
fn test_main_048() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 313726, 462745, 462745, 462745, 647059, 1000000, 894118, 462745, 462745, 462745, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 831373, 917647, 968627, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 921569, 917647, 494118, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 992157, 992157, 992157, 992157, 992157, 862745, 694118, 694118, 694118, 694118, 866667, 992157, 992157, 992157, 992157, 882353, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 690196, 776471, 776471, 776471, 776471, 149020, 0, 0, 0, 0, 137255, 239216, 458824, 847059, 992157, 992157, 376471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 705882, 992157, 992157, 376471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725490, 992157, 992157, 866667, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 968627, 992157, 992157, 294118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 980392, 992157, 992157, 521569, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290196, 949020, 992157, 992157, 509804, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 929412, 992157, 992157, 223529, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 584314, 992157, 992157, 635294, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 525490, 901961, 992157, 917647, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 913725, 992157, 988235, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 941176, 992157, 901961, 454902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 992157, 992157, 803922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 992157, 992157, 337255, 0, 188235, 588235, 862745, 290196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 862745, 992157, 647059, 235294, 592157, 901961, 992157, 760784, 505882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 850980, 992157, 992157, 752941, 913725, 992157, 886275, 294118, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 952941, 992157, 992157, 992157, 976471, 909804, 396078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 686275, 992157, 847059, 368627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_049() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 533333, 533333, 925490, 1000000, 760784, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 403922, 850980, 992157, 992157, 992157, 992157, 992157, 933333, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 619608, 980392, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 780392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 745098, 992157, 988235, 458824, 254902, 552941, 992157, 992157, 737255, 262745, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 929412, 847059, 200000, 0, 58824, 800000, 992157, 525490, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 66667, 0, 0, 360784, 992157, 866667, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 992157, 839216, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 992157, 992157, 654902, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 729412, 992157, 992157, 831373, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 725490, 992157, 992157, 839216, 427451, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 403922, 964706, 992157, 992157, 756863, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 803922, 992157, 992157, 878431, 172549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 615686, 992157, 992157, 411765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 600000, 992157, 992157, 431373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 588235, 992157, 992157, 964706, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 360784, 650980, 988235, 992157, 956863, 384314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 258824, 364706, 803922, 992157, 992157, 992157, 788235, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 329412, 329412, 329412, 329412, 337255, 807843, 992157, 992157, 992157, 992157, 847059, 215686, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 490196, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 529412, 874510, 992157, 796078, 529412, 529412, 239216, 66667, 66667, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_050() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 745098, 984314, 937255, 917647, 623529, 878431, 505882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 933333, 678431, 188235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 894118, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294118, 941176, 15686, 0, 0, 0, 0, 0, 0, 78431, 701961, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 313726, 937255, 0, 0, 0, 0, 0, 0, 11765, 686275, 996078, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 313726, 937255, 0, 0, 0, 0, 0, 0, 462745, 925490, 988235, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 937255, 0, 0, 0, 0, 0, 258824, 866667, 121569, 937255, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 913725, 474510, 0, 0, 0, 211765, 850980, 458824, 0, 937255, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 949020, 470588, 313726, 603922, 941176, 313726, 11765, 78431, 952941, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 564706, 623529, 525490, 98039, 0, 0, 270588, 996078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560784, 760784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560784, 682353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560784, 603922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 874510, 376471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 890196, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 933333, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 874510, 525490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 682353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_051() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 501961, 992157, 1000000, 992157, 992157, 623529, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 333333, 188235, 113725, 843137, 988235, 988235, 992157, 988235, 988235, 988235, 929412, 494118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419608, 988235, 898039, 843137, 988235, 988235, 988235, 992157, 729412, 647059, 913725, 988235, 898039, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 874510, 929412, 988235, 988235, 988235, 988235, 941176, 278431, 0, 294118, 988235, 992157, 478431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 619608, 988235, 988235, 988235, 247059, 0, 0, 113725, 988235, 992157, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 992157, 1000000, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 988235, 992157, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 988235, 992157, 227451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 698039, 988235, 941176, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 988235, 988235, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 776471, 992157, 992157, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 482353, 964706, 988235, 800000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 223529, 223529, 74510, 0, 349020, 964706, 988235, 901961, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 172549, 662745, 811765, 988235, 988235, 768627, 662745, 811765, 988235, 960784, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 462745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 776471, 992157, 992157, 552941, 549020, 898039, 992157, 992157, 1000000, 992157, 870588, 396078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 772549, 988235, 988235, 333333, 823529, 964706, 988235, 988235, 992157, 988235, 988235, 976471, 882353, 188235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 772549, 988235, 988235, 992157, 988235, 988235, 776471, 215686, 219608, 215686, 694118, 988235, 988235, 898039, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 709804, 988235, 988235, 992157, 886275, 447059, 109804, 0, 0, 0, 74510, 388235, 937255, 992157, 878431, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 501961, 678431, 439216, 47059, 0, 0, 0, 0, 0, 0, 0, 247059, 682353, 988235, 764706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 2);
}
#[test]
fn test_main_052() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247059, 431373, 913725, 992157, 992157, 1000000, 992157, 521569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 690196, 929412, 992157, 988235, 988235, 988235, 992157, 988235, 968627, 850980, 286275, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 988235, 988235, 992157, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 992157, 584314, 549020, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 988235, 988235, 992157, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 992157, 988235, 905882, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 525490, 988235, 988235, 992157, 988235, 988235, 988235, 992157, 862745, 803922, 803922, 992157, 988235, 278431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 525490, 968627, 988235, 988235, 992157, 905882, 619608, 137255, 137255, 98039, 78431, 78431, 992157, 988235, 278431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 988235, 988235, 988235, 988235, 992157, 619608, 0, 0, 0, 0, 0, 0, 992157, 988235, 278431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 329412, 988235, 988235, 988235, 988235, 992157, 137255, 0, 0, 0, 0, 0, 0, 992157, 988235, 603922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 713726, 992157, 992157, 992157, 992157, 423529, 0, 0, 0, 0, 0, 0, 0, 568627, 1000000, 992157, 282353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247059, 949020, 988235, 988235, 988235, 988235, 423529, 0, 0, 0, 0, 0, 0, 611765, 929412, 992157, 905882, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 709804, 988235, 988235, 988235, 988235, 803922, 121569, 0, 0, 0, 0, 62745, 431373, 709804, 988235, 929412, 600000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 988235, 988235, 988235, 988235, 823529, 121569, 0, 0, 0, 0, 0, 427451, 866667, 866667, 988235, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 431373, 992157, 992157, 992157, 992157, 137255, 0, 0, 0, 0, 388235, 992157, 1000000, 992157, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 913725, 988235, 988235, 988235, 988235, 466667, 0, 164706, 286275, 772549, 949020, 988235, 992157, 988235, 945098, 380392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 988235, 741176, 101961, 145098, 627451, 992157, 988235, 988235, 988235, 992157, 945098, 721569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 988235, 988235, 745098, 988235, 988235, 992157, 988235, 988235, 988235, 992157, 701961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 1000000, 992157, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 827451, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 992157, 905882, 619608, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 886275, 988235, 988235, 988235, 988235, 988235, 580392, 282353, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 501961, 988235, 988235, 823529, 423529, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_053() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 996078, 537255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 972549, 996078, 972549, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 972549, 800000, 219608, 427451, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 874510, 894118, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 596078, 854902, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 996078, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 898039, 733333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 576471, 968627, 211765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 909804, 564706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 607843, 996078, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 890196, 541176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 580392, 996078, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458824, 858824, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 866667, 662745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 996078, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 980392, 294118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 811765, 419608, 0, 0, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 854902, 984314, 960784, 960784, 972549, 866667, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 945098, 960784, 996078, 996078, 996078, 1000000, 862745, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352941, 211765, 305882, 705882, 996078, 996078, 1000000, 607843, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_054() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388235, 509804, 992157, 1000000, 854902, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 545098, 976471, 988235, 988235, 992157, 988235, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 513726, 988235, 988235, 988235, 988235, 992157, 988235, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294118, 988235, 988235, 988235, 988235, 988235, 992157, 988235, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 843137, 988235, 988235, 988235, 658824, 113725, 113725, 113725, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 988235, 988235, 988235, 945098, 203922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 988235, 988235, 988235, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 945098, 988235, 988235, 54902, 0, 0, 0, 86275, 145098, 352941, 352941, 215686, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 874510, 988235, 988235, 768627, 756863, 756863, 760784, 811765, 850980, 988235, 811765, 145098, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 988235, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 290196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 925490, 992157, 992157, 992157, 992157, 992157, 1000000, 992157, 349020, 278431, 411765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 988235, 988235, 988235, 988235, 988235, 988235, 992157, 792157, 266667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 988235, 988235, 988235, 929412, 972549, 988235, 992157, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 713726, 988235, 988235, 988235, 54902, 486275, 988235, 992157, 752941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 988235, 988235, 988235, 988235, 54902, 23529, 627451, 992157, 478431, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 988235, 988235, 988235, 988235, 505882, 98039, 584314, 992157, 988235, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 709804, 988235, 988235, 988235, 988235, 905882, 796078, 992157, 988235, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 945098, 988235, 988235, 988235, 988235, 988235, 992157, 988235, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 203922, 643137, 905882, 988235, 988235, 988235, 992157, 807843, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 956863, 882353, 403922, 992157, 411765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_055() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 133333, 545098, 847059, 462745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 231373, 321569, 772549, 992157, 992157, 992157, 647059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207843, 823529, 823529, 972549, 996078, 992157, 992157, 992157, 737255, 396078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 894118, 992157, 992157, 956863, 909804, 792157, 474510, 247059, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 325490, 964706, 956863, 458824, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780392, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780392, 992157, 407843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 819608, 949020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 992157, 949020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 992157, 988235, 866667, 866667, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 968627, 996078, 976471, 964706, 996078, 756863, 454902, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388235, 337255, 250980, 223529, 792157, 1000000, 992157, 745098, 278431, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 227451, 874510, 992157, 992157, 513726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 39216, 956863, 984314, 435294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 952941, 992157, 647059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 984314, 992157, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 870588, 992157, 890196, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 607843, 419608, 176471, 576471, 992157, 992157, 509804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 992157, 992157, 996078, 992157, 992157, 796078, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 450980, 749020, 996078, 992157, 466667, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_056() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823529, 996078, 996078, 996078, 996078, 905882, 490196, 490196, 188235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 819608, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 980392, 631373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 556863, 556863, 556863, 556863, 858824, 992157, 992157, 992157, 988235, 635294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 74510, 192157, 992157, 992157, 941176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 992157, 992157, 941176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 576471, 992157, 992157, 941176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 266667, 337255, 333333, 333333, 337255, 674510, 941176, 992157, 992157, 505882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 854902, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 505882, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 835294, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 635294, 933333, 992157, 992157, 815686, 776471, 992157, 992157, 992157, 823529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 254902, 254902, 78431, 39216, 349020, 992157, 992157, 941176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 913725, 992157, 980392, 435294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 992157, 992157, 968627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 156863, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 721569, 992157, 968627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 666667, 992157, 839216, 639216, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 639216, 992157, 984314, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 878431, 933333, 992157, 847059, 611765, 180392, 74510, 0, 0, 0, 0, 0, 0, 0, 156863, 992157, 992157, 976471, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 909804, 992157, 992157, 992157, 866667, 588235, 588235, 207843, 78431, 66667, 0, 117647, 839216, 992157, 992157, 929412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 890196, 960784, 992157, 992157, 992157, 992157, 992157, 992157, 913725, 560784, 839216, 992157, 992157, 964706, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 627451, 968627, 968627, 968627, 988235, 992157, 992157, 992157, 992157, 992157, 976471, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 584314, 992157, 992157, 992157, 941176, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_057() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 839216, 729412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352941, 980392, 725490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 870588, 988235, 725490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419608, 988235, 988235, 286275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556863, 988235, 737255, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 949020, 988235, 560784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 827451, 988235, 988235, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 949020, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 992157, 988235, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 768627, 992157, 988235, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 576471, 992157, 1000000, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 572549, 988235, 992157, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 945098, 988235, 380392, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 658824, 988235, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 988235, 945098, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 678431, 988235, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 678431, 988235, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 874510, 988235, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 513726, 988235, 980392, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458824, 988235, 882353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_058() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 537255, 235294, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 576471, 996078, 996078, 713726, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 211765, 152941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 980392, 996078, 996078, 996078, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 780392, 996078, 796078, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 980392, 996078, 996078, 996078, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 996078, 996078, 996078, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 980392, 996078, 996078, 996078, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 996078, 996078, 996078, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 980392, 996078, 996078, 996078, 670588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 537255, 996078, 996078, 286275, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 980392, 996078, 996078, 996078, 227451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 752941, 996078, 996078, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 980392, 996078, 996078, 996078, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 537255, 996078, 996078, 592157, 164706, 164706, 86275, 94118, 62745, 0, 0, 0, 0, 686275, 996078, 996078, 996078, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 996078, 996078, 996078, 996078, 996078, 850980, 866667, 807843, 698039, 341176, 235294, 658824, 635294, 1000000, 996078, 996078, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 670588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 278431, 996078, 996078, 996078, 839216, 807843, 996078, 996078, 1000000, 996078, 1000000, 996078, 996078, 996078, 996078, 996078, 282353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 90196, 90196, 254902, 105882, 54902, 294118, 168627, 443137, 792157, 996078, 996078, 996078, 996078, 996078, 996078, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 11765, 19608, 19608, 286275, 996078, 996078, 996078, 678431, 27451, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 1000000, 996078, 996078, 996078, 803922, 607843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 490196, 996078, 996078, 996078, 996078, 996078, 909804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 19608, 698039, 996078, 996078, 996078, 996078, 870588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 396078, 733333, 996078, 996078, 996078, 996078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 701961, 996078, 996078, 996078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 66667, 66667, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 4);
}
#[test]
fn test_main_059() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 654902, 717647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 741176, 956863, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556863, 996078, 996078, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 984314, 996078, 996078, 431373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 423529, 996078, 588235, 850980, 898039, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 886275, 721569, 19608, 580392, 996078, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 996078, 701961, 0, 180392, 996078, 380392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 796078, 980392, 305882, 0, 39216, 972549, 678431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 549020, 996078, 701961, 0, 0, 0, 760784, 925490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 811765, 996078, 219608, 0, 0, 0, 760784, 937255, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 1000000, 996078, 290196, 0, 0, 356863, 964706, 1000000, 650980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 988235, 800000, 3922, 0, 0, 11765, 411765, 996078, 333333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 494118, 1000000, 639216, 0, 0, 0, 0, 290196, 1000000, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 576471, 996078, 396078, 0, 0, 0, 0, 694118, 945098, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 980392, 956863, 109804, 0, 0, 0, 160784, 980392, 807843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 984314, 996078, 376471, 0, 0, 0, 0, 670588, 996078, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 584314, 996078, 478431, 3922, 0, 0, 0, 458824, 992157, 513726, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 956863, 996078, 196078, 0, 0, 39216, 580392, 949020, 741176, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 968627, 996078, 976471, 894118, 972549, 976471, 960784, 615686, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 819608, 996078, 996078, 921569, 674510, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_060() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 678431, 992157, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 874510, 674510, 513726, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 996078, 674510, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 952941, 674510, 39216, 0, 0, 0, 0, 0, 321569, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 600000, 992157, 0, 0, 0, 0, 0, 0, 839216, 992157, 878431, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 988235, 160784, 0, 0, 0, 82353, 717647, 992157, 988235, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 796078, 996078, 674510, 839216, 674510, 517647, 992157, 796078, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 674510, 831373, 592157, 274510, 513726, 988235, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 678431, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 992157, 670588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 482353, 878431, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 874510, 796078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 992157, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 839216, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756863, 835294, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 988235, 556863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 874510, 1000000, 674510, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 835294, 988235, 713726, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_061() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 913725, 1000000, 631373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 952941, 992157, 764706, 211765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 952941, 992157, 992157, 560784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 952941, 992157, 992157, 560784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 952941, 992157, 952941, 443137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 631373, 992157, 992157, 682353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 992157, 992157, 992157, 627451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560784, 992157, 992157, 705882, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 909804, 992157, 992157, 266667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 905882, 992157, 992157, 470588, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 631373, 992157, 992157, 992157, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 992157, 992157, 992157, 682353, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 952941, 992157, 992157, 992157, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 717647, 992157, 992157, 992157, 674510, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 956863, 992157, 992157, 913725, 203922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 333333, 972549, 992157, 964706, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 941176, 992157, 968627, 615686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 992157, 992157, 945098, 172549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 415686, 992157, 992157, 760784, 172549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 941176, 764706, 235294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_062() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 631373, 843137, 0, 0, 0, 0, 0, 0, 23529, 219608, 427451, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 996078, 847059, 43137, 427451, 435294, 678431, 823529, 823529, 843137, 996078, 996078, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294118, 964706, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 956863, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 611765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294118, 956863, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 862745, 701961, 964706, 996078, 996078, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 647059, 996078, 996078, 996078, 996078, 980392, 878431, 498039, 482353, 98039, 54902, 35294, 898039, 996078, 929412, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 901961, 996078, 996078, 827451, 533333, 231373, 0, 0, 0, 0, 0, 407843, 996078, 996078, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 549020, 529412, 568627, 66667, 0, 0, 0, 0, 0, 0, 274510, 980392, 996078, 996078, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 811765, 996078, 996078, 756863, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 623529, 996078, 996078, 941176, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 925490, 996078, 992157, 419608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 850980, 996078, 996078, 721569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 207843, 988235, 996078, 996078, 792157, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 266667, 996078, 996078, 996078, 996078, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 925490, 996078, 996078, 996078, 686275, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 698039, 996078, 996078, 996078, 580392, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 733333, 996078, 996078, 996078, 552941, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 996078, 996078, 996078, 580392, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 686275, 996078, 937255, 392157, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 952941, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_063() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 149020, 376471, 682353, 1000000, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 603922, 756863, 470588, 298039, 298039, 298039, 298039, 298039, 298039, 631373, 721569, 784314, 992157, 992157, 992157, 992157, 960784, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247059, 898039, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 976471, 823529, 650980, 400000, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 741176, 674510, 576471, 254902, 227451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 976471, 992157, 992157, 886275, 203922, 105882, 105882, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 513726, 992157, 992157, 462745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 800000, 992157, 866667, 341176, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 917647, 992157, 992157, 952941, 913725, 427451, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 913725, 992157, 992157, 992157, 992157, 772549, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 756863, 992157, 992157, 992157, 992157, 756863, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 90196, 486275, 639216, 988235, 992157, 227451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 972549, 992157, 862745, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 705882, 992157, 992157, 992157, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 470588, 984314, 992157, 992157, 403922, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 580392, 968627, 992157, 992157, 992157, 992157, 188235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 603922, 929412, 992157, 992157, 992157, 992157, 992157, 627451, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403922, 988235, 992157, 992157, 992157, 992157, 992157, 894118, 435294, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 478431, 992157, 992157, 992157, 992157, 741176, 447059, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 886275, 792157, 490196, 145098, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_064() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 117647, 517647, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 768627, 988235, 988235, 772549, 98039, 98039, 98039, 98039, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 827451, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 662745, 992157, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 670588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 694118, 988235, 992157, 988235, 988235, 945098, 921569, 988235, 988235, 988235, 886275, 396078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 917647, 988235, 980392, 658824, 235294, 243137, 560784, 988235, 988235, 988235, 631373, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 654902, 180392, 0, 117647, 839216, 988235, 988235, 988235, 298039, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490196, 870588, 988235, 988235, 850980, 211765, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 411765, 674510, 949020, 988235, 988235, 988235, 866667, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 411765, 474510, 964706, 992157, 988235, 988235, 988235, 988235, 976471, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 992157, 992157, 992157, 1000000, 964706, 878431, 560784, 980392, 992157, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 988235, 988235, 898039, 647059, 180392, 0, 109804, 870588, 988235, 654902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 600000, 376471, 19608, 0, 0, 90196, 686275, 988235, 811765, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 192157, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 239216, 831373, 988235, 749020, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 988235, 815686, 235294, 0, 0, 0, 0, 0, 0, 0, 98039, 988235, 988235, 988235, 462745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 745098, 988235, 988235, 741176, 82353, 0, 0, 0, 0, 0, 400000, 780392, 988235, 988235, 447059, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 988235, 988235, 988235, 517647, 333333, 333333, 333333, 533333, 803922, 905882, 988235, 941176, 564706, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 403922, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 992157, 772549, 521569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 219608, 988235, 988235, 988235, 988235, 988235, 988235, 784314, 564706, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 43137, 384314, 513726, 513726, 513726, 313726, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_065() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 643137, 1000000, 823529, 749020, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 850980, 992157, 992157, 992157, 992157, 772549, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 647059, 992157, 992157, 788235, 321569, 933333, 992157, 725490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 992157, 690196, 176471, 0, 905882, 992157, 878431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 882353, 992157, 858824, 54902, 0, 0, 905882, 992157, 878431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 611765, 992157, 952941, 266667, 0, 270588, 494118, 941176, 992157, 682353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345098, 988235, 992157, 890196, 0, 0, 305882, 992157, 992157, 992157, 913725, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 827451, 992157, 937255, 192157, 0, 66667, 584314, 992157, 992157, 992157, 992157, 764706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 992157, 992157, 584314, 164706, 458824, 882353, 992157, 992157, 992157, 992157, 921569, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 756863, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 768627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 639216, 839216, 992157, 803922, 690196, 925490, 992157, 992157, 815686, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 160784, 58824, 90196, 850980, 992157, 992157, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 654902, 992157, 992157, 592157, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 847059, 992157, 992157, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 839216, 992157, 992157, 894118, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400000, 992157, 992157, 796078, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 874510, 992157, 992157, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490196, 992157, 992157, 654902, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490196, 992157, 992157, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262745, 745098, 529412, 160784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_066() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 396078, 945098, 1000000, 701961, 396078, 133333, 180392, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 992157, 992157, 992157, 992157, 992157, 854902, 878431, 815686, 784314, 784314, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725490, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 972549, 419608, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 325490, 984314, 992157, 992157, 737255, 627451, 627451, 627451, 627451, 262745, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 792157, 992157, 992157, 945098, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 968627, 992157, 992157, 690196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 968627, 992157, 952941, 658824, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756863, 992157, 992157, 886275, 121569, 121569, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756863, 992157, 992157, 992157, 992157, 992157, 654902, 266667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756863, 992157, 992157, 992157, 992157, 992157, 992157, 949020, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 227451, 298039, 866667, 462745, 298039, 933333, 992157, 992157, 537255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 905882, 992157, 992157, 427451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 929412, 992157, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 835294, 992157, 992157, 666667, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 992157, 992157, 992157, 505882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 7843, 0, 0, 435294, 862745, 992157, 992157, 823529, 388235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 588235, 54902, 31373, 364706, 972549, 992157, 992157, 780392, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 992157, 992157, 992157, 992157, 992157, 682353, 568627, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 647059, 992157, 992157, 992157, 588235, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 227451, 607843, 529412, 388235, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_067() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 27451, 7843, 7843, 27451, 203922, 509804, 952941, 1000000, 772549, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 50980, 50980, 396078, 647059, 992157, 635294, 682353, 992157, 992157, 992157, 992157, 992157, 968627, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 623529, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 388235, 835294, 992157, 992157, 972549, 894118, 894118, 894118, 894118, 925490, 992157, 992157, 992157, 992157, 686275, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 992157, 992157, 992157, 972549, 466667, 0, 0, 0, 0, 223529, 913725, 992157, 992157, 882353, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 647059, 788235, 364706, 537255, 0, 0, 0, 0, 188235, 925490, 992157, 992157, 800000, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 611765, 992157, 992157, 929412, 396078, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 682353, 925490, 992157, 831373, 270588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 411765, 992157, 992157, 921569, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 847059, 992157, 992157, 921569, 274510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 670588, 925490, 992157, 992157, 333333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 611765, 925490, 992157, 874510, 286275, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 992157, 992157, 921569, 321569, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 505882, 933333, 992157, 992157, 372549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 266667, 937255, 992157, 992157, 411765, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 784314, 992157, 992157, 843137, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 686275, 956863, 992157, 858824, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 992157, 992157, 941176, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 972549, 992157, 992157, 407843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 992157, 992157, 658824, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_068() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 415686, 780392, 1000000, 996078, 682353, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 270588, 792157, 992157, 952941, 556863, 611765, 992157, 600000, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 870588, 992157, 807843, 145098, 0, 101961, 956863, 992157, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239216, 992157, 886275, 94118, 0, 0, 70588, 909804, 992157, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 992157, 607843, 0, 0, 0, 125490, 992157, 992157, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 686275, 996078, 380392, 0, 0, 23529, 741176, 996078, 996078, 470588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 992157, 184314, 0, 0, 568627, 992157, 992157, 960784, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 992157, 184314, 0, 564706, 996078, 992157, 992157, 741176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 603922, 992157, 388235, 501961, 984314, 996078, 992157, 992157, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 839216, 992157, 992157, 992157, 800000, 992157, 992157, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 313726, 313726, 82353, 996078, 866667, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 992157, 803922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 992157, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 956863, 992157, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 996078, 874510, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 1000000, 870588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756863, 996078, 631373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 933333, 996078, 403922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 933333, 960784, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 988235, 933333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 9);
}
#[test]
fn test_main_069() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 807843, 968627, 188235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 588235, 917647, 996078, 956863, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 454902, 996078, 996078, 988235, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 956863, 996078, 905882, 435294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 415686, 972549, 996078, 988235, 435294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 850980, 996078, 984314, 478431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 631373, 996078, 996078, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 988235, 996078, 760784, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 498039, 988235, 996078, 772549, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 996078, 996078, 772549, 66667, 0, 0, 152941, 372549, 505882, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 725490, 996078, 941176, 109804, 0, 262745, 956863, 996078, 996078, 949020, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 996078, 996078, 392157, 0, 0, 682353, 996078, 996078, 949020, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 870588, 996078, 996078, 35294, 19608, 584314, 996078, 996078, 992157, 533333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 996078, 996078, 996078, 321569, 768627, 996078, 996078, 996078, 847059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 996078, 996078, 996078, 996078, 996078, 996078, 1000000, 996078, 384314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 745098, 996078, 996078, 996078, 996078, 996078, 996078, 682353, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 486275, 996078, 996078, 996078, 745098, 294118, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 996078, 996078, 176471, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 996078, 996078, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 639216, 996078, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_070() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 482353, 882353, 882353, 882353, 886275, 882353, 882353, 478431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 964706, 988235, 988235, 988235, 992157, 988235, 988235, 964706, 772549, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 419608, 811765, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 847059, 478431, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 988235, 992157, 988235, 988235, 925490, 439216, 439216, 619608, 988235, 988235, 988235, 992157, 988235, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 811765, 992157, 1000000, 992157, 894118, 494118, 0, 0, 0, 529412, 992157, 992157, 1000000, 992157, 870588, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 713726, 988235, 988235, 992157, 988235, 274510, 0, 0, 0, 0, 23529, 509804, 988235, 992157, 988235, 988235, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 941176, 988235, 988235, 894118, 580392, 47059, 0, 0, 0, 0, 0, 27451, 521569, 992157, 988235, 988235, 964706, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 952941, 988235, 988235, 988235, 549020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 623529, 988235, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 988235, 988235, 988235, 988235, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 988235, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 690196, 992157, 992157, 992157, 745098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 992157, 992157, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 949020, 290196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 623529, 988235, 988235, 988235, 800000, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 874510, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 286275, 772549, 992157, 988235, 988235, 901961, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 890196, 50980, 0, 0, 0, 15686, 113725, 113725, 113725, 611765, 988235, 988235, 992157, 988235, 901961, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 988235, 741176, 309804, 494118, 549020, 600000, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 992157, 992157, 992157, 992157, 1000000, 992157, 992157, 992157, 992157, 1000000, 992157, 992157, 992157, 992157, 800000, 368627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658824, 952941, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 949020, 654902, 368627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 815686, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 913725, 643137, 192157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 329412, 329412, 329412, 329412, 329412, 329412, 329412, 329412, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_071() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 894118, 1000000, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 886275, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 890196, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 925490, 992157, 654902, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 992157, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 992157, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 901961, 992157, 992157, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 992157, 992157, 992157, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 992157, 992157, 898039, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 992157, 992157, 733333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 850980, 992157, 992157, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 850980, 992157, 992157, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 874510, 992157, 992157, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592157, 992157, 992157, 992157, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239216, 874510, 992157, 992157, 992157, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 992157, 992157, 384314, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 992157, 992157, 992157, 364706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 690196, 992157, 713726, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_072() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556863, 623529, 870588, 996078, 996078, 870588, 623529, 623529, 623529, 627451, 623529, 623529, 380392, 258824, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 752941, 952941, 596078, 678431, 843137, 949020, 992157, 992157, 992157, 996078, 992157, 992157, 992157, 992157, 941176, 882353, 447059, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164706, 0, 0, 0, 156863, 219608, 396078, 313726, 219608, 219608, 501961, 584314, 584314, 752941, 992157, 992157, 647059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 431373, 992157, 992157, 403922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 976471, 992157, 509804, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 686275, 976471, 984314, 670588, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 847059, 992157, 992157, 533333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 992157, 925490, 360784, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 882353, 972549, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 898039, 992157, 407843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 666667, 1000000, 803922, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 992157, 996078, 286275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 992157, 780392, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 941176, 992157, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 992157, 784314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 894118, 984314, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 878431, 0, 431373, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 905882, 498039, 996078, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 992157, 992157, 552941, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211765, 705882, 949020, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_073() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 262745, 576471, 576471, 576471, 266667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 407843, 988235, 996078, 996078, 996078, 996078, 635294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 450980, 894118, 996078, 992157, 996078, 996078, 996078, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 803922, 996078, 996078, 905882, 435294, 576471, 996078, 996078, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364706, 996078, 996078, 996078, 149020, 0, 407843, 996078, 996078, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 996078, 988235, 447059, 47059, 447059, 937255, 992157, 533333, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 698039, 682353, 156863, 784314, 996078, 996078, 925490, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 678431, 886275, 847059, 952941, 996078, 996078, 996078, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 698039, 933333, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 294118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 968627, 996078, 996078, 929412, 211765, 211765, 478431, 996078, 996078, 643137, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 450980, 490196, 333333, 54902, 0, 0, 329412, 996078, 996078, 658824, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 996078, 996078, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 729412, 909804, 996078, 843137, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 960784, 949020, 262745, 0, 0, 0, 0, 0, 0, 0, 47059, 541176, 917647, 996078, 890196, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 866667, 996078, 996078, 643137, 0, 0, 0, 0, 239216, 258824, 258824, 682353, 1000000, 996078, 862745, 454902, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 647059, 996078, 996078, 968627, 831373, 831373, 831373, 831373, 984314, 996078, 996078, 996078, 996078, 996078, 294118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 847059, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 952941, 650980, 447059, 98039, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 996078, 996078, 996078, 996078, 996078, 901961, 721569, 627451, 188235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 149020, 149020, 149020, 149020, 149020, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_074() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 1000000, 992157, 1000000, 992157, 337255, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 878431, 992157, 984314, 992157, 984314, 992157, 768627, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337255, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 545098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 662745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 984314, 992157, 984314, 768627, 325490, 545098, 984314, 992157, 984314, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 772549, 1000000, 992157, 996078, 768627, 0, 0, 223529, 882353, 996078, 992157, 776471, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 768627, 109804, 0, 0, 0, 658824, 992157, 984314, 992157, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 992157, 996078, 992157, 662745, 0, 0, 0, 0, 662745, 996078, 992157, 662745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 984314, 992157, 984314, 658824, 0, 0, 0, 0, 658824, 992157, 984314, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 996078, 992157, 996078, 992157, 0, 0, 0, 0, 333333, 992157, 996078, 992157, 662745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 992157, 984314, 992157, 541176, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 772549, 996078, 992157, 886275, 219608, 0, 0, 0, 223529, 996078, 992157, 996078, 992157, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 658824, 0, 0, 0, 223529, 878431, 992157, 984314, 992157, 984314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 996078, 992157, 662745, 0, 0, 0, 552941, 992157, 996078, 992157, 886275, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 658824, 0, 223529, 658824, 992157, 984314, 992157, 984314, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 886275, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 992157, 984314, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 996078, 992157, 996078, 992157, 996078, 992157, 886275, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 325490, 992157, 984314, 992157, 984314, 768627, 325490, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_075() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 396078, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 811765, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 619608, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 776471, 803922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635294, 725490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 976471, 713726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400000, 945098, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 623529, 996078, 490196, 0, 11765, 19608, 39216, 333333, 333333, 333333, 152941, 7843, 0, 90196, 996078, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 996078, 996078, 843137, 698039, 878431, 996078, 996078, 996078, 996078, 996078, 996078, 807843, 274510, 82353, 996078, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403922, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 988235, 639216, 921569, 741176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 729412, 996078, 996078, 996078, 996078, 996078, 996078, 882353, 835294, 733333, 835294, 925490, 996078, 996078, 996078, 996078, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 996078, 996078, 996078, 878431, 505882, 156863, 47059, 0, 0, 0, 90196, 254902, 690196, 996078, 996078, 913725, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 835294, 996078, 996078, 560784, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 133333, 466667, 949020, 556863, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 996078, 568627, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 611765, 996078, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 15686, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 996078, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 941176, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 854902, 670588, 643137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 800000, 996078, 996078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 996078, 721569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 694118, 294118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 4);
}
#[test]
fn test_main_076() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 168627, 152941, 0, 141176, 239216, 580392, 611765, 992157, 992157, 1000000, 541176, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223529, 501961, 890196, 988235, 968627, 745098, 949020, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 203922, 705882, 964706, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 960784, 905882, 960784, 988235, 992157, 960784, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 909804, 988235, 988235, 988235, 992157, 988235, 988235, 823529, 741176, 329412, 219608, 160784, 882353, 988235, 992157, 384314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 886275, 988235, 988235, 988235, 925490, 576471, 196078, 54902, 0, 0, 141176, 874510, 988235, 988235, 682353, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 796078, 549020, 243137, 0, 0, 0, 0, 70588, 482353, 992157, 992157, 992157, 682353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 607843, 847059, 992157, 988235, 988235, 662745, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 329412, 635294, 917647, 988235, 988235, 992157, 988235, 988235, 937255, 909804, 847059, 498039, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 274510, 937255, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 654902, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662745, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 850980, 576471, 576471, 749020, 992157, 988235, 988235, 776471, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 968627, 968627, 827451, 827451, 549020, 243137, 176471, 0, 0, 0, 0, 70588, 607843, 992157, 992157, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207843, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 988235, 988235, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 937255, 988235, 968627, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 250980, 854902, 988235, 988235, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419608, 866667, 988235, 992157, 988235, 745098, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 168627, 411765, 717647, 992157, 992157, 992157, 968627, 690196, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 333333, 713726, 909804, 988235, 992157, 988235, 988235, 988235, 850980, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 929412, 988235, 988235, 988235, 988235, 992157, 960784, 698039, 219608, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 415686, 992157, 988235, 988235, 988235, 886275, 501961, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 819608, 988235, 745098, 164706, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_077() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 992157, 364706, 0, 0, 0, 0, 894118, 992157, 854902, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 976471, 988235, 858824, 0, 0, 0, 0, 886275, 988235, 988235, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 729412, 988235, 988235, 882353, 0, 0, 0, 380392, 976471, 988235, 988235, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345098, 988235, 988235, 972549, 352941, 0, 0, 200000, 933333, 988235, 988235, 698039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 674510, 988235, 988235, 905882, 86275, 0, 0, 556863, 988235, 988235, 988235, 639216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 933333, 988235, 988235, 882353, 0, 0, 0, 941176, 988235, 988235, 933333, 203922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 776471, 988235, 988235, 988235, 603922, 0, 0, 407843, 972549, 988235, 988235, 725490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 988235, 988235, 988235, 988235, 949020, 627451, 627451, 992157, 988235, 988235, 988235, 752941, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 682353, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 988235, 988235, 988235, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 988235, 831373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 647059, 643137, 521569, 521569, 545098, 992157, 1000000, 992157, 992157, 992157, 992157, 992157, 835294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 15686, 0, 0, 31373, 792157, 992157, 988235, 988235, 192157, 50980, 50980, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 694118, 992157, 988235, 850980, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 988235, 992157, 988235, 619608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 576471, 988235, 992157, 878431, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 494118, 988235, 988235, 992157, 568627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 988235, 988235, 992157, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 988235, 988235, 941176, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 988235, 988235, 521569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 988235, 988235, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 4);
}
#[test]
fn test_main_078() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725490, 35294, 0, 0, 0, 0, 0, 0, 0, 721569, 1000000, 996078, 996078, 682353, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 266667, 19608, 3922, 0, 0, 0, 0, 0, 0, 725490, 988235, 992157, 992157, 992157, 992157, 941176, 200000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741176, 901961, 556863, 623529, 768627, 992157, 992157, 917647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 58824, 0, 11765, 156863, 992157, 992157, 964706, 188235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 650980, 992157, 992157, 917647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 611765, 992157, 992157, 968627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 937255, 992157, 992157, 796078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 819608, 929412, 992157, 992157, 976471, 317647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 827451, 992157, 992157, 992157, 972549, 674510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62745, 788235, 992157, 992157, 992157, 964706, 419608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 611765, 992157, 992157, 839216, 694118, 227451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741176, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741176, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741176, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 262745, 901961, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 7843, 0, 0, 0, 0, 337255, 992157, 992157, 992157, 882353, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 737255, 615686, 588235, 588235, 588235, 588235, 909804, 992157, 992157, 976471, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 921569, 972549, 988235, 992157, 992157, 992157, 992157, 992157, 992157, 788235, 0, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439216, 796078, 486275, 929412, 992157, 992157, 992157, 992157, 972549, 501961, 0, 235294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439216, 321569, 435294, 929412, 556863, 901961, 847059, 745098, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 2);
}
#[test]
fn test_main_079() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 749020, 501961, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 749020, 0, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 749020, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 749020, 1000000, 501961, 749020, 749020, 1000000, 749020, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 749020, 749020, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 250980, 749020, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 749020, 1000000, 1000000, 1000000, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 749020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 501961, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 1000000, 749020, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 749020, 1000000, 749020, 749020, 0, 501961, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_080() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 792157, 713726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403922, 992157, 709804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 635294, 941176, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 658824, 992157, 607843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 992157, 964706, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 513726, 996078, 996078, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 843137, 992157, 654902, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 701961, 996078, 960784, 172549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 992157, 996078, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 854902, 992157, 662745, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 729412, 996078, 996078, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 482353, 980392, 992157, 458824, 0, 0, 286275, 721569, 796078, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 933333, 992157, 701961, 43137, 43137, 674510, 921569, 992157, 992157, 709804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 717647, 992157, 905882, 121569, 0, 588235, 992157, 929412, 976471, 992157, 556863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 996078, 992157, 243137, 0, 509804, 996078, 709804, 94118, 854902, 992157, 231373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 537255, 1000000, 854902, 50980, 23529, 792157, 815686, 50980, 600000, 996078, 639216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 992157, 996078, 372549, 0, 352941, 992157, 494118, 749020, 980392, 721569, 47059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 992157, 996078, 329412, 196078, 886275, 992157, 996078, 992157, 866667, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 992157, 996078, 992157, 992157, 992157, 992157, 949020, 639216, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 411765, 639216, 968627, 992157, 709804, 384314, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_081() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 925490, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474510, 956863, 898039, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 956863, 996078, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 803922, 996078, 490196, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 996078, 890196, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 709804, 996078, 443137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 972549, 996078, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 996078, 811765, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 686275, 996078, 364706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 870588, 882353, 7843, 0, 0, 0, 0, 0, 11765, 305882, 937255, 701961, 125490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243137, 996078, 878431, 0, 0, 0, 0, 0, 105882, 600000, 996078, 996078, 996078, 470588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474510, 996078, 631373, 0, 0, 0, 0, 356863, 862745, 996078, 933333, 568627, 815686, 470588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 647059, 996078, 313726, 0, 0, 47059, 521569, 968627, 996078, 925490, 243137, 0, 705882, 643137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 862745, 996078, 98039, 0, 0, 764706, 996078, 996078, 733333, 50980, 0, 0, 705882, 752941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 862745, 996078, 98039, 0, 180392, 972549, 980392, 729412, 43137, 0, 0, 321569, 964706, 470588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741176, 882353, 58824, 0, 549020, 996078, 800000, 0, 0, 0, 211765, 921569, 996078, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474510, 996078, 203922, 0, 756863, 996078, 439216, 0, 90196, 341176, 972549, 996078, 776471, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474510, 996078, 968627, 745098, 984314, 996078, 615686, 670588, 905882, 996078, 996078, 647059, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 749020, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 894118, 321569, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 415686, 603922, 976471, 996078, 996078, 835294, 509804, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_082() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 603922, 1000000, 541176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 733333, 996078, 576471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 505882, 988235, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 788235, 788235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 803922, 607843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 996078, 607843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 996078, 607843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 996078, 607843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 996078, 607843, 0, 0, 0, 0, 31373, 376471, 576471, 576471, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141176, 996078, 607843, 0, 0, 0, 31373, 647059, 996078, 996078, 996078, 827451, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 431373, 996078, 607843, 0, 0, 0, 388235, 996078, 996078, 905882, 870588, 992157, 749020, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 996078, 607843, 0, 0, 180392, 968627, 984314, 505882, 62745, 0, 690196, 996078, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 847059, 607843, 0, 0, 490196, 996078, 737255, 0, 0, 0, 741176, 996078, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 788235, 721569, 0, 0, 929412, 878431, 58824, 0, 0, 0, 964706, 996078, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 572549, 992157, 517647, 274510, 992157, 819608, 0, 0, 11765, 721569, 992157, 996078, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 941176, 964706, 686275, 996078, 619608, 27451, 235294, 815686, 996078, 996078, 800000, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 945098, 996078, 996078, 921569, 874510, 996078, 996078, 996078, 952941, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368627, 956863, 996078, 996078, 996078, 996078, 917647, 545098, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 949020, 800000, 427451, 243137, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458824, 941176, 368627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 6);
}
#[test]
fn test_main_083() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 313726, 764706, 996078, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 419608, 870588, 996078, 996078, 996078, 988235, 580392, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 937255, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 760784, 266667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 886275, 996078, 996078, 996078, 996078, 682353, 776471, 666667, 972549, 996078, 980392, 184314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352941, 996078, 996078, 996078, 996078, 635294, 0, 0, 0, 196078, 925490, 996078, 203922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 996078, 996078, 996078, 917647, 54902, 0, 0, 0, 196078, 925490, 996078, 203922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 996078, 996078, 964706, 223529, 74510, 0, 31373, 392157, 972549, 996078, 862745, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294118, 996078, 996078, 952941, 662745, 921569, 760784, 823529, 996078, 996078, 780392, 101961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 988235, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 890196, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 996078, 996078, 996078, 996078, 996078, 996078, 996078, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247059, 996078, 996078, 996078, 996078, 584314, 976471, 996078, 925490, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 921569, 996078, 996078, 972549, 258824, 0, 223529, 976471, 996078, 352941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 576471, 996078, 996078, 870588, 160784, 0, 0, 0, 847059, 996078, 800000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 905882, 996078, 901961, 58824, 0, 0, 0, 98039, 917647, 996078, 513726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 858824, 996078, 592157, 0, 0, 0, 0, 50980, 941176, 996078, 423529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 858824, 996078, 309804, 0, 0, 0, 43137, 611765, 996078, 964706, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 858824, 996078, 713726, 27451, 3922, 223529, 858824, 996078, 996078, 752941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 835294, 996078, 996078, 811765, 764706, 996078, 1000000, 996078, 952941, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 988235, 996078, 996078, 996078, 996078, 996078, 627451, 137255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 686275, 756863, 984314, 650980, 309804, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_084() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 443137, 690196, 992157, 992157, 929412, 443137, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298039, 760784, 894118, 988235, 992157, 988235, 988235, 988235, 988235, 945098, 698039, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 964706, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 341176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 913725, 282353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 874510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639216, 992157, 698039, 549020, 309804, 0, 125490, 549020, 549020, 1000000, 992157, 992157, 882353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 105882, 35294, 0, 0, 0, 0, 0, 0, 501961, 988235, 988235, 976471, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 478431, 988235, 988235, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 698039, 988235, 988235, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 882353, 988235, 988235, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 992157, 992157, 992157, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 333333, 933333, 988235, 988235, 988235, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 223529, 776471, 772549, 345098, 611765, 988235, 992157, 988235, 988235, 988235, 556863, 223529, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 113725, 541176, 878431, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 694118, 662745, 282353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 443137, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 937255, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 690196, 992157, 992157, 992157, 992157, 1000000, 992157, 992157, 992157, 992157, 1000000, 992157, 992157, 992157, 992157, 1000000, 992157, 992157, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 776471, 215686, 219608, 215686, 215686, 215686, 215686, 466667, 964706, 988235, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 929412, 988235, 988235, 988235, 988235, 941176, 874510, 447059, 109804, 0, 0, 0, 0, 0, 0, 0, 478431, 964706, 988235, 925490, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 929412, 988235, 925490, 439216, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 772549, 988235, 439216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 2);
}
#[test]
fn test_main_085() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125490, 654902, 764706, 992157, 992157, 992157, 749020, 247059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 784314, 972549, 988235, 988235, 988235, 992157, 949020, 262745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 376471, 376471, 827451, 992157, 988235, 933333, 203922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 584314, 988235, 988235, 419608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 686275, 988235, 933333, 203922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 988235, 988235, 282353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 988235, 835294, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 729412, 988235, 800000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 988235, 988235, 882353, 325490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517647, 988235, 988235, 988235, 752941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 435294, 517647, 517647, 745098, 1000000, 992157, 992157, 984314, 498039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137255, 890196, 988235, 988235, 988235, 988235, 992157, 988235, 976471, 498039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90196, 376471, 756863, 847059, 847059, 984314, 992157, 976471, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 945098, 992157, 894118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 945098, 992157, 780392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 980392, 980392, 301961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 972549, 988235, 560784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 988235, 988235, 294118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 988235, 988235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 945098, 760784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_086() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 725490, 996078, 996078, 1000000, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 992157, 992157, 992157, 454902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 992157, 992157, 992157, 803922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 992157, 992157, 992157, 803922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 992157, 992157, 992157, 992157, 396078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 419608, 992157, 992157, 992157, 992157, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 992157, 992157, 992157, 992157, 992157, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 992157, 992157, 992157, 992157, 992157, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 760784, 992157, 992157, 992157, 992157, 917647, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592157, 992157, 992157, 992157, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592157, 992157, 992157, 992157, 992157, 733333, 121569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301961, 949020, 992157, 992157, 992157, 858824, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 992157, 992157, 992157, 843137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333333, 992157, 992157, 992157, 992157, 843137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 945098, 992157, 992157, 992157, 992157, 156863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 992157, 992157, 992157, 992157, 992157, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596078, 992157, 992157, 992157, 992157, 545098, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 992157, 992157, 992157, 992157, 501961, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 670588, 992157, 992157, 992157, 686275, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 690196, 992157, 713726, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_087() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 815686, 1000000, 356863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 415686, 992157, 992157, 717647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 905882, 992157, 992157, 717647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501961, 988235, 992157, 992157, 133333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 513726, 992157, 992157, 992157, 576471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400000, 776471, 992157, 992157, 992157, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 317647, 976471, 992157, 686275, 894118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 780392, 901961, 556863, 23529, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82353, 776471, 819608, 129412, 0, 0, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 701961, 992157, 478431, 0, 0, 0, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 686275, 901961, 50980, 0, 0, 0, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 992157, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 705882, 992157, 145098, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 427451, 427451, 596078, 992157, 992157, 992157, 956863, 427451, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 831373, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 568627, 992157, 678431, 388235, 388235, 388235, 388235, 388235, 388235, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_088() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 447059, 749020, 168627, 509804, 1000000, 992157, 992157, 717647, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 482353, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 886275, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 925490, 988235, 988235, 988235, 956863, 666667, 184314, 156863, 988235, 988235, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 580392, 988235, 968627, 466667, 192157, 0, 0, 86275, 988235, 988235, 517647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 580392, 850980, 184314, 0, 0, 0, 0, 600000, 988235, 988235, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 615686, 992157, 992157, 992157, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615686, 988235, 988235, 988235, 537255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43137, 498039, 843137, 992157, 988235, 984314, 525490, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 988235, 988235, 992157, 905882, 505882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 988235, 988235, 992157, 658824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 827451, 658824, 815686, 360784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 607843, 933333, 250980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 882353, 968627, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 396078, 988235, 541176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 988235, 988235, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 992157, 992157, 419608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 623529, 505882, 333333, 333333, 333333, 54902, 196078, 333333, 556863, 988235, 988235, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 960784, 988235, 988235, 988235, 925490, 960784, 988235, 988235, 988235, 956863, 207843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 823529, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 301961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 576471, 988235, 988235, 992157, 988235, 956863, 474510, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_089() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 70588, 235294, 729412, 996078, 1000000, 996078, 564706, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 321569, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 690196, 164706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 454902, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 619608, 0, 0, 0, 39216, 329412, 670588, 192157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 894118, 992157, 992157, 992157, 745098, 490196, 254902, 717647, 992157, 992157, 278431, 0, 274510, 549020, 788235, 992157, 992157, 894118, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 992157, 992157, 992157, 545098, 23529, 0, 0, 192157, 643137, 772549, 380392, 552941, 988235, 992157, 992157, 992157, 992157, 854902, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 992157, 992157, 992157, 184314, 0, 0, 0, 70588, 419608, 862745, 992157, 992157, 992157, 992157, 992157, 992157, 662745, 133333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3922, 607843, 992157, 992157, 631373, 15686, 23529, 749020, 956863, 992157, 992157, 992157, 992157, 992157, 917647, 423529, 43137, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 964706, 992157, 992157, 807843, 772549, 992157, 992157, 992157, 992157, 992157, 909804, 427451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 952941, 992157, 992157, 992157, 992157, 992157, 992157, 866667, 443137, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741176, 992157, 992157, 992157, 992157, 772549, 298039, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305882, 937255, 992157, 992157, 992157, 992157, 368627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 941176, 992157, 992157, 992157, 992157, 992157, 541176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560784, 992157, 992157, 992157, 992157, 992157, 992157, 831373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 984314, 992157, 992157, 415686, 431373, 992157, 992157, 913725, 176471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 992157, 992157, 831373, 78431, 474510, 992157, 992157, 992157, 760784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 992157, 992157, 898039, 650980, 952941, 992157, 992157, 992157, 458824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 756863, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 533333, 992157, 992157, 992157, 992157, 992157, 992157, 768627, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352941, 992157, 992157, 992157, 992157, 992157, 392157, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 415686, 992157, 992157, 666667, 66667, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_090() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 588235, 992157, 1000000, 996078, 874510, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 909804, 992157, 992157, 992157, 992157, 882353, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 988235, 992157, 992157, 788235, 858824, 992157, 627451, 0, 0, 66667, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47059, 905882, 992157, 925490, 509804, 7843, 639216, 454902, 74510, 0, 333333, 850980, 827451, 435294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 270588, 992157, 992157, 415686, 0, 0, 35294, 0, 0, 0, 505882, 992157, 992157, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 470588, 992157, 992157, 384314, 0, 0, 0, 0, 0, 294118, 898039, 992157, 992157, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 992157, 992157, 572549, 0, 0, 0, 278431, 760784, 980392, 992157, 992157, 580392, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 768627, 992157, 839216, 50980, 243137, 552941, 972549, 992157, 992157, 929412, 552941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 643137, 992157, 992157, 866667, 992157, 992157, 992157, 988235, 741176, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 329412, 992157, 992157, 992157, 992157, 992157, 752941, 266667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 784314, 992157, 992157, 992157, 929412, 466667, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 450980, 937255, 992157, 992157, 992157, 992157, 431373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 745098, 992157, 992157, 992157, 850980, 992157, 992157, 427451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129412, 847059, 992157, 992157, 862745, 200000, 439216, 992157, 992157, 427451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 854902, 992157, 960784, 407843, 35294, 0, 431373, 992157, 992157, 301961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 752941, 992157, 968627, 321569, 0, 0, 23529, 639216, 992157, 992157, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 992157, 992157, 556863, 0, 0, 19608, 611765, 992157, 992157, 890196, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 941176, 992157, 937255, 486275, 450980, 450980, 815686, 992157, 992157, 784314, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 623529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 423529, 584314, 811765, 992157, 615686, 584314, 584314, 321569, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_091() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 462745, 337255, 133333, 541176, 337255, 541176, 749020, 792157, 992157, 870588, 541176, 541176, 501961, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 894118, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 988235, 988235, 988235, 988235, 992157, 925490, 172549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 917647, 988235, 988235, 992157, 988235, 988235, 890196, 717647, 721569, 717647, 717647, 717647, 964706, 992157, 988235, 596078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 627451, 627451, 180392, 176471, 176471, 113725, 0, 0, 0, 0, 0, 698039, 992157, 988235, 717647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 901961, 992157, 988235, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 407843, 992157, 1000000, 768627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 925490, 988235, 854902, 129412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50980, 796078, 988235, 988235, 454902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 682353, 988235, 988235, 823529, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 709804, 988235, 988235, 823529, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 298039, 1000000, 992157, 843137, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 650980, 988235, 992157, 956863, 384314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 325490, 941176, 988235, 992157, 482353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 317647, 941176, 988235, 988235, 384314, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290196, 956863, 988235, 988235, 576471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290196, 1000000, 992157, 992157, 631373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 317647, 956863, 992157, 988235, 941176, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 811765, 988235, 992157, 988235, 392157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 811765, 988235, 960784, 545098, 50980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 811765, 988235, 698039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_092() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196078, 247059, 788235, 996078, 1000000, 580392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7843, 231373, 552941, 968627, 996078, 996078, 996078, 964706, 921569, 211765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 537255, 996078, 996078, 996078, 996078, 996078, 709804, 192157, 133333, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 494118, 960784, 996078, 996078, 996078, 984314, 658824, 50980, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 341176, 196078, 400000, 996078, 996078, 996078, 964706, 549020, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 917647, 682353, 454902, 996078, 996078, 698039, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 207843, 866667, 996078, 788235, 654902, 925490, 501961, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54902, 509804, 988235, 996078, 941176, 239216, 78431, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 996078, 996078, 686275, 86275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 996078, 996078, 309804, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 560784, 964706, 996078, 733333, 39216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192157, 780392, 996078, 807843, 231373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 670588, 996078, 933333, 231373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 427451, 909804, 929412, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 325490, 909804, 858824, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 498039, 996078, 443137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 729412, 988235, 643137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403922, 458824, 266667, 266667, 66667, 533333, 501961, 800000, 996078, 858824, 462745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 572549, 996078, 996078, 996078, 909804, 996078, 968627, 517647, 254902, 109804, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247059, 709804, 858824, 701961, 996078, 721569, 349020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 5);
}
#[test]
fn test_main_093() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529412, 996078, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 407843, 980392, 858824, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 937255, 992157, 407843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 937255, 992157, 682353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 937255, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 937255, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 937255, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 992157, 992157, 211765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352941, 992157, 992157, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145098, 854902, 992157, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 768627, 996078, 588235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 760784, 992157, 584314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 760784, 992157, 854902, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 992157, 996078, 450980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 992157, 996078, 827451, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176471, 992157, 996078, 992157, 349020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 776471, 996078, 992157, 349020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380392, 1000000, 992157, 901961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 894118, 992157, 980392, 403922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 415686, 992157, 992157, 521569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 1);
}
#[test]
fn test_main_094() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 701961, 996078, 996078, 400000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 462745, 996078, 992157, 992157, 631373, 0, 0, 7843, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 427451, 850980, 992157, 996078, 552941, 305882, 23529, 0, 0, 23529, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 658824, 992157, 992157, 992157, 662745, 11765, 0, 0, 62745, 482353, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 760784, 992157, 992157, 929412, 462745, 0, 0, 0, 0, 529412, 815686, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 819608, 1000000, 996078, 717647, 176471, 0, 0, 0, 0, 623529, 996078, 298039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 482353, 992157, 996078, 568627, 47059, 0, 0, 0, 7843, 607843, 968627, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682353, 992157, 717647, 47059, 0, 0, 0, 0, 462745, 992157, 572549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 329412, 992157, 772549, 82353, 0, 0, 0, 243137, 921569, 764706, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94118, 901961, 996078, 709804, 266667, 0, 298039, 996078, 992157, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447059, 1000000, 996078, 996078, 847059, 996078, 1000000, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388235, 745098, 992157, 992157, 992157, 996078, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 992157, 992157, 992157, 996078, 819608, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 894118, 992157, 968627, 690196, 996078, 992157, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149020, 905882, 992157, 992157, 396078, 0, 996078, 992157, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184314, 905882, 1000000, 996078, 454902, 39216, 525490, 1000000, 976471, 235294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 858824, 992157, 996078, 568627, 70588, 513726, 992157, 996078, 705882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 968627, 992157, 996078, 411765, 662745, 992157, 992157, 921569, 105882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309804, 992157, 992157, 996078, 992157, 992157, 968627, 690196, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70588, 639216, 992157, 996078, 992157, 725490, 219608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_095() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 372549, 470588, 1000000, 996078, 996078, 996078, 996078, 568627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 231373, 784314, 980392, 992157, 992157, 992157, 992157, 992157, 992157, 929412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321569, 733333, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 964706, 313726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 545098, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 980392, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462745, 839216, 764706, 239216, 239216, 239216, 603922, 992157, 992157, 992157, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 992157, 992157, 992157, 149020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 964706, 992157, 992157, 560784, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 168627, 992157, 992157, 949020, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160784, 847059, 992157, 992157, 615686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490196, 992157, 992157, 992157, 329412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11765, 407843, 964706, 992157, 992157, 745098, 98039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180392, 486275, 486275, 486275, 545098, 992157, 992157, 992157, 756863, 62745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 274510, 623529, 917647, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 505882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 431373, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 831373, 133333, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000000, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 631373, 454902, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 850980, 992157, 992157, 992157, 992157, 992157, 764706, 384314, 749020, 823529, 992157, 992157, 992157, 992157, 992157, 866667, 454902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 968627, 992157, 992157, 968627, 627451, 23529, 0, 0, 109804, 415686, 960784, 988235, 992157, 992157, 992157, 980392, 635294, 505882, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 568627, 568627, 137255, 0, 0, 0, 0, 0, 0, 0, 501961, 850980, 992157, 992157, 992157, 992157, 992157, 643137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121569, 176471, 690196, 913725, 992157, 945098, 780392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250980, 388235, 305882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 2);
}
#[test]
fn test_main_096() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133333, 678431, 996078, 996078, 901961, 415686, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 866667, 992157, 992157, 992157, 992157, 992157, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 996078, 992157, 992157, 749020, 537255, 992157, 988235, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27451, 278431, 996078, 819608, 305882, 19608, 11765, 788235, 992157, 803922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 643137, 992157, 968627, 235294, 0, 0, 0, 780392, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 647059, 992157, 992157, 188235, 0, 0, 0, 0, 780392, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 650980, 992157, 847059, 329412, 0, 0, 0, 0, 0, 556863, 988235, 980392, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39216, 647059, 992157, 964706, 384314, 0, 0, 0, 0, 0, 0, 0, 721569, 992157, 690196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352941, 992157, 980392, 384314, 0, 0, 0, 0, 0, 0, 0, 0, 909804, 992157, 556863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458824, 949020, 992157, 384314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 909804, 992157, 258824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282353, 980392, 968627, 376471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 960784, 898039, 113725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823529, 992157, 776471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 835294, 992157, 819608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 890196, 992157, 419608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 392157, 992157, 803922, 309804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262745, 992157, 909804, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 313726, 980392, 992157, 482353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 992157, 811765, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 831373, 992157, 670588, 31373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694118, 992157, 474510, 0, 0, 0, 0, 0, 0, 0, 243137, 792157, 992157, 917647, 141176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 988235, 686275, 15686, 0, 0, 0, 0, 39216, 537255, 968627, 992157, 874510, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823529, 992157, 647059, 39216, 0, 31373, 309804, 945098, 1000000, 949020, 647059, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384314, 980392, 992157, 792157, 737255, 780392, 992157, 992157, 823529, 321569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349020, 654902, 803922, 784314, 486275, 129412, 129412, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}
#[test]
fn test_main_097() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 592157, 937255, 917647, 364706, 0, 0, 0, 133333, 552941, 592157, 576471, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 921569, 996078, 996078, 996078, 607843, 0, 0, 564706, 937255, 996078, 996078, 984314, 231373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 847059, 996078, 996078, 996078, 886275, 105882, 211765, 862745, 996078, 996078, 996078, 960784, 486275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109804, 839216, 996078, 996078, 682353, 262745, 278431, 490196, 992157, 996078, 996078, 898039, 470588, 196078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 537255, 996078, 996078, 690196, 27451, 54902, 776471, 996078, 996078, 996078, 682353, 172549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101961, 917647, 996078, 1000000, 121569, 70588, 592157, 996078, 996078, 952941, 403922, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172549, 996078, 996078, 721569, 19608, 627451, 996078, 996078, 972549, 282353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 996078, 996078, 639216, 462745, 996078, 996078, 949020, 294118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376471, 992157, 996078, 996078, 996078, 996078, 996078, 615686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486275, 996078, 996078, 996078, 996078, 996078, 760784, 290196, 3922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 937255, 996078, 996078, 996078, 996078, 996078, 996078, 337255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 392157, 996078, 996078, 894118, 427451, 600000, 933333, 996078, 996078, 239216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254902, 933333, 996078, 898039, 180392, 0, 0, 305882, 996078, 996078, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 768627, 996078, 945098, 333333, 0, 0, 0, 207843, 996078, 996078, 576471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 392157, 988235, 996078, 768627, 0, 0, 0, 0, 501961, 996078, 996078, 243137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 776471, 996078, 835294, 82353, 0, 0, 0, 254902, 960784, 996078, 984314, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 776471, 996078, 670588, 0, 0, 19608, 533333, 945098, 996078, 996078, 725490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 776471, 996078, 952941, 647059, 564706, 866667, 996078, 996078, 996078, 803922, 66667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 988235, 996078, 996078, 996078, 996078, 996078, 992157, 690196, 74510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 721569, 996078, 996078, 803922, 321569, 180392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 8);
}
#[test]
fn test_main_098() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560784, 1000000, 1000000, 1000000, 913725, 509804, 509804, 156863, 27451, 19608, 0, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560784, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 858824, 533333, 760784, 533333, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286275, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 823529, 90196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31373, 694118, 894118, 894118, 960784, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258824, 482353, 525490, 741176, 870588, 870588, 909804, 992157, 992157, 992157, 627451, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 886275, 992157, 992157, 992157, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 827451, 992157, 992157, 992157, 70588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219608, 941176, 992157, 992157, 913725, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552941, 992157, 992157, 992157, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215686, 811765, 992157, 992157, 992157, 223529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 427451, 992157, 992157, 992157, 992157, 94118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356863, 945098, 992157, 992157, 886275, 274510, 23529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 200000, 949020, 992157, 992157, 992157, 627451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78431, 501961, 992157, 992157, 992157, 874510, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400000, 992157, 992157, 992157, 992157, 474510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 600000, 960784, 992157, 992157, 992157, 286275, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156863, 964706, 992157, 992157, 992157, 729412, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388235, 992157, 992157, 992157, 992157, 490196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435294, 992157, 992157, 992157, 639216, 117647, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 411765, 992157, 886275, 388235, 7843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 7);
}
#[test]
fn test_main_099() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 70588, 513726, 533333, 827451, 996078, 996078, 1000000, 996078, 301961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98039, 490196, 921569, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 952941, 58824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 494118, 890196, 992157, 921569, 784314, 784314, 521569, 321569, 321569, 321569, 572549, 992157, 992157, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419608, 992157, 992157, 784314, 466667, 0, 0, 0, 0, 0, 0, 501961, 992157, 992157, 415686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 913725, 992157, 756863, 164706, 0, 0, 0, 0, 0, 0, 270588, 890196, 992157, 956863, 78431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 772549, 509804, 39216, 0, 0, 0, 0, 0, 70588, 525490, 968627, 992157, 992157, 341176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19608, 0, 0, 0, 0, 0, 11765, 286275, 788235, 992157, 992157, 992157, 992157, 498039, 490196, 184314, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749020, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 882353, 192157, 15686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 952941, 992157, 992157, 992157, 866667, 831373, 831373, 831373, 850980, 992157, 992157, 992157, 494118, 11765, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 729412, 717647, 298039, 298039, 70588, 0, 0, 0, 35294, 388235, 760784, 945098, 992157, 501961, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 788235, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 788235, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 788235, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 788235, 992157, 992157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 117647, 43137, 0, 0, 0, 0, 0, 0, 23529, 454902, 909804, 992157, 937255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66667, 188235, 800000, 976471, 301961, 0, 0, 0, 0, 0, 109804, 552941, 992157, 992157, 917647, 215686, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74510, 729412, 992157, 992157, 564706, 0, 0, 0, 98039, 258824, 498039, 878431, 992157, 992157, 909804, 447059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188235, 933333, 992157, 992157, 878431, 788235, 788235, 788235, 866667, 992157, 992157, 992157, 933333, 666667, 235294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627451, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 788235, 545098, 109804, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23529, 66667, 66667, 66667, 145098, 529412, 529412, 529412, 109804, 35294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 3);
}
#[test]
fn test_main_100() {
let sample = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 654902, 996078, 592157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490196, 996078, 992157, 949020, 235294, 27451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 584314, 996078, 992157, 992157, 992157, 498039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 584314, 996078, 992157, 992157, 992157, 698039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105882, 400000, 945098, 996078, 992157, 992157, 992157, 960784, 431373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 117647, 776471, 992157, 992157, 949020, 972549, 992157, 992157, 992157, 956863, 333333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117647, 992157, 992157, 992157, 678431, 278431, 388235, 498039, 992157, 992157, 992157, 745098, 345098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490196, 945098, 992157, 866667, 192157, 23529, 0, 0, 39216, 807843, 992157, 992157, 992157, 764706, 82353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86275, 901961, 992157, 992157, 639216, 0, 0, 0, 0, 0, 109804, 905882, 992157, 992157, 992157, 231373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35294, 776471, 992157, 992157, 992157, 639216, 0, 0, 0, 0, 0, 0, 878431, 992157, 992157, 992157, 231373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 647059, 996078, 996078, 996078, 996078, 403922, 0, 0, 0, 0, 0, 0, 643137, 996078, 996078, 643137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58824, 725490, 992157, 992157, 964706, 447059, 11765, 0, 0, 0, 0, 0, 113725, 807843, 992157, 866667, 145098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 992157, 992157, 992157, 494118, 0, 0, 0, 0, 0, 0, 39216, 807843, 992157, 992157, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 992157, 992157, 992157, 290196, 0, 0, 0, 0, 0, 113725, 501961, 992157, 992157, 992157, 466667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 992157, 992157, 992157, 462745, 0, 0, 0, 176471, 886275, 905882, 992157, 992157, 992157, 886275, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235294, 992157, 992157, 992157, 890196, 117647, 117647, 568627, 874510, 996078, 992157, 992157, 992157, 713726, 254902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113725, 807843, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 996078, 992157, 647059, 466667, 54902, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439216, 992157, 992157, 992157, 992157, 992157, 992157, 992157, 1000000, 560784, 19608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15686, 505882, 815686, 941176, 992157, 992157, 992157, 886275, 576471, 43137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360784, 992157, 992157, 541176, 168627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert(main(sample) == 0);
}