0
0
1
2
2
2
3
3
4
5
5
6
7
8
8
9
10
11
12
13
14
15
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
29
29
30
31
31
33
34
36
37
37
37
38
40
40
40
41
45
48
49
52
52
59
60
62
75
81
88
101
110
125
148
175
199
216
216
216
216
216
216
216
217
217
217
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
219
219
220
221
221
222
223
223
223
223
224
224
225
225
225
225
225
225
225
225
225
225
225
225
226
226
226
226
226
227
227
228
228
228
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
229
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
231
231
231
231
231
231
231
231
231
231
231
231
231
231
231
231
232
232
233
233
234
234
234
235
235
235
235
235
235
235
235
235
236
236
236
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
238
238
239
239
240
241
242
242
242
242
242
242
242
243
244
245
246
247
248
248
251
251
251
253
255
258
258
259
261
261
263
263
263
264
264
264
264
264
264
264
264
264
265
265
265
265
265
265
265
266
266
266
266
266
267
271
271
273
278
278
282
282
287
287
290
292
297
299
302
307
307
311
311
315
317
317
319
319
319
323
323
323
323
324
324
324
324
324
324
324
324
324
324
324
325
325
327
327
329
329
332
336
336
336
339
341
342
346
346
348
348
348
350
353
354
355
358
363
365
366
369
373
377
382
385
394
408
408
423
428
438
448
462
471
474
480
480
491
496
496
496
496
496
496
499
504
504
507
509
522
522
532
538
552
562
565
574
588
603
630
658
676
685
695
720
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
748
749
749
749
749
749
749
749
749
749
749
749
749
749
750
750
750
751
751
751
751
751
751
751
752
752
752
752
752
752
753
753
753
753
753
753
753
753
753
754
754
754
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
755
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
756
757
757
758
758
758
758
759
759
759
759
759
759
759
759
759
759
759
760
760
760
760
760
760
761
761
761
761
761
761
761
761
761
761
761
761
761
761
761
762
762
763
763
763
763
763
764
764
764
764
764
764
764
764
764
764
764
764
765
765
765
765
765
765
765
765
765
765
765
765
765
766
766
767
767
767
767
767
767
767
767
767
767
767
768
768
769
769
769
769
770
770
770
770
771
771
772
773
773
774
775
775
775
775
775
775
775
775
776
776
777
777
777
777
777
777
778
778
779
779
779
779
780
780
780
780
780
780
780
781
781
781
781
781
781
782
783
783
783
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
784
785
785
785
785
788
793
793
793
793
796
801
801
802
806
806
810
814
814
814
819
824
824
829
829
833
833
837
837
837
839
840
842
842
842
842
842
842
842
842
842
842
842
844
844
844
848
848
852
852
853
853
858
863
866
871
876
881
881
882
883
883
883
883
884
884
886
886
888
888
890
894
894
894
898
902
902
902
902
902
902
902
902
902
902
902
906
906
906
906
906
906
906
906
910
910
913
913
913
918
933
948
963
978
993
1002
1012
1020
1034
1049
1059
1066
1081
1091
1101
1116
1131
1131
1131
1131
1131
1131
1131
1131
1131
1131
1131
1131
1131
1131
1131
1131
1132
1132
1133
1133
1133
1133
1134
1135
1135
1135
1135
1135
1135
1135
1135
1135
1135
1135
1135
1135
1135
1135
1135
1135
1136
1137
1137
1137
1138
1139
1139
1139
1139
1139
1140
1140
1140
1140
1140
1140
1140
1140
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1141
1142
1142
1142
1142
1142
1142
1142
1143
1143
1143
1143
1143
1144
1145
1145
1145
1145
1145
1145
1145
1145
1145
1145
1145
1145
1145
1146
1147
1151
1156
1160
1160
1165
1169
1169
1173
1177
1177
1181
1186
1190
1195
1200
1204
1208
1209
1210
1211
1212
1213
1213
1214
1215
1215
1215
1216
1216
1217
1218
1218
1219
1220
1221
1221
1222
1223
1224
1225
1226
1227
1228
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1242
1245
1246
1249
1253
1255
1259
1263
1264
1266
1267
1271
1274
1274
1276
1281
1286
1291
1294
1299
1305
1319
1325
1338
1353
1366
1380
1393
1403
1418
1441
1468
1489
1506
1506
1506
1507
1507
1507
1507
1508
1508
1508
1509
1509
1510
1510
1510
1511
1511
1511
1511
1511
1511
1511
1511
1511
1511
1512
1512
1512
1512
1512
1512
1512
1512
1512
1512
1512
1512
1512
1513
1513
1513
1514
1514
1515
1516
1517
1518
1519
1520
1521
1521
1522
1523
1524
1524
1525
1526
1527
1528
1529
1529
1529
1530
1530
1530
1531
1532
1532
1533
1534
1535
1535
1536
1536
1536
1537
1538
1539
1540
1541
1542
1542
1543
1543
1543
1544
1545
1546
1547
1548
1548
1548
1549
1549
1550
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1551
1552
1553
1553
1553
1554
1554
1554
1555
1555
1555
1555
1556
1557
1557
1557
1558
1559
1559
1559
1560
1561
1561
1562
1563
1564
1564
1564
1565
1565
1565
1566
1566
1567
1567
1568
1568
1568
1568
1568
1569
1569
1569
1569
1569
1569
1570
1571
1571
1571
1572
1573
1574
1575
1575
1575
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1586
1587
1588
1589
1590
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1599
1600
1601
1602
1602
1603
1604
1604
1605
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1615
1616
1616
1617
1617
1617
1617
1618
1618
1619
1620
1621
1622
1623
1623
1624
1625
1626
1627
1627
1627
1627
1628
1628
1629
1630
1631
1632
1633
1634
1635
1637
1641
1641
1643
1646
1651
1651
1653
1658
1659
1663
1663
1666
1670
1670
1670
1670
1670
1670
1671
1675
1676
1677
1679
1682
1682
1683
1684
1684
1685
1686
1687
1690
1694
1699
1703
1706
1711
1716
1719
1724
1728
1733
1737
1742
1746
1751
1756
1760
1765
1770
1775
1778
1783
1788
1790
1795
1796
1796
1801
1806
1809
1812
1817
1817
1817
1817
1817
1821
1825
1830
1835
1840
1845
1846
1850
1855
1858
1862
1867
1872
1877
1881
1886
1890
1895
1899
1904
1905
1910
1913
1913
1917
1922
1923
1928
1933
1938
1942
1947
1952
1957
1962
1967
1982
1997
2012
2027
2042
2053
2068
2083
2098
2112
2119
2133
2143
2158
2171
2171
2172
2175
2181
2187
2191
2206
2221
2226
2239
2254
2263
2275
2290
2305
2315
2330
2345
2360
2375
2403
2431
2454
2489
2504
2528
2556
2556
2556
2556
2556
2556
2556
2557
2557
2557
2558
2558
2559
2559
2559
2560
2560
2561
2561
2561
2561
2561
2561
2561
2561
2561
2561
2561
2561
2561
2561
2561
2561
2562
2562
2562
2562
2562
2562
2562
2562
2562
2562
2562
2562
2562
2563
2563
2563
2564
2564
2564
2564
2564
2564
2564
2565
2565
2566
2567
2567
2567
2568
2568
2568
2568
2568
2568
2568
2568
2568
2569
2569
2570
2571
2571
2571
2572
2573
2573
2573
2573
2573
2573
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2574
2575
2576
2576
2576
2576
2577
2578
2578
2578
2578
2579
2579
2579
2580
2581
2582
2582
2583
2583
2583
2583
2584
2584
2585
2586
2587
2588
2588
2589
2590
2591
2591
2592
2593
2594
2595
2596
2596
2597
2598
2599
2600
2601
2602
2602
2602
2603
2604
2604
2605
2606
2607
2608
2609
2610
2611
2611
2612
2613
2614
2615
2616
2616
2617
2617
2618
2619
2620
2621
2621
2622
2623
2624
2625
2625
2626
2626
2627
2627
2627
2627
2627
2628
2628
2629
2629
2630
2631
2632
2633
2633
2633
2634
2635
2636
2636
2637
2638
2639
2640
2641
2642
2642
2643
2644
2645
2646
2647
2648
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2660
2660
2661
2662
2663
2663
2664
2665
2666
2666
2667
2668
2669
2670
2671
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2682
2682
2683
2683
2683
2684
2684
2685
2685
2686
2687
2687
2688
2689
2690
2691
2692
2693
2693
2693
2694
2695
2696
2696
2697
2698
2699
2699
2700
2701
2702
2703
2704
2704
2705
2706
2707
2708
2709
2710
2710
2711
2712
2713
2714
2714
2714
2714
2714
2714
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2723
2723
2723
2723
2723
2723
2723
2724
2725
2725
2725
2726
2727
2728
2728
2728
2729
2730
2730
2730
2731
2732
2732
2732
2732
2732
2733
2734
2735
2735
2735
2736
2737
2738
2739
2739
2739
2739
2739
2740
2741
2741
2742
2743
2744
2744
2744
2744
2747
2747
2747
2747
2752
2757
2757
2757
2757
2762
2767
2767
2771
2776
2779
2784
2789
2791
2795
2800
2805
2805
2810
2814
2819
2823
2828
2828
2828
2833
2835
2839
2839
2839
2842
2846
2846
2846
2846
2846
2849
2853
2858
2858
2862
2867
2872
2877
2882
2885
2890
2895
2900
2905
2910
2915
2920
2923
2926
2930
2933
2936
2936
2940
2940
2944
2948
2952
2957
2962
2967
2972
2977
2982
2987
2987
2987
2987
2987
2990
2994
2994
2994
2994
2997
3002
3002
3002
3002
3004
3004
3004
3004
3009
3009
3014
3014
3014
3019
3034
3049
3064
3079
3094
3109
3119
3134
3148
3163
3178
3192
3207
3222
3237
3252
3267
3267
3267
3267
3267
3267
3267
3267
3267
3267
3267
3267
3267
3267
3267
3267
3268
3269
3270
3270
3270
3271
3272
3273
3273
3273
3274
3275
3275
3275
3275
3275
3275
3275
3276
3276
3277
3277
3277
3278
3279
3280
3280
3281
3282
3283
3283
3283
3283
3284
3285
3285
3285
3285
3286
3286
3287
3287
3288
3288
3288
3289
3289
3290
3290
3290
3290
3290
3290
3290
3290
3290
3290
3290
3290
3291
3292
3292
3292
3293
3294
3294
3294
3294
3294
3294
3294
3294
3294
3294
3294
3295
3296
3296
3296
3296
3297
3297
3297
3298
3299
3299
3300
3300
3301
3302
3302
3302
3302
3302
3303
3303
3303
3304
3304
3304
3305
3305
3306
3307
3311
3316
3320
3320
3325
3329
3329
3334
3338
3338
3343
3348
3353
3358
3363
3368
3373
3374
3375
3376
3377
3378
