0
0
0
0
0
0
0
0
1
1
1
1
1
2
2
2
2
3
3
3
3
3
5
6
6
7
7
7
8
11
14
16
23
36
49
63
63
63
63
63
63
63
63
63
63
64
64
64
64
64
64
64
64
64
65
65
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
69
71
71
71
72
72
75
78
78
78
82
85
89
92
92
92
92
92
92
92
93
93
95
98
102
105
105
105
105
106
108
113
113
113
113
113
116
119
119
120
121
121
122
122
125
125
127
133
143
144
149
152
160
163
169
175
190
190
190
192
197
200
208
217
232
232
242
242
242
242
250
262
276
293
303
330
339
365
365
387
387
387
387
387
387
387
388
388
388
388
388
388
390
390
390
390
390
390
390
390
393
393
393
393
393
393
395
395
395
395
399
399
402
407
412
412
413
413
413
413
413
413
414
414
414
415
415
418
418
421
423
428
428
431
431
436
436
439
440
445
445
450
450
450
450
453
458
463
463
463
468
468
468
468
471
471
476
476
476
476
481
486
491
491
491
491
494
494
494
494
495
499
503
503
505
505
509
509
509
509
513
518
523
523
523
523
523
523
527
540
554
554
556
569
584
597
597
609
616
626
640
650
660
660
674
684
688
688
691
691
696
701
701
706
706
711
716
721
721
726
726
731
736
736
736
736
736
736
736
738
743
744
745
745
745
746
747
748
748
749
749
750
751
751
754
757
760
766
766
768
771
776
781
784
792
805
819
837
837
837
837
838
838
838
838
838
838
839
839
839
839
839
841
841
841
843
844
844
844
844
846
846
846
848
850
850
851
851
853
853
853
853
853
853
854
854
854
854
854
856
856
856
857
857
859
859
862
862
864
864
864
864
864
864
864
864
864
864
866
866
868
868
868
869
871
875
880
880
880
881
883
888
893
895
895
899
903
908
913
913
913
913
913
914
916
918
918
920
923
928
933
933
933
933
934
936
941
941
941
941
941
944
949
949
950
951
954
955
955
958
958
960
966
977
978
983
986
994
997
1003
1010
1025
1025
1025
1027
1034
1037
1045
1054
1069
1069
1079
1079
1079
1079
1087
1099
1113
1132
1144
1171
1183
1209
1209
1231
1231
1231
1231
1231
1231
1231
1233
1233
1233
1233
1233
1233
1235
1235
1235
1235
1235
1235
1235
1235
1238
1238
1238
1238
1238
1238
1240
1240
1242
1242
1246
1246
1249
1254
1259
1259
1260
1260
1260
1260
1260
1260
1261
1261
1261
1262
1262
1265
1265
1268
1270
1275
1275
1278
1278
1283
1283
1286
1287
1292
1292
1297
1297
1297
1297
1300
1305
1310
1310
1310
1315
1315
1317
1317
1321
1321
1326
1326
1326
1326
1331
1336
1341
1341
1342
1342
1345
1345
1345
1345
1346
1350
1354
1354
1356
1356
1360
1360
1360
1360
1364
1369
1374
1374
1374
1374
1374
1374
1378
1392
1406
1406
1408
1421
1436
1449
1449
1461
1468
1478
1493
1503
1513
1513
1528
1538
1542
1542
1545
1545
1550
1555
1555
1560
1560
1565
1570
1575
1575
1580
1580
1585
1590
1590
1590
1590
1590
1590
1590
1592
1597
1598
1599
1599
1599
1600
1601
1602
1602
1603
1603
1604
1605
1605
1611
1614
1617
1623
1629
1632
1640
1647
1655
1658
1671
1692
1709
1733
1733
1733
1733
1734
1734
1734
1734
1734
1734
1735
1735
1735
1735
1735
1737
1737
1737
1739
1740
1740
1741
1742
1745
1745
1745
1747
1749
1749
1750
1752
1756
1756
1756
1756
1756
1756
1759
1759
1759
1759
1759
1761
1763
1763
1764
1764
1766
1766
1769
1769
1771
1771
1771
1771
1771
1771
1771
1771
1771
1771
1773
1775
1779
1779
1779
1780
1782
1786
1791
1791
1791
1792
1794
1799
1804
1806
1807
1811
1815
1820
1825
1825
1825
1825
1826
1829
1832
1834
1834
1838
1843
1848
1853
1853
1853
1854
1855
1857
1862
1863
1863
1864
1866
1870
1875
1875
1876
1878
1881
1884
1884
1887
1887
1889
1900
1914
1915
1921
1926
1938
1946
1958
1971
1986
1986
1986
1988
1995
2002
2014
2027
2042
2042
2052
2053
2053
2053
2061
2074
2088
2107
2125
2152
2164
2190
2190
2212
2212
2212
2212
2212
2212
2212
2215
2215
2215
2216
2216
2216
2218
2218
2218
2218
2218
2218
2218
2218
2221
2221
2221
2221
2221
2221
2225
2225
2227
2227
2231
2231
2234
2239
2244
2244
2245
2245
2245
2245
2245
2247
2250
2250
2250
2251
2251
2254
2255
2259
2263
2268
2268
2271
2271
2276
2281
2286
2291
2296
2296
2301
2301
2301
2301
2306
2311
2316
2316
2316
2321
2321
2323
2325
2329
2329
2334
2334
2334
2334
2339
2344
2349
2349
2350
2350
2353
2353
2353
2353
2354
2358
2362
2362
2365
2365
2369
2369
2369
2369
2374
2379
2384
2384
2384
2384
2384
2384
2388
2402
2416
2416
2420
2433
2448
2461
2461
2474
2484
2494
2509
2519
2529
2529
2544
2554
2558
2558
2562
2565
2570
2575
2575
2580
2580
2585
2590
2595
2595
2600
2600
2605
2610
2610
2610
2610
2610
2610
2614
2619
2623
2624
2625
2625
2625
2627
2628
2629
2633
2638
2639
2640
2641
2641
2647
2652
2661
2674
2685
2691
2701
2708
2716
2732
2746
2769
2786
2806
2806
2806
2806
2807
2807
2807
2807
2807
2807
2810
2812
2815
2820
2820
2822
2822
2822
2824
2827
2830
2833
2837
2842
2846
2850
2853
2858
2863
2868
2872
2877
2878
2882
2885
2889
2894
2899
2904
2909
2914
2914
2917
2922
2926
2931
2936
2941
2942
2945
2945
2950
2950
2950
2954
2959
2960
2960
2960
2960
2965
2970
2975
2980
2982
2982
2983
2988
2993
2998
2998
3001
3004
3009
3014
3019
3024
3029
3034
3039
3044
3049
3054
3059
3064
3069
3074
3079
3084
3089
3094
3099
3104
3109
3110
3110
3111
3114
3119
3124
3125
3125
3126
3131
3136
3141
3152
3158
3171
3174
3187
3193
3206
3216
3226
3240
3254
3260
3270
3283
3296
3311
3323
3338
3353
3364
3371
3386
3401
3416
3428
3443
3458
3458
3468
3469
3476
3482
3492
3507
3522
3546
3565
3590
3606
3631
3634
3658
3660
3664
3667
3667
3672
3675
3680
3683
3683
3686
3688
3688
3693
3693
3694
3694
3699
3699
3699
3699
3704
3705
3707
3709
3714
3717
3722
3726
3731
3734
3739
3744
3749
3754
3759
3762
3765
3770
3774
3779
3781
3786
3791
3794
3798
3801
3801
3804
3809
3814
3819
3824
3829
3834
3839
3844
3849
3854
3859
3864
3864
3869
3869
3869
3869
3874
3879
3884
3889
3890
3895
3900
3905
3910
3915
3918
3923
3928
3933
3938
3943
3948
3953
3953
3958
3958
3963
3966
3970
3975
3980
3985
3990
3990
3995
3996
4001
4003
4004
4006
4011
4016
4021
4024
4028
4031
4035
4040
4053
4068
4083
4098
4108
4121
4136
4149
4149
4162
4177
4192
4207
4217
4227
4242
4257
4267
4272
4272
4277
4282
4287
4292
4297
4302
4302
4307
4312
4317
4317
4322
4322
4327
4332
