0
0
0
0
0
0
0
3
3
3
3
3
3
6
6
6
9
9
9
9
11
14
17
17
19
20
22
25
29
34
36
40
44
47
51
56
56
56
56
56
56
57
62
62
65
65
67
67
73
77
82
91
96
108
122
134
138
139
142
144
155
177
201
219
249
281
292
335
393
444
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
522
522
522
523
523
523
523
523
523
523
523
523
523
523
524
524
525
526
526
526
527
527
528
531
531
531
531
531
531
531
531
531
531
531
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
536
536
536
536
536
536
538
538
538
538
538
538
538
538
538
538
538
538
538
538
538
538
538
538
538
538
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
541
541
545
545
550
550
550
554
556
560
560
560
560
560
560
560
560
560
561
564
564
566
569
569
571
574
576
580
584
587
587
587
587
587
587
587
587
588
592
596
596
597
598
600
603
604
605
609
614
619
619
619
622
623
625
625
625
629
634
638
638
638
638
638
638
638
638
638
638
638
638
638
638
638
638
638
639
639
639
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
644
644
652
652
664
673
673
673
673
680
680
690
690
696
704
717
719
719
719
721
721
727
737
741
748
762
762
762
762
762
762
763
769
775
780
793
793
793
793
795
799
800
806
812
822
836
838
838
838
838
840
840
845
851
860
874
874
874
874
875
875
875
875
876
881
881
881
896
907
922
954
961
976
991
1019
1048
1048
1057
1060
1079
1110
1110
1117
1118
1134
1163
1163
1167
1181
1201
1235
1235
1238
1252
1276
1310
1312
1312
1315
1317
1339
1394
1444
1501
1553
1614
1679
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1721
1724
1724
1724
1725
1725
1725
1725
1725
1725
1725
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1728
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1729
1730
1730
1730
1730
1730
1730
1730
1730
1730
1730
1731
1731
1731
1731
1731
1732
1732
1732
1732
1732
1732
1732
1732
1732
1732
1732
1732
1732
1732
1732
1732
1733
1734
1736
1736
1736
1736
1736
1736
1737
1739
1741
1745
1749
1749
1749
1749
1749
1749
1749
1749
1750
1751
1753
1753
1753
1753
1753
1753
1753
1756
1756
1760
1760
1760
1760
1760
1760
1760
1760
1764
1764
1768
1768
1768
1768
1768
1768
1768
1768
1768
1768
1770
1770
1770
1770
1770
1770
1770
1770
1774
1774
1777
1777
1777
1777
1777
1777
1777
1777
1777
1777
1777
1777
1779
1779
1779
1780
1780
1780
1780
1780
1780
1780
1780
1780
1780
1782
1784
1784
1784
1784
1784
1784
1787
1791
1794
1797
1801
1801
1801
1801
1801
1801
1804
1806
1809
1812
1817
1817
1817
1817
1817
1817
1818
1820
1823
1825
1829
1829
1829
1830
1831
1831
1831
1831
1832
1832
1834
1834
1834
1834
1834
1834
1834
1834
1834
1834
1835
1835
1835
1835
1835
1835
1835
1835
1835
1835
1835
1835
1835
1835
1835
1835
1837
1839
1843
1847
1851
1851
1851
1851
1851
1851
1851
1855
1855
1855
1857
1857
1857
1857
1857
1857
1857
1861
1861
1861
1865
1865
1865
1865
1866
1866
1867
1867
1867
1867
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1870
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1874
1875
1875
1875
1875
1876
1876
1876
1877
1877
1877
1879
1879
1879
1879
1879
1879
1879
1879
1879
1879
1879
1879
1879
1880
1883
1883
1886
1886
1892
1902
1902
1902
1902
1903
1906
1906
1909
1916
1916
1926
1926
1929
1933
1933
1943
1943
1943
1944
1944
1947
1947
1950
1950
1950
1951
1951
1951
1951
1955
1963
1963
1969
1969
1974
1984
1984
1989
2002
2017
2031
2031
2036
2049
2064
2078
2081
2081
2081
2082
2087
2087
2087
2087
2087
2087
2089
2089
2098
2108
2108
2108
2108
2108
2118
2118
2118
2118
2120
2129
2129
2129
2129
2132
2138
2138
2138
2138
2138
2138
2144
2158
2158
2158
2158
2158
2158
2158
2158
2158
2158
2158
2158
2168
2168
2174
2174
2174
2185
2205
2240
2260
2295
2329
2347
2378
2391
2422
2453
2458
2493
2527
2561
2593
2628
2648
2676
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2711
2713
2717
2717
2717
2717
2718
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2722
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2725
2728
2732
2732
2732
2732
2732
2732
2732
2732
2732
2732
2732
2732
2732
2732
2733
2736
2736
2736
2736
2736
2736
2739
2743
2743
2743
2743
2743
2743
2743
2743
2743
2743
2743
2746
2746
2746
2746
2746
2749
2753
2753
2753
2753
2753
2753
2753
2753
2753
2753
2755
2759
2759
2759
2759
2759
2759
2759
2759
2759
2759
2759
2759
2759
2759
2759
2759
2761
2765
2765
2775
2775
2784
2793
2793
2803
2813
2823
2833
2843
2853
2861
2876
2876
2890
2905
2915
2925
2926
2935
2940
2945
2950
2955
2960
2965
2970
2970
2970
2971
2971
2971
2971
2974
2974
2974
2974
2976
2979
2984
2984
2989
2992
2996
2998
3003
3007
3012
3015
3020
3025
3030
3035
3040
3045
3050
3055
3060
3065
3070
3075
3080
3080
3082
3086
3086
3093
3103
3117
3129
3143
3155
3169
3184
3198
3211
3226
3238
3253
3268
3283
3298
3308
3313
3328
3350
3381
3415
3450
3478
3513
3548
3558
3600
3657
3708
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3781
3783
3783
3783
3783
3783
3783
3783
3784
3784
3784
3784
3784
3784
3784
3787
3787
3787
3787
3789
3791
3792
3796
3799
3800
3803
3803
3805
3807
3812
3812
3817
3817
3817
3817
3817
3817
3817
3817
3819
3820
3822
3825
3826
3829
3833
3837
3838
3842
3847
3852
3857
3857
3857
3857
3857
3857
3857
3859
3861
3862
3864
3868
3868
3870
3873
3873
3873
3875
3879
3882
3887
3887
3887
3887
3887
3888
3888
3889
3891
3894
3897
3902
3902
3902
3904
3906
3906
3911
3916
3921
3926
3926
3926
3927
3929
3931
3931
3932
3936
3940
3943
3948
3948
3948
3953
3955
3958
3963
3967
3971
3976
3978
3978
3980
3980
3984
3984
3986
3988
3988
3988
3992
3995
3998
4003
4005
4008
4013
4017
4021
4026
4028
4030
4032
4032
4036
4036
4036
4036
4036
4036
4036
4036
4036
4038
4038
4038
4042
4044
4044
4049
4053
4057
4062
4065
4070
4075
4079
4084
4089
4094
4098
4102
4106
4106
4110
4114
4119
4123
4128
4133
4133
4135
4138
4143
4148
4152
4157
4162
4167
4172
4176
4180
4185
4190
4195
4200
4205
4210
4215
4220
4225
4228
4233
4236
4241
4246
4250
4255
4260
4265
4269
4273
4278
4282
4286
4291
4295
4300
4305
4310
4315
4320
4322
4322
4324
4329
4333
4335
4339
4343
4343
4345
4346
4346
4348
4348
4350
4350
4354
4357
4357
4358
4358
4359
4361
4361
4370
4370
4370
4370
4370
4373
4374
4378
4380
4381
4384
4385
4390
4398
4399
4399
4399
4399
4401
4411
4413
4418
4427
4438
4451
4466
4478
4493
4508
4511
4517
4527
4538
4551
4565
4580
4588
4603
4618
4621
4621
4625
4631
4639
4654
4669
4681
4696
4711
4714
4718
4725
4737
4752
4767
4782
4797
4812
4827
4836
4849
4858
4872
4882
4896
4911
4926
4941
4956
4970
4980
4991
5000
5009
5023
5038
5053
5068
5083
5084
5086
5090
5093
5100
5113
5116
5126
5136
5148
5152
5168
5180
5191
5225
5232
5248
5277
5308
5339
5339
5351
5354
5374
5407
5407
5427
5452
5486
5521
5541
5575
5610
5643
5678
5711
5746
5780
5814
5849
5859
5879
5907
5937
5965
6028
6078
6133
6202
6263
6327
6381
6381
6381
6382
6382
6382
6382
6382
6382
6382
6382
6382
6382
6382
6382
6382
6382
6382
6384
6384
6384
6384
6384
6387
6387
6387
6387
6387
6387
6387
6387
6389
6389
6389
6389
6389
6391
6392
6396
6397
6399
6400
6400
6400
6400
6400
6400
6400
6404
6404
6404
6404
6404
6405
6405
6408
6408
6409
6409
6409
6412
6415
6416
6416
6416
6416
6419
6419
6419
6419
6419
6419
6422
6422
6422
6422
6422
6423
6423
6423
6423
6423
6423
6423
6424
6426
6429
6429
6429
6429
6432
6432
6432
6432
6432
6432
6432
6432
6432
6432
6432
6432
6436
6436
6436
6436
6436
6436
6436
6436
6436
6436
6436
6436
6439
6439
6439
6439
6440
6442
6442
6444
6444
6445
6448
6448
6452
6452
6452
6452
6453
6457
6459
6459
6463
6464
6467
6469
6470
6473
6473
6473
6474
6475
6478
6478
6479
6480
6482
6486
6491
6496
6500
6504
6508
6510
6511
6512
6516
6520
6525
6530
6535
6540
6545
6545
6545
6546
6548
6551
6556
6561
6566
6571
6576
6578
6579
6581
6586
6591
6591
6596
6600
6605
6610
6614
6617
6620
6625
6630
6635
6640
6640
6645
6645
6645
6649
6651
6652
6657
6662
6667
6667
6670
6670
6670
6671
6671
6672
6674
6674
6678
6680
6685
6688
6688
6693
6696
6701
6706
6710
6715
6718
6723
6727
6729
6729
6730
6734
6736
6736
6736
6739
6743
6747
6752
6757
6760
6765
6770
6770
6772
6777
6782
6787
6792
6797
6801
6806
6811
6811
6816
6820
6825
6830
6835
6840
6845
6850
6855
6855
6858
6863
6868
6873
6878
6883
6888
6893
6898
6898
6900
6904
6907
6910
6914
6919
6923
6923
6927
6927
6930
6931
6934
6938
6940
6942
6944
6946
6949
6953
6953
6954
6955
6958
6961
6961
6962
6964
6967
6968
6973
6978
6983
6988
6993
6998
7003
7008
7013
7013
7015
7015
7018
7022
7026
7031
7036
7041
7046
7050
7053
7056
7060
7064
7068
7073
7076
7080
7085
7089
7092
7097
7102
7107
7111
7115
7118
7122
7126
7126
7131
7131
7136
7141
7141
7141
7141
7141
7141
7146
7148
7152
7157
7162
7167
7172
7177
7182
7187
7187
7187
7188
7193
7197
7202
7207
7212
7217
7222
7222
7222
7222
7223
7228
7228
7232
7237
7240
7245
7250
7250
7252
7252
7252
7252
7257
7260
7265
7270
7274
7274
7274
7277
7282
7287
7292
7297
7302
7307
7307
7307
7313
7313
7313
7313
7315
7323
7323
7333
7343
7343
7352
7352
7366
7380
7380
7390
7390
7396
7406
7406
7416
7430
7430
7445
7451
7464
7479
7494
7509
7512
7521
7531
7531
7541
7546
7554
7561
7568
7573
7573
7573
7573
7585
7600
7600
7610
7619
7632
7646
7656
7671
7686
7701
7716
7726
7741
7756
7771
7786
7790
7800
7812
7826
7839
7844
7849
7849
7852
7854
7867
7882
7897
7912
7920
7932
7947
7956
7971
7982
7997
8012
8027
8042
8052
8067
8082
8097
8109
8109
8109
8109
8109
8109
8124
8139
8139
8139
8139
8145
8155
8155
8155
8163
8163
8163
8163
8178
8178
8193
8193
8193
8205
8239
8273
8308
8343
8378
8413
8444
8479
8510
8541
8572
8607
8641
8676
8711
8746
8781
8814
8849
8849
8849
8849
8849
8849
8849
8849
8849
8849
8849
8849
8849
8849
8849
8850
8852
8852
8852
8852
8855
8859
8859
8859
8859
8859
8859
8859
8859
8860
8862
8862
8862
8864
8869
8874
8874
8874
8876
8880
8885
8885
8885
8886
8886
8888
8888
8888
8888
8888
8891
8895
8895
8895
8895
8895
8898
8898
8903
8903
8903
8906
8906
8910
8910
8910
8910
8910
8910
8910
8910
8910
8910
8910
8910
8910
8910
8910
8912
8917
8922
8922
8922
8925
8929
8929
8929
8929
8932
8936
8936
8936
8936
8938
8943
8948
8948
8948
8948
8948
8953
8958
8963
8963
8963
8963
8964
8966
8966
8966
8968
8968
8968
8973
8978
8978
8981
8981
8986
8991
8991
8991
8991
8991
8991
8991
8991
8991
8993
8998
9003
9003
9003
9003
9006
9010
9010
9010
9013
9013
9013
9016
9016
9016
9018
9018
9022
9027
9027
9037
9037
9047
9057
9057
9067
9082
9092
9102
9112
9127
9142
9157
9157
9171
9186
9201
9216
9231
9246
9251
9256
9261
9266
9271
9276
9281
