0
2
2
2
2
2
2
2
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
7
7
9
10
11
14
19
24
24
24
25
25
28
31
42
43
43
47
52
65
77
91
102
112
132
166
189
245
245
245
245
245
245
245
245
245
247
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
251
253
254
254
256
257
257
257
258
258
258
258
258
258
258
258
258
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
265
266
271
276
281
281
282
282
287
287
290
290
291
292
295
296
299
299
299
299
299
299
299
299
299
302
304
306
306
306
306
316
326
326
326
326
326
326
326
326
326
331
344
359
374
375
375
384
389
392
392
398
407
425
460
480
515
544
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
554
557
558
558
558
561
565
565
565
565
565
565
565
565
565
565
565
565
565
565
568
569
569
569
572
576
576
576
576
576
576
576
586
596
611
621
636
651
666
676
681
686
691
693
693
693
693
693
693
693
694
696
696
696
698
698
698
698
698
698
698
698
699
699
703
703
703
703
703
703
703
708
708
710
713
716
720
725
729
729
729
730
730
733
736
747
749
749
753
758
771
784
798
810
820
845
879
907
962
962
962
962
962
962
962
962
962
964
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
966
967
968
970
970
970
970
970
970
970
970
970
970
970
970
970
970
970
970
972
974
975
975
978
979
979
979
982
982
982
982
982
982
982
982
982
986
988
992
992
992
992
992
992
992
992
992
992
992
992
992
992
992
992
992
992
992
992
993
993
994
994
997
999
1004
1009
1014
1014
1015
1015
1020
1020
1023
1023
1026
1029
1032
1035
1039
1039
1039
1039
1039
1039
1039
1039
1039
1042
1044
1047
1047
1047
1047
1057
1067
1067
1067
1067
1067
1067
1067
1067
1067
1072
1085
1100
1115
1116
1116
1125
1130
1134
1134
1140
1150
1170
1205
1225
1260
1289
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1300
1303
1305
1305
1305
1308
1312
1312
1312
1312
1312
1312
1312
1312
1312
1312
1312
1312
1312
1312
1315
1317
1317
1317
1320
1324
1324
1324
1324
1324
1324
1324
1334
1344
1359
1369
1384
1399
1414
1424
1429
1434
1439
1440
1440
1440
1440
1440
1442
1446
1450
1455
1455
1455
1460
1461
1461
1462
1462
1463
1468
1472
1477
1479
1484
1488
1493
1497
1501
1506
1511
1516
1521
1526
1531
1536
1541
1546
1554
1554
1556
1565
1575
1582
1597
1612
1624
1639
1654
1664
1679
1694
1709
1737
1770
1805
1840
1869
1926
1926
1926
1926
1926
1926
1926
1926
1926
1930
1934
1937
1937
1937
1937
1937
1941
1941
1941
1941
1941
1941
1941
1941
1941
1941
1941
1944
1947
1947
1947
1947
1947
1950
1950
1950
1950
1950
1950
1950
1950
1954
1954
1954
1958
1962
1965
1969
1974
1979
1984
1989
1989
1989
1989
1994
1999
1999
2001
2001
2001
2001
2001
2002
2002
2005
2008
2013
2017
2020
2022
2027
2028
2032
2034
2039
2042
2046
2050
2050
2055
2059
2064
2069
2074
2079
2084
2084
2085
2089
2094
2097
2102
2107
2112
2112
2112
2116
2119
2119
2121
2126
2131
2136
2141
2146
2151
2156
2161
2161
2165
2170
2175
2180
2185
2190
2195
2195
2200
2205
2210
2215
2220
2225
2230
2235
2240
2240
2240
2240
2240
2246
2256
2256
2256
2266
2269
2281
2281
2281
2281
2296
2311
2311
2321
2321
2332
2332
2332
2338
2348
2363
2378
2393
2408
2410
2422
2436
2446
2461
2475
2490
2505
2540
2575
2610
2645
2674
2709
2709
2709
2709
2709
2709
2709
2709
2709
2710
2712
2712
2712
2715
2719
2719
2719
2719
2719
2719
2719
2719
2719
2719
2719
2719
2719
2719
2719
2722
2726
2726
2726
2731
2736
2740
2740
2742
2747
2752
2752
2752
2752
2752
2752
2752
2752
2752
2752
2752
2752
2752
2757
2762
2767
2767
2772
2777
2782
2782
2782
2782
2785
2789
2789
2804
2814
2829
2844
2859
2874
2889
2904
2909
2914
2919
