2446576065
510483813
247137433
230766715
198622638
196614823
176556694
162396042
148777561
131171696
129958885
126949825
124945513
123459612
122802558
120263368
118019968
112656897
111416962
111355258
110861620
110715180
104985869
100401926
99847464
98484085
92659043
92534536
91844727
90968027
89809033
87622136
87502056
87159944
77681134
76135488
75007717
73149306
72543379
72057064
70900830
70135720
69267443
68493230
67057642
66619694
66154529
65527501
62022710
61865403
60963778
60440148
60274360
60224249
57824473
57252594
56496601
55292354
53604663
53585858
53494292
51796987
51253311
51033096
50880935
49786928
49346011
46552769
46474733
46396429
46255593
45931790
44798478
44582712
44197251
43978958
42961472
42954109
42736692
42195325
41868054
41784989
40736270
40131946
39900808
39598367
39134746
38862842
38437714
38280315
38054041
38019708
37777116
36797282
36559978
36480632
36385746
36300050
35936515
35915825
35274950
35058461
34338026
33271637
33190040
33109627
32254869
32221885
31730672
31503770
31398838
31034288
30679231
30651711
30377170
30214890
30150728
29579707
29207713
29095918
28045148
27648325
27397246
27245051
27166616
27104672
27099606
27007384
26981752
26670338
26478343
26241444
25340018
24800594
24592375
24569286
24568940
24479909
23970104
23841897
23488094
22637093
22258158
21911562
21663870
21474707
21431384
21160546
21047607
21002168
20829124
20615636
20289939
20273726
20119162
20090172
20069487
19676106
19300480
19237170
19198034
19045087
18873195
18604575
18439423
18328413
18286263
18011977
17916257
17788250
17651682
17261544
17224325
17156737
17020889
16703977
16495982
16492759
16433887
16387544
15787228
15743954
15666639
15650565
15559177
15551655
15461538
15460788
15316208
15283673
15254948
15152798
14874373
14626796
14595145
14583003
14414424
14413341
14400583
14335948
14212242
14193619
14166652
14085999
13942740
13877516
13775494
13709371
13381814
13327383
13313102
13209304
13128045
13057862
13039034
12966985
12965354
12687227
12457255
12425135
12163990
12104521
12031639
12017210
11878926
11797642
11780594
11646646
11459492
11305438
11239403
11223624
11187746
11152998
11091436
11084492
11079712
10976316
10956450
10922344
10772889
10611984
10578505
10563201
10481351
10392005
10307463
10145934
10121451
10090457
9804620
9776062
9710637
9623201
9452422
9436295
9378811
9275582
9233732
9216749
9076008
9056909
9008238
8732417
8701439
8667668
8661003
8617575
8563660
8450383
8407708
8145760
7679887
7607922
7594907
7541542
7536452
7501182
7494678
7465356
7352200
7186601
7104013
7046170
6938467
6892816
6874611
6717734
6648112
6609049
6569547
6409487
6371284
6279560
6274701
6076850
6001919
5966065
5865938
5861758
5848459
5709500
5683828
5680532
5485589
5454996
5449025
5436260
5410053
5397743
5308686
5302506
5207403
5108261
5088626
5075947
5069466
5069131
5058644
4985569
4895256
4871687
4853030
4850921
4771811
4758221
4752339
4739044
4738845
4668273
4648506
4617130
4597254
4574718
4565809
4552344
4473463
4451947
4445177
4421348
4389227
4386188
4371125
4355107
4338175
4278775
4230241
4221031
4211506
4203166
4190696
4186394
4131562
4089361
4043867
4038158
4016787
3997821
3952876
3911648
3894792
3891288
3880101
3801039
3778137
3775498
3770762
3766446
3760279
3736007
3694749
3687304
3681779
3616872
3598013
3589929
3580361
3580048
3578492
3571868
3570972
3569325
3542683
3535557
3494059
3476060
3460115
3396800
3376170
3326475
3302074
3295964
3281506
3246487
3243788
3231711
3226126
3222335
3197876
3142494
3137981
3123985
3100480
3094371
3061747
3026872
3023371
3012102
3009204
3008195
2992532
2992080
2985109
2971624
2961843
2936888
2931522
2928144
2911253
2896887
2891203
2890898
2882169
2804756
2790945
2789555
2780858
2736604
2732089
2730003
2719056
2702384
2701826
2700324
2693707
2689431
2667099
2650913
2639260
2635172
2631470
2631118
2572747
2550313
2548645
2541281
2519473
2502443
2496363
2486486
2484348
2455116
2451686
2438538
2394534
2377593
2368107
2358120
2303169
2276790
2275016
2267545
2262387
2259754
2253988
2231347
2222656
2220398
2217067
2202550
2189767
2181111
2180680
2170724
2153572
2132259
2084520
2074949
2039926
2033207
2011912
2009174
1999079
1987359
1979946
1960776
1931983
1913736
1898626
1896157
1883048
1869477
1866471
1857511
1839569
1833988
1824893
1817684
1804576
1801154
1798975
1759931
1742668
1729222
1722216
1712445
1692159
1685058
1683372
1657003
1648498
1644960
1644724
1643347
1630340
1605448
1593664
1591996
1590467
1583475
1523514
1523487
1523061
1517526
1515288
1514557
1508769
1491266
1490036
1465706
1464284
1460121
1451485
1448941
1448557
1448099
1444233
1395687
1395451
1387659
1370385
1366255
1364218
1362450
1350715
1339818
1336552
1327839
1307632
1297942
1294137
1281812
1268127
1261615
1244016
1235831
1235529
1234918
1233258
1224855
1224415
1220192
1217445
1209581
1207289
1196988
1187110
1182080
1175925
1168029
1165588
1160720
1159781
1153689
1150094
1149879
1144285
1139353
1131017
1128131
1126265
1121291
1115842
1105568
1102915
1083402
1082259
1069948
1059328
1044539
1041845
1041695
1035869
1025399
1024187
1016617
1013279
1012969
1007962
1000322
992639
992503
989550
988382
983394
967234
960962
960379
958182
953742
949570
936382
932022
924772
920771
919756
919574
910384
910056
904654
890594
882899
878980
874118
864061
856860
855812
853278
849561
830670
807642
803676
801804
793222
791975
791337
787744
784833
784726
779673
776838
774383
766669
764207
761147
755948
746565
745411
742810
742692
728709
719856
719120
717470
714297
713977
713941
708079
703572
700619
699647
687606
684547
677441
674279
670889
667668
667366
662587
659865
659520
651239
645380
642791
638597
631000
629681
623800
618486
609404
607331
605148
602654
598115
597234
596318
593894
593326
588259
587172
586434
579774
578457
574666
572165
571789
571632
570797
567527
566567
563117
559136
555858
555396
555309
553842
553224
551752
551609
549982
545081
543426
542426
540383
539420
538368
537804
537097
533474
530815
529756
524066
519123
518717
518223
518088
516246
515187
512288
511840
508724
506741
504873
503192
501113
500722
500135
499779
498980
498105
497780
496751
496096
494561
494114
493364
492292
490269
490132
488376
486941
486741
481105
474574
474536
472184
471271
466249
465289
462006
461122
457341
444946
443506
440446
439952
438735
436999
435854
427970
425628
421773
421217
419548
407879
400758
399717
397520
397127
396075
395578
394710
392116
388827
388787
387573
380792
380252
377173
375384
373510
372286
370825
368763
367218
363664
362652
360095
357206
356123
352419
349724
349582
347776
344466
344026
340349
340263
335529
334772
333081
332603
332567
328728
328593
328280
325609
324368
321660
320418
315088
311973
311016
310970
303907
302228
300552
299165
298169
298164
296139
293111
292276
291376
290842
289581
287834
287667
285756
283594
283353
283162
282808
282288
277827
275564
273917
271889
271881
269247
266703
265809
262352
261114
256572
253685
253211
252703
252080
248645
248231
247551
247532
246164
245906
245360
244251
244042
242180
241874
241624
238417
238133
237960
237639
237585
237047
237000
234982
233824
233218
232545
232264
231857
230966
229860
229380
227807
227621
227328
226776
226710
226467
226066
225945
225389
224993
224833
224049
223643
223606
222645
220626
220052
219303
218740
218304
218134
215900
215763
215599
214293
214101
213920
213563
213328
212704
210812
210541
209731
208625
207073
206214
206095
203997
203857
203767
202909
202793
200361
197265
196857
196766
195675
192740
192133
191802
190582
190482
189735
189381
189306
188280
188211
187997
187828
186955
186100
184819
184104
182992
182336
181747
180219
179948
179448
179314
178987
178055
177413
176605
176586
176501
176408
174957
173757
173380
172626
172348
171778
171750
171068
168743
168199
168129
168042
167969
167727
166757
166638
165602
164707
164410
164392
164049
163309
163173
163004
162042
161439
160894
159702
158076
157903
157217
156943
156927
156711
156670
156597
156541
156257
156116
156112
156107
155394
155341
154324
152301
151582
151537
151485
150524
150100
149413
148813
148799
148409
147703
146159
145767
144896
144340
144226
144214
144010
143147
142828
142563
142519
142434
141417
140959
140621
140265
140056
139594
138989
138674
138431
138203
138200
138106
137098
137000
136743
136586
136122
136019
135168
135075
135055
134703
134558
133969
133741
133648
133114
132564
131909
131425
131287
130676
130482
130061
129672
129605
128841
128487
128220
128034
127871
127682
127411
126802
126202
125596
125460
125405
125391
125382
125079
125052
124948
124417
123947
123915
122830
122742
122365
121626
121542
121484
121401
120190
119911
119448
118669
118651
118414
118375
118011
117525
117255
117141
116667
116461
115984
115202
114225
113200
113188
113135
112542
112475
111944
111375
111107
110471
109818
109743
109421
109408
109218
109218
108925
108714
108672
108323
107846
107814
107774
107262
107186
106459
105949
105456
105249
105208
105091
104757
104269
104267
103412
103100
103071
103026
102930
102427
101667
101537
100537
100475
99766
99695
99137
99048
99021
98943
98517
98435
98423
98249
98223
97906
97488
97182
96880
96849
96807
96569
96552
96427
96324
96212
95924
95796
95612
95099
94917
94837
94273
94082
93992
93971
93934
93920
93783
93733
93682
93620
93401
92998
92937
92677
92599
91989
91841
91640
90642
90580
90229
90146
89782
89368
89106
88686
88467
88246
87963
87740
87501
87446
87434
87428
87382
86885
86883
86875
86597
86418
86237
86158
86040
85479
84833
84509
84293
84194
84092
84038
83800
83424
83410
83267
83141
83140
83041
82387
82335
82215
82203
81964
81927
81847
81824
81569
81568
81453
81239
81065
80846
80822
80714
80708
80701
80607
80554
80326
80300
80052
79758
79638
79467
79136
78469
78463
78292
78207
78059
78053
77761
77717
77535
77502
77451
77435
77231
77213
76955
76111
75902
75859
75426
75303
75225
74740
74700
74668
74513
74431
74294
73956
73832
73701
73687
73580
73552
73542
73464
73363
73345
73220
73035
72879
72649
72546
72208
72110
71565
70900
70857
70753
70657
70537
70488
70433
70034
69909
69855
69683
69520
69365
69211
69063
68816
68595
68524
68461
68390
68284
68227
67803
67496
67393
67326
67222
67099
66967
66529
66454
66410
66164
65795
65707
65677
65174
65127
65124
65072
65027
65009
64772
64673
64429
64415
64413
64412
63923
63913
63709
63596
63269
63140
63080
63004
62999
62893
62866
62601
62520
62309
62216
62103
61703
61677
61604
61566
61523
61482
61472
61443
61436
61400
61328
61299
61263
61207
60905
60826
60669
60626
59977
59741
59516
59163
58836
58755
58434
58313
58189
58185
58151
58025
57782
57638
57582
57533
57494
56954
56941
56932
56704
56674
56595
55911
55819
55780
55539
55461
55381
55307
55087
54694
54561
54484
54416
54303
54303
54256
54208
54169
54090
54006
53964
53895
53788
53757
53518
53491
53428
53409
52992
52771
52641
52619
52367
52258
52251
52237
52221
52162
52145
52044
51705
51644
51394
51257
51196
51156
51130
50964
50883
50512
50136
49941
49860
49721
49696
49651
49347
49337
49287
49280
49277
49274
49246
49221
49214
49196
49165
49153
48881
48798
48767
48532
48418
48402
48215
48096
48078
47937
47886
47681
47555
47288
47175
47144
47105
47088
47003
46959
46745
46692
46461
46423
46284
46204
46118
46104
46051
45972
45740
45545
45380
45246
45245
45208
45077
44968
44967
44823
44814
44770
44749
44687
44640
44569
44493
44440
44162
44118
44095
43987
43932
43865
43778
43724
43638
43461
43246
43206
43016
42883
42883
42710
42708
42509
42501
42500
42436
42397
42234
42012
41968
41902
41755
41708
41512
41270
41235
41169
41142
41107
41084
40926
40866
40705
40692
40516
40416
40040
40025
39926
39675
39598
39486
39443
39249
39014
38860
38711
38674
38376
38363
38148
38005
37926
37787
37669
37663
37523
37513
37202
37171
37031
37008
36870
36852
36825
36824
36824
36807
36740
36640
36582
36563
36471
36450
36305
36255
36202
36146
36033
35922
35707
35432
35385
35368
35365
35364
35338
35312
35277
35099
35012
34812
34771
34645
34517
34304
34287
34112
34111
34059
33945
33837
33624
33517
33454
33451
33223
33163
33152
32946
32855
32789
32672
32650
32448
32358
32260
32252
32241
32228
32224
32050
32045
31961
31937
31876
31798
31792
31709
31689
31668
31646
31624
31591
31566
31462
31423
31423
31406
31371
31348
31339
31263
31259
31202
31183
31077
31018
30988
30936
30893
30834
30785
30769
30689
30644
30622
30603
30514
30416
30298
30267
30259
30122
30064
30034
30007
29972
29968
29918
29908
29793
29670
29661
29660
29653
29609
29600
29524
29419
29400
29336
29276
29275
29206
29002
28992
28934
28908
28907
28901
28784
28746
28743
28716
28523
28496
28386
28127
28101
27998
27729
27726
27691
27657
27476
27439
27388
27333
27314
27246
27234
27192
27158
27147
27120
27093
27082
27040
27013
26999
26864
26836
26831
26827
26786
26780
26761
26758
26721
26693
26620
26506
26484
26469
26376
26343
26283
26227
26216
26083
26056
26055
26025
25913
25808
25798
25769
25686
25671
25580
25514
25389
25370
25366
25336
25312
25298
25289
25191
25190
25143
25050
25004
24960
24875
24802
24767
24572
24510
24481
24305
24203
24114
24041
24032
23976
23932
23921
23909
23868
23842
23835
23786
23755
23730
23693
23657
23648
23645
23644
23634
23588
23529
23511
23504
23493
23465
23418
23334
23318
23315
23274
23197
23181
23160
23025
23021
22955
22906
22897
22782
22763
22732
22722
22706
22622
22568
22558
22507
22391
22390
22379
22360
22336
22332
22287
22271
22269
22215
22189
22171
22145
22125
22090
22087
22058
22027
21920
21911
21910
21888
21876
21830
21732
21711
21710
21705
21638
21622
21579
21579
21494
21487
21448
21379
21324
21305
21259
21210
21194
21101
21024
20968
20874
20744
20698
20672
20638
20590
20582
20439
20436
20429
20279
20269
20262
20221
20208
20198
20096
20057
20046
19961
19942
19937
19894
19891
19798
19750
19695
19674
19670
19610
19607
19599
19442
19434
19407
19398
19391
19348
19279
19196
19173
19136
19122
19087
19075
19070
19042
19019
19017
18996
18992
18972
18944
18925
18908
18811
18809
18770
18667
18652
18651
18619
18614
18574
18552
18505
18504
18489
18368
18364
18338
18275
18271
18195
18158
18118
18096
18080
18079
18044
18040
18004
18001
17989
17988
17934
17924
17902
17873
17864
17818
17770
17753
17713
17691
17686
17683
17656
17651
17568
17558
17506
17501
17453
17444
17433
17365
17304
17284
17250
17219
17206
17169
17148
17146
17126
17112
17105
17084
17072
17048
17037
17022
17008
16917
16915
16901
16841
16765
16765
16743
16742
16730
16700
16681
16674
16602
16464
16453
16448
16399
16377
16358
16354
16327
16296
16248
16230
16209
16164
16146
16062
16050
16012
15965
15896
15885
15875
15844
15843
15813
15764
15734
15708
15683
15665
15655
15608
15575
15567
15566
15506
15379
15359
15326
15316
15292
15286
15194
15184
15180
15054
15033
15029
15007
15003
14974
14930
14926
14859
14855
14853
14821
14781
14743
14725
14714
14688
14557
14494
14486
14430
14417
14379
14346
14338
14318
14315
14274
14256
14249
14220
14217
14210
14202
14182
14157
14125
14096
14088
14085
14044
14041
14024
13990
13987
13961
13959
13947
13941
13937
13897
13863
13807
13759
13738
13719
13717
13711
13708
13642
13614
13601
13590
13587
13552
13546
13520
13462
13445
13445
13437
13408
13396
13390
13355
13298
13281
13280
13244
13220
13189
13149
13126
13103
13102
13097
13066
12993
12966
12966
12962
12957
12937
12936
12917
12909
12904
12898
12871
12838
12836
12835
12834
12818
12813
12803
12793
12785
12780
12774
12762
12648
12644
12598
12595
12587
12582
12577
12558
12522
12518
12516
12490
12482
12467
12462
12461
12461
12443
12417
12400
12392
12351
12349
12344
12317
12299
12284
12276
12267
12248
12242
12177
12176
12134
12131
12122
12099
12084
12014
12007
11983
11958
11953
11949
11923
11921
11856
11851
11840
11831
11829
11824
11778
11630
11625
11605
11576
11574
11568
11566
11549
11546
11528
11517
11481
11476
11472
11461
11429
11429
11414
11410
11403
11372
11358
11351
11347
11322
11319
11302
11259
11252
11242
11231
11231
11208
11203
11178
11176
11175
11149
11148
11143
11140
11126
11116
11116
11097
11092
11086
11080
11061
11035
10930
10924
10917
10910
10909
10902
10901
10897
10895
10854
10795
10775
10744
10739
10738
10679
10619
10597
10593
10573
10571
10565
10556
10549
10548
10501
10500
10468
10468
10441
10399
10394
10378
10305
10294
10291
10274
10272
10257
10254
10213
10180
10175
10172
10172
10158
10157
10142
10131
10110
10104
10081
10078
10062
10054
10053
10044
10043
10040
9987
9987
9954
9928
9928
9918
9899
9864
9862
9860
9854
9849
9840
9808
9806
9786
9770
9766
9758
9725
9717
9694
9691
9686
9674
9673
9655
9629
9627
9624
9582
9569
9566
9530
9529
9513
9509
9508
9492
9489
9478
9429
9414
9402
9372
9371
9359
9350
9339
9328
9310
9275
9252
9248
9244
9232
9230
9221
9204
9182
9173
9152
9144
9129
9121
9120
9101
9059
9058
9038
9029
9021
8990
8989
8984
8976
8974
8970
8965
8947
8938
8924
8887
8884
8859
8859
8843
8839
8835
8827
8823
8822
8820
8819
8818
8808
8803
8795
8795
8784
8771
8745
8743
8737
8724
8710
8696
8682
8658
8657
8656
8652
8651
8644
8638
8638
8634
8626
8624
8622
8614
8613
8594
8594
8589
8581
8550
8530
8526
8503
8498
8496
8494
8480
8464
8463
8459
8457
8456
8447
8434
8427
8415
8399
8390
8389
8369
8367
8366
8365
8363
8352
8350
8341
8332
8322
8319
8313
8306
8294
8266
8264
8261
8255
8247
8246
8237
8235
8225
8221
8220
8216
8192
8145
8136
8131
8128
8110
8104
8092
8085
8068
8037
8023
8022
8002
7993
7979
7972
7966
7963
7956
7949
7944
7939
7932
7927
7924
7924
7917
7909
7901
7886
7880
7865
7855
7851
7848
7844
7837
7830
7820
7813
7810
7809
7804
7792
7789
7785
7775
7774
7761
7751
7748
7739
7737
7719
7710
7699
7691
7676
7670
7652
7650
7649
7638
7637
7636
7625
7624
7622
7591
7587
7585
7568
7567
7562
7542
7538
7538
7528
7528
7523
7505
7475
7470
7448
7438
7427
7426
7423
7420
7417
7390
7385
7377
7372
7364
7363
7337
7337
7328
7327
7303
7302
7293
7280
7262
7244
7228
7223
7221
7184
7180
7172
7163
7149
7143
7137
7134
7099
7096
7090
7083
7078
7076
7075
7063
7054
7052
7048
7029
7023
7021
7002
6994
6987
6977
6976
6974
6971
6964
6955
6952
6936
6935
6910
6909
6893
6889
6871
6863
6855
6852
6834
6833
6822
6810
6806
6800
6788
6784
6777
6777
6768
6745
6739
6738
6727
6727
6716
6703
6680
6677
6674
6669
6660
6645
6643
6642
6633
6633
6632
6624
6617
6602
6586
6582
6578
6576
6571
6556
6545
6544
6543
6536
6520
6512
6511
6480
6462
6457
6452
6447
6445
6433
6430
6427
6401
6390
6386
6381
6378
6376
6375
6372
6372
6351
6350
6343
6343
6339
6330
6327
6320
6318
6297
6293
6293
6288
6287
6278
6275
6273
6272
6265
6254
6247
6244
6244
6228
6226
6223
6223
6219
6213
6211
6195
6187
6183
6182
6182
6180
6178
6176
6172
6169
6167
6167
6152
6148
6145
6145
6141
6141
6139
6139
6138
6138
6129
6123
6105
6100
6098
6088
6071
6068
6062
6053
6045
6044
6030
6028
6027
6015
6015
6010
6001
5998
5989
5986
5984
5980
5979
5974
5967
5952
5946
5938
5935
5932
5925
5919
5905
5905
5901
5894
5892
5879
5872
5868
5856
5850
5850
5845
5830
5830
5829
5827
5827
5824
5813
5808
5795
5795
5784
5778
5777
5773
5765
5745
5743
5737
5734
5731
5728
5724
5686
5684
5682
5681
5680
5679
5677
5674
5670
5667
5648
5647
5643
5642
5640
5639
5637
5624
5621
5600
5595
5594
5589
5588
5585
5585
5568
5564
5535
5521
5520
5519
5519
5511
5501
5499
5494
5494
5487
5481
5463
5459
5457
5453
5453
5447
5444
5428
5426
5426
5413
5410
5392
5389
5384
5374
5373
5373
5368
5354
5354
5354
5350
5348
5337
5336
5326
5325
5310
5297
5281
5281
5272
5272
5269
5266
5265
5262
5245
5244
5226
5210
5207
5206
5187
5184
5176
5175
5174
5171
5141
5136
5128
5118
5112
5110
5109
5105
5102
5101
5094
5089
5086
5083
5070
5070
5065
5065
5059
5054
5052
5049
5047
5029
5017
5016
5001
4998
4990
4985
4972
4970
4964
4953
4952
4941
4936
4928
4924
4920
4920
4917
4914
4912
4900
4891
4882
4882
4879
4877
4868
4867
4864
4860
4860
4859
4855
4841
4841
4838
4837
4834
4832
4832
4829
4805
4804
4792
4788
4786
4779
4774
4764
4759
4758
4752
4745
4740
4735
4731
4720
4714
4714
4712
4702
4702
4692
4691
4677
4676
4668
4664
4656
4644
4643
4643
4634
4631
4628
4612
4604
4602
4596
4588
4585
4580
4580
4580
4567
4566
4566
4563
4561
4558
4558
4548
4548
4548
4546
4535
4532
4529
4528
4527
4526
4525
4524
4522
4521
4521
4521
4519
4515
4514
4509
4496
4493
4485
4483
4479
4476
4467
4466
4462
4453
4451
4448
4403
4396
4394
4383
4380
4377
4376
4376
4375
4374
4364
4364
4360
4354
4352
4348
4340
4331
4326
4324
4321
4319
4312
4309
4306
4304
4303
4301
4298
4294
4292
4289
4288
4284
4281
4281
4280
4272
4269
4265
4262
4253
4235
4233
4231
4229
4223
4221
4214
4213
4212
4211
4210
4208
4206
4202
4200
4199
4189
4185
4179
4173
4163
4162
4155
4149
4148
4147
4135
4133
4133
4123
4120
4120
4118
4116
4116
4114
4112
4108
4102
4089
4082
4081
4076
4070
4066
4065
4059
4052
4051
4051
4050
4047
4047
4043
4031
4031
4024
4018
4012
4008
4006
4005
4005
4003
3996
3996
3995
3992
3990
3988
3983
3982
3981
3981
3980
3977
3976
3972
3971
3966
3965
3965
3963
3957
3943
3941
3936
3934
3932
3920
3920
3919
3915
3913
3908
3895
3892
3890
3885
3883
3883
3883
3880
3876
3870
3847
3841
3829
3818
3806
3805
3803
3800
3799
3795
3794
3790
3789
3784
3776
3774
3767
3766
3759
3758
3754
3754
3752
3751
3750
3749
3746
3741
3740
3740
3737
3730
3727
3723
3721
3714
3711
3705
3703
3699
3689
3688
3681
3677
3676
3675
3671
3669
3660
3655
3648
3645
3644
3644
3642
3641
3640
3638
3634
3632
3629
3628
3626
3623
3622
3621
3619
3616
3614
3613
3613
3611
3606
3601
3594
3592
3580
3573
3570
3565
3564
3554
3552
3545
3540
3536
3535
3530
3523
3522
3517
3516
3514
3512
3508
3507
3504
3504
3503
3503
3498
3497
3493
3490
3483
3483
3480
3477
3477
3473
3472
3471
3470
3468
3461
3452
3450
3448
3445
3444
3439
3439
3433
3432
3423
3407
3406
3399
3397
3396
3395
3394
3394
3394
3392
3390
3388
3386
3378
3378
3377
3374
3359
3350
3344
3342
3337
3336
3330
3330
3328
3327
3326
3322
3318
3299
3298
3297
3296
3294
3291
3288
3286
3278
3277
3277
3270
3269
3266
3266
3263
3262
3257
3253
3248
3248
3248
3242
3241
3231
3231
3223
3220
3220
3219
3219
3217
3215
3215
3212
3210
3208
3201
3201
3200
3196
3195
3194
3193
3192
3187
3187
3186
3182
3180
3177
3173
3173
3172
3168
3166
3165
3165
3163
3163
3162
3161
3159
3146
3141
3141
3136
3135
3135
3135
3132
3130
3128
3128
3127
3123
3122
3118
3115
3114
3112
3112
3109
3108
3108
3093
3076
3075
3072
3068
3067
3065
3062
3061
3061
3060
3058
3055
3054
3052
3051
3049
3049
3045
3044
3044
3043
3042
3041
3040
3034
3033
3033
3031
3028
3025
3021
3017
3015
3015
3014
3012
3012
3011
3005
3004
3002
2996
2995
2992
2988
2986
2983
2980
2980
2979
2974
2973
2972
2970
2968
2964
2959
2959
2958
2958
2950
2947
2946
2944
2942
2941
2935
2931
2930
2929
2929
2928
2927
2923
2917
2916
2912
2911
2904
2901
2900
2897
2894
2887
2884
2882
2879
2878
2874
2873
2871
2869
2868
2868
2864
2863
2860
2860
2858
2856
2847
2836
2835
2833
2833
2829
2828
2826
2823
2823
2822
2817
2812
2801
2800
2796
2793
2787
2787
2785
2779
2770
2769
2768
2767
2765
2764
2760
2755
2755
2754
2748
2748
2747
2740
2736
2731
2731
2730
2729
2729
2728
2728
2724
2718
2716
2715
2714
2711
2710
2709
2707
2707
2706
2703
2701
2700
2693
2691
2688
2680
2679
2677
2672
2670
2669
2669
2667
2664
2660
2656
2651
2650
2643
2642
2635
2632
2631
2630
2626
2626
2623
2622
2619
2619
2616
2610
2610
2610
2609
2608
2605
2601
2600
2598
2596
2594
2592
2586
2584
2584
2577
2576
2575
2574
2573
2572
2570
2570
2568
2568
2565
2564
2563
2561
2560
2558
2557
2556
2554
2551
2551
2549
2549
2549
2549
2548
2543
2542
2541
2540
2537
2536
2534
2532
2531
2530
2528
2527
2525
2523
2523
2522
2521
2521
2517
2515
2512
2505
2503
2501
2499
2495
2495
2490
2487
2486
2482
2476
2475
2474
2474
2472
2471
2469
2466
2464
2462
2460
2458
2456
2451
2450
2448
2445
2438
2436
2427
2426
2424
2420
2413
2413
2412
2411
2410
2408
2404
2401
2401
2400
2394
2392
2386
2385
2384
2383
2383
2381
2381
2378
2376
2375
2374
2372
2369
2369
2367
2367
2366
2365
2364
2364
2362
2361
2357
2356
2354
2353
2352
2352
2351
2349
2342
2339
2338
2337
2337
2337
2336
2336
2332
2332
2329
2326
2324
2323
2319
2318
2316
2315
2311
2310
2308
2306
2302
2302
2301
2300
2300
2298
2296
2293
2293
2291
2289
2289
2289
2287
2285
2285
2283
2281
2281
2281
2277
2276
2276
2271
2269
2269
2268
2267
2266
2266
2263
2262
2254
2253
2253
2252
2249
2247
2246
2243
2242
2241
2239
2238
2238
2238
2235
2232
2232
2231
2230
2230
2229
2225
2222
2220
2216
2215
2214
2214
2213
2208
2202
2200
2200
2199
2199
2198
2197
2197
2196
2196
2194
2192
2192
2191
2189
2188
2188
2185
2182
2181
2173
2172
2171
2171
2171
2169
2168
2168
2167
2165
2164
2162
2159
2158
2156
2154
2152
2149
2149
2145
2144
2144
2140
2138
2138
2138
2135
2132
2122
2122
2118
2117
2117
2117
2116
2114
2113
2112
2108
2107
2107
2105
2104
2104
2095
2093
2093
2090
2089
2089
2087
2083
2082
2080
2077
2076
2076
2075
2073
2072
2072
2072
2071
2070
2070
2070
2069
2067
2065
2062
2062
2062
2061
2061
2061
2057
2052
2052
2050
2047
2047
2045
2045
2044
2044
2042
2040
2040
2038
2037
2037
2037
2036
2035
2032
2031
2031
2028
2025
2024
2021
2020
2020
2018
2017
2014
2012
2012
2003
2003
2002
1998
1995
1995
1994
1994
1991
1988
1988
1987
1987
1985
1982
1982
1981
1981
1981
1980
1980
1978
1977
1976
1974
1974
1972
1972
1968
1967
1967
1965
1965
1965
1965
1964
1963
1962
1960
1960
1957
1956
1955
1954
1950
1943
1942
1940
1939
1939
1939
1938
1938
1938
1936
1936
1935
1934
1934
1933
1932
1927
1926
1924
1922
1919
1919
1914
1914
1913
1912
1910
1909
1909
1907
1907
1907
1906
1901
1901
1901
1900
1898
1897
1896
1896
1892
1892
1889
1888
1886
1886
1885
1884
1883
1883
1882
1882
1882
1881
1881
1872
1872
1870
1868
1868
1867
1863
1860
1860
1858
1858
1855
1854
1854
1850
1846
1845
1844
1844
1843
1842
1842
1842
1841
1837
1836
1834
1834
1833
1832
1830
1828
1827
1826
1825
1825
1825
1825
1824
1822
1822
1820
1819
1815
1814
1814
1812
1812
1812
1812
1808
1805
1805
1803
1802
1801
1801
1798
1798
1797
1795
1791
1791
1791
1791
1791
1790
1790
1787
1787
1786
1785
1783
1778
1778
1778
1777
1777
1777
1772
1772
1770
1768
1768
1766
1765
1765
1763
1763
1762
1761
1760
1759
1755
1753
1750
1749
1748
1746
1746
1740
1739
1736
1735
1732
1732
1732
1729
1726
1726
1726
1725
1725
1725
1725
1724
1724
1722
1720
1720
1719
1715
1712
1709
1709
1707
1704
1703
1702
1702
1701
1701
1700
1700
1696
1695
1694
1692
1692
1691
1691
1689
1689
1689
1687
1686
1686
1683
1683
1682
1681
1680
1680
1679
1677
1677
1675
1674
1673
1673
1673
1670
1669
1668
1668
1667
1666
1666
1665
1663
1663
1663
1660
1660
1658
1658
1657
1656
1651
1649
1648
1648
1648
1648
1648
1646
1646
1646
1645
1644
1643
1641
1640
1636
1635
1635
1632
1632
1632
1631
1629
1628
1628
1622
1619
1617
1617
1616
1615
1615
1613
1612
1612
1608
1607
1606
1605
1605
1605
1604
1602
1602
1599
1599
1598
1596
1596
1595
1594
1593
1591
1591
1590
1586
1585
1583
1582
1579
1578
1578
1575
1574
1574
1572
1572
1569
1569
1568
1567
1566
1566
1565
1563
1559
1559
1559
1559
1558
1556
1554
1554
1552
1552
1551
1551
1549
1548
1548
1548
1546
1546
1546
1546
1545
1545
1544
1542
1542
1542
1541
1539
1538
1536
1534
1533
1531
1531
1531
1530
1530
1530
1528
1526
1525
1522
1521
1521
1521
1520
1520
1519
1519
1518
1518
1517
1517
1517
1517
1515
1515
1514
1514
1514
1514
1514
1513
1513
1511
1508
1508
1507
1507
1507
1506
1506
1505
1505
1504
1504
1504
1503
1503
1502
1502
1498
1497
1495
1495
1493
1493
1493
1493
1490
1490
1490
1487
1487
1486
1485
1485
1483
1483
1483
1482
1482
1482
1482
1481
1480
1480
1480
1478
1477
1475
1475
1470
1469
1469
1468
1468
1466
1465
1464
1464
1463
1462
1461
1459
1458
1458
1458
1458
1457
1456
1456
1455
1454
1454
1454
1453
1452
1452
1451
1450
1450
1448
1447
1447
1446
1444
1444
1442
1442
1439
1438
1437
1436
1435
1434
1434
1433
1433
1432
1431
1431
1430
1430
1429
1428
1427
1427
1426
1425
1425
1424
1421
1420
1420
1418
1418
1418
1416
1415
1413
1413
1413
1412
1412
1411
1411
1410
1409
1407
1407
1407
1406
1403
1403
1402
1402
1402
1401
1401
1400
1400
1400
1400
1399
1398
1398
1398
1397
1397
1396
1393
1392
1391
1388
1388
1388
1387
1385
1384
1383
1383
1382
1380
1380
1380
1380
1379
1379
1379
1378
1378
1375
1374
1374
1373
1373
1373
1371
1370
1370
1369
1369
1368
1366
1365
1364
1364
1363
1362
1360
1360
1360
1359
1358
1357
1356
1355
1354
1354
1354
1353
1352
1349
1349
1349
1348
1348
1347
1347
1346
1345
1344
1344
1343
1340
1340
1339
1339
1339
1338
1337
1336
1336
1335
1334
1334
1333
1331
1331
1331
1331
1330
1330
1330
1330
1330
1329
1328
1326
1325
1325
1324
1323
1321
1320
1320
1319
1319
1318
1318
1317
1314
1313
1312
1312
1312
1309
1308
1308
1308
1306
1304
1304
1303
1302
1301
1299
1298
1297
1297
1297
1296
1295
1295
1295
1294
1293
1292
1292
1290
1290
1290
1289
1289
1288
1287
1285
1284
1284
1283
1283
1283
1282
1282
1282
1282
1279
1277
1277
1277
1276
1276
1276
1275
1272
1271
1270
1269
1269
1268
1268
1267
1267
1267
1266
1266
1265
1264
1264
1264
1263
1263
1261
1260
1258
1258
1257
1257
1256
1255
1254
1254
1253
1253
1252
1252
1249
1249
1249
1248
1247
1247
1247
1247
1246
1246
1246
1245
1244
1244
1244
1243
1242
1241
1240
1240
1239
1239
1239
1238
1238
1237
1236
1235
1235
1235
1234
1233
1231
1230
1230
1228
1228
1228
1228
1227
1226
1226
1224
1221
1221
1220
1219
1219
1219
1218
1217
1217
1215
1215
1214
1214
1214
1214
1212
1211
1211
1208
1207
1207
1206
1205
1205
1204
1204
1203
1203
1203
1203
1202
1202
1202
1200
1199
1198
1198
1197
1197
1195
1195
1193
1193
1191
1190
1189
1189
1188
1188
1187
1186
1186
1186
1185
1184
1183
1183
1183
1182
1181
1181
1181
1181
1179
1178
1176
1176
1175
1175
1175
1175
1175
1174
1173
1172
1172
1171
1171
1169
1169
1169
1168
1168
1168
1167
1167
1167
1166
1166
1165
1164
1164
1163
1163
1162
1162
1159
1159
1158
1158
1153
1153
1153
1152
1151
1151
1151
1150
1148
1148
1148
1147
1147
1145
1144
1143
1142
1142
1142
1141
1140
1139
1139
1139
1138
1137
1137
1134
1133
1132
1132
1131
1131
1130
1130
1129
1127
1126
1125
1124
1124
1123
1123
1122
1122
1121
1121
1120
1119
1119
1119
1118
1118
1117
1116
1115
1114
1114
1114
1114
1112
1111
1108
1107
1106
1104
1104
1103
1102
1101
1101
1101
1100
1098
1098
1097
1096
1096
1096
1094
1093
1092
1092
1091
1091
1090
1090
1090
1090
1090
1090
1089
1089
1089
1088
1088
1087
1086
1086
1085
1085
1085
1083
1082
1081
1081
1080
1079
1078
1078
1075
1073
1073
1072
1070
1070
1070
1070
1069
1069
1069
1067
1067
1066
1066
1066
1065
1064
1064
1064
1064
1063
1062
1062
1061
1061
1060
1060
1060
1060
1060
1060
1059
1059
1057
1056
1056
1056
1056
1055
1054
1054
1053
1053
1053
1052
1052
1051
1050
1050
1050
1050
1048
1048
1047
1045
1045
1045
1044
1044
1043
1042
1042
1042
1042
1042
1042
1041
1040
1039
1039
1038
1038
1038
1038
1037
1036
1035
1035
1035
1034
1034
1034
1034
1034
1033
1033
1033
1030
1029
1029
1028
1028
1028
1027
1026
1026
1025
1024
1024
1024
1024
1024
1023
1023
1021
1021
1020
1020
1020
1019
1019
1019
1019
1018
1018
1017
1017
1017
1017
1017
1016
1016
1016
1015
1015
1012
1012
1012
1011
1010
1010
1010
1008
1007
1007
1006
1003
1002
999
999
999
999
998
998
997
997
996
996
995
994
994
993
993
992
991
990
990
989
988
987
987
986
986
986
985
985
985
984
984
983
982
982
982
982
981
980
979
978
977
977
976
976
976
975
975
974
974
973
971
971
971
971
970
970
970
970
968
967
967
967
966
965
965
964
964
964
964
964
964
964
963
961
961
961
961
960
960
958
958
957
957
956
956
956
956
956
955
955
955
954
954
954
954
953
953
951
951
951
951
950
950
949
949
949
948
948
948
948
948
947
947
947
947
946
946
946
946
946
945
945
945
943
943
942
942
942
942
942
942
940
938
938
936
936
935
935
935
934
934
933
933
932
932
931
931
931
930
930
930
929
929
928
928
928
927
927
927
926
925
925
925
925
924
924
924
923
922
920
920
920
919
919
918
918
918
917
917
916
913
913
913
911
911
911
911
909
909
908
908
907
907
906
906
906
905
905
905
905
904
904
903
903
903
902
902
900
900
900
900
899
898
898
898
898
898
897
897
897
896
896
895
895
895
894
894
892
891
891
891
891
891
890
889
888
888
888
888
888
888
887
887
886
884
884
884
883
883
882
880
880
879
879
879
879
877
876
876
875
875
874
874
874
873
872
872
871
871
870
868
868
867
867
867
867
867
867
866
866
866
866
866
865
865
865
864
864
864
862
862
861
860
860
860
858
858
856
856
855
855
854
854
853
853
852
852
851
851
850
849
849
848
848
848
848
847
847
847
846
846
846
845
845
845
844
844
843
842
842
840
839
839
839
838
838
838
838
837
837
836
836
836
836
835
835
833
832
832
831
830
830
830
829
829
829
829
829
828
828
827
826
826
824
824
823
823
823
822
822
822
821
821
819
819
819
818
816
816
816
816
814
814
814
813
813
812
812
811
810
810
810
810
810
810
809
809
809
809
808
808
807
807
806
806
806
806
805
805
804
804
804
804
804
804
804
802
802
801
800
800
800
799
799
798
798
798
798
797
797
797
796
796
796
795
795
795
794
793
793
793
792
792
792
791
791
791
791
790
789
788
787
787
787
787
786
786
786
786
785
784
784
783
783
783
783
782
782
782
781
781
781
781
780
780
779
778
778
778
778
777
776
776
776
776
776
775
775
773
773
773
772
772
772
772
772
771
771
771
771
771
770
770
770
770
769
769
769
767
767
767
767
766
766
765
765
764
764
764
763
763
762
762
761
761
761
761
760
760
760
760
759
757
757
757
757
757
756
756
756
755
754
754
753
753
752
752
752
752
752
752
752
751
751
750
749
749
749
749
748
747
747
747
747
746
746
746
746
745
745
745
744
744
743
743
743
742
742
741
741
741
740
740
740
740
739
739
738
737
737
737
737
736
736
736
735
735
735
735
735
735
735
734
734
734
734
734
734
734
733
733
733
733
733
732
732
732
732
732
731
731
731
731
731
730
730
730
730
730
729
729
728
728
728
728
728
728
728
727
727
727
726
726
726
726
726
726
726
726
725
725
725
725
725
724
724
724
724
723
722
722
722
722
722
722
721
721
721
720
720
720
720
719
719
719
718
718
718
718
718
718
718
716
716
715
714
714
714
714
714
713
713
713
713
712
712
711
711
710
709
709
709
709
709
708
706
705
705
704
704
704
703
703
703
702
702
702
702
701
701
701
701
701
701
700
700
700
700
699
699
698
698
697
696
695
695
694
694
694
694
694
693
693
692
692
692
692
691
691
690
690
689
689
688
687
687
687
687
686
686
686
686
686
685
685
685
685
684
684
683
683
683
683
683
683
683
683
683
682
682
682
681
681
680
680
680
680
679
679
678
678
678
678
678
677
677
677
677
676
676
676
676
676
675
675
675
675
675
674
674
674
674
673
673
672
672
671
671
671
670
670
670
669
668
668
668
668
667
667
667
667
667
667
667
667
667
667
666
665
665
665
664
664
664
664
664
664
664
663
663
663
663
662
662
662
661
661
661
661
661
661
660
660
660
660
660
660
659
659
657
655
655
654
654
654
654
654
653
653
653
652
652
652
651
651
650
650
650
650
650
649
649
648
647
647
647
647
647
646
645
645
645
645
644
644
644
644
644
643
643
643
642
642
642
642
641
641
641
641
640
639
639
639
638
638
637
637
636
636
636
636
636
635
635
635
634
634
634
634
633
633
633
633
633
632
632
631
631
631
631
630
630
630
630
630
630
629
629
629
628
628
628
627
627
627
626
625
625
624
624
624
624
623
623
622
622
622
621
621
621
621
620
620
619
619
618
618
618
618
618
617
617
617
617
616
616
616
616
616
616
616
615
615
615
614
614
613
613
613
612
612
612
611
611
610
610
609
609
609
609
608
608
608
608
607
607
606
606
606
606
606
605
605
605
604
604
604
604
603
603
603
601
601
601
600
600
600
600
599
599
598
598
598
598
597
597
597
597
597
596
596
596
596
595
595
595
595
595
594
594
594
594
594
593
593
593
593
593
592
592
592
592
592
591
591
590
590
590
590
589
589
589
588
588
588
588
588
587
586
584
584
584
583
583
583
583
582
582
581
580
579
579
578
577
577
577
577
577
576
576
576
576
576
576
576
575
575
574
574
573
573
573
573
572
572
571
571
570
570
570
570
569
569
569
569
568
568
568
567
566
566
566
566
566
566
565
565
565
565
565
564
563
563
563
563
562
562
562
562
561
561
561
560
560
560
560
560
560
560
559
559
558
558
558
556
556
556
556
556
555
555
555
555
554
554
554
554
554
554
554
553
553
553
553
552
552
552
552
551
551
550
550
550
550
550
550
549
549
549
549
549
548
547
547
547
547
546
546
546
546
546
546
546
546
546
546
546
545
544
544
544
544
544
544
543
543
542
542
542
542
542
542
542
541
541
541
541
540
540
540
539
539
539
539
539
539
538
538
538
538
538
538
537
537
536
536
536
536
536
536
536
536
535
535
534
534
534
534
534
534
534
534
534
532
532
532
532
531
531
531
531
530
530
530
530
529
529
529
529
529
529
529
528
528
528
528
528
528
527
527
527
527
527
526
526
525
525
525
525
525
524
524
524
524
524
524
522
521
521
521
521
521
521
521
521
520
520
520
520
520
520
520
519
519
518
518
517
517
517
517
516
516
516
516
516
516
515
515
515
515
514
514
514
514
514
514
514
514
513
513
512
512
511
510
510
510
510
510
509
509
508
508
508
508
508
507
507
507
507
507
507
507
507
506
506
505
505
505
505
505
505
505
505
504
504
504
503
503
503
502
502
502
502
502
501
501
501
501
500
500
500
500
499
499
499
499
499
499
498
498
498
498
497
497
497
497
496
496
496
495
495
494
494
494
494
494
493
493
493
492
492
492
492
492
492
491
491
490
490
490
490
490
489
489
489
488
488
488
488
488
487
487
486
486
486
486
486
486
485
485
485
484
484
484
484
484
483
482
481
481
481
480
480
480
480
479
479
479
479
478
478
478
478
478
478
477
477
477
477
477
476
476
476
475
475
475
475
475
474
474
473
473
473
472
472
472
472
472
471
471
470
470
470
470
469
469
469
469
469
469
469
468
468
468
468
468
468
467
467
467
467
466
466
466
465
465
465
465
465
464
464
463
463
463
463
463
462
462
462
462
462
462
461
461
461
460
460
460
460
460
460
458
458
458
458
458
458
458
458
457
457
457
457
456
456
456
456
456
456
456
455
455
454
453
453
453
453
452
452
451
451
451
451
450
450
450
450
450
450
450
450
450
449
449
449
449
449
448
448
448
447
447
447
447
447
446
446
446
445
445
445
445
445
445
445
444
444
444
444
444
444
444
443
443
443
443
442
442
442
441
441
441
441
441
441
440
440
439
439
438
438
438
438
437
437
437
437
437
436
436
436
436
436
435
435
435
435
435
435
435
434
434
433
433
432
432
432
432
431
431
431
431
430
430
430
430
429
429
429
429
429
429
429
429
429
428
428
428
428
428
427
427
427
427
426
426
426
426
426
426
426
425
425
425
425
425
425
425
424
424
424
424
424
424
424
423
423
423
423
423
423
423
423
423
422
422
422
422
422
422
421
421
421
421
420
420
420
420
420
419
419
419
418
418
418
418
418
418
418
417
417
417
417
417
417
417
416
416
416
415
415
415
415
415
414
414
414
414
414
413
413
413
413
412
412
412
412
412
412
412
411
411
411
411
410
410
409
409
409
408
408
408
408
408
408
407
407
407
407
407
407
406
406
405
405
405
405
404
404
404
404
403
403
403
403
403
402
402
402
402
402
402
402
401
401
401
401
401
400
400
400
400
400
400
400
400
400
399
399
398
398
398
398
397
397
397
397
397
397
397
397
397
396
396
396
396
396
394
394
394
394
394
393
393
393
393
393
392
392
392
392
392
392
390
390
390
390
390
390
390
390
390
390
389
389
388
388
388
388
388
388
388
388
388
388
387
387
387
387
386
386
386
386
385
385
385
385
384
384
383
383
383
383
383
382
382
382
382
382
382
382
381
381
381
381
381
381
381
380
380
380
380
380
380
379
379
379
379
379
379
379
378
378
378
378
378
377
377
377
377
377
377
376
376
376
375
375
375
375
375
375
375
375
374
374
374
374
374
374
373
373
373
373
372
372
372
372
372
371
371
371
371
371
370
370
370
370
370
369
369
369
368
368
368
368
368
368
367
367
367
367
367
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
365
365
365
365
364
364
364
364
364
363
363
363
363
363
363
363
362
362
362
362
362
362
362
362
361
361
361
360
360
360
360
360
360
360
360
360
359
359
359
359
359
359
358
358
358
358
358
358
358
357
357
357
357
356
356
356
356
356
355
355
355
355
355
355
354
354
354
354
354
354
354
354
353
353
353
353
353
353
353
352
352
352
352
352
352
351
351
351
351
351
351
351
351
351
351
351
350
350
350
350
350
349
349
349
349
349
349
349
349
348
348
348
348
348
348
348
347
347
347
347
347
347
346
346
346
346
346
346
346
346
346
345
345
345
345
345
345
345
344
344
344
343
343
343
343
343
343
343
343
342
342
342
342
342
342
342
341
341
340
340
340
340
340
340
340
340
340
340
340
339
339
339
339
339
339
339
339
339
338
338
338
337
337
337
337
336
336
336
336
336
335
335
335
335
335
335
334
334
334
334
334
334
333
333
333
333
333
333
333
333
333
332
332
332
332
332
332
332
331
331
331
331
330
330
330
330
330
330
330
329
329
329
329
328
328
328
328
327
327
327
327
327
327
327
327
326
326
326
326
326
326
326
325
325
325
325
325
325
325
325
324
324
324
324
324
324
323
323
323
323
322
322
322
322
322
322
322
322
322
322
321
321
321
321
321
321
321
320
320
320
320
319
319
318
318
318
318
318
318
317
317
317
317
317
317
317
316
316
316
316
316
316
316
316
316
316
315
315
315
315
315
315
314
314
314
314
313
313
313
312
312
312
312
312
312
312
312
311
311
311
311
311
310
310
310
310
310
310
310
310
310
310
310
310
309
309
309
309
309
309
309
309
309
309
308
308
308
308
308
308
308
308
308
307
307
307
306
306
306
306
306
306
305
305
305
305
305
305
304
304
304
304
303
303
303
303
303
303
303
303
302
302
302
302
302
302
301
301
301
301
300
300
300
300
300
300
299
299
299
299
299
298
298
298
297
297
297
297
297
297
297
297
296
296
296
296
296
296
296
296
295
295
295
295
295
295
295
295
294
294
294
294
294
294
294
294
294
293
293
293
293
293
292
292
292
292
292
291
291
291
291
291
290
290
290
290
290
290
289
289
289
289
289
288
288
288
288
288
288
288
288
288
287
287
287
287
287
287
287
287
287
286
286
286
286
286
286
286
286
285
285
285
285
285
285
285
285
284
284
284
284
284
284
283
283
283
283
283
283
283
283
283
282
282
282
282
282
282
282
281
281
281
281
281
280
280
280
280
280
280
279
279
279
278
278
278
278
278
277
277
277
277
277
276
276
276
276
276
275
275
275
275
275
275
274
274
274
274
274
274
274
273
273
272
272
272
271
271
271
271
271
271
271
271
270
270
270
270
270
270
270
270
269
269
269
269
269
269
269
268
268
268
268
268
268
268
268
268
268
268
267
267
267
267
267
267
266
266
266
266
266
266
266
266
266
266
266
266
266
266
265
265
265
265
265
265
265
265
265
265
265
265
264
264
264
264
264
264
263
263
263
263
263
263
263
263
263
263
262
262
262
262
262
262
262
262
261
261
261
261
261
261
261
261
261
260
260
260
260
260
260
260
260
260
259
259
258
258
258
258
257
257
257
257
257
257
257
257
257
257
256
256
256
256
256
256
255
255
255
255
255
255
255
255
255
255
254
254
254
254
254
254
253
253
253
253
253
253
253
252
252
252
252
252
251
251
251
251
251
251
251
251
251
251
251
250
250
250
250
250
250
250
250
249
249
249
249
249
249
249
249
249
249
248
248
248
248
248
248
247
247
247
247
247
247
247
247
246
246
246
246
246
246
246
246
246
246
246
245
245
245
245
245
245
245
245
245
245
245
245
244
244
244
244
244
244
244
244
244
243
243
243
243
243
243
243
243
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
241
241
240
240
240
240
240
239
239
239
239
239
239
239
239
238
238
238
238
238
238
238
238
238
238
238
237
237
237
237
237
237
237
237
237
237
236
236
236
236
236
236
236
236
236
236
236
236
235
235
235
235
234
234
234
234
234
234
234
234
234
234
233
233
233
233
233
233
233
232
232
232
232
232
232
232
232
231
231
231
231
231
231
231
231
231
230
230
230
230
230
230
230
230
229
229
229
229
229
229
229
229
229
229
229
229
228
228
228
228
228
228
228
228
228
228
227
227
227
227
227
226
226
226
226
226
226
226
225
225
225
225
225
225
225
225
225
225
225
224
224
224
224
224
224
224
224
224
223
223
223
223
223
223
223
223
223
222
222
222
222
222
222
222
222
222
222
221
221
221
221
221
221
221
220
220
220
220
220
220
220
220
220
220
219
219
219
219
219
219
219
218
218
218
218
218
218
218
218
218
218
217
217
217
217
217
217
217
217
217
217
217
216
216
216
216
216
216
216
216
216
216
215
215
215
215
215
215
215
215
215
214
214
214
214
214
214
214
214
214
214
214
214
214
213
213
213
213
213
213
213
213
212
212
212
212
212
212
212
212
212
212
212
212
211
211
211
211
211
211
211
211
211
210
210
210
210
210
210
210
210
210
210
209
209
209
209
209
209
209
209
209
209
209
209
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
207
207
207
207
207
207
207
207
207
207
207
207
207
206
206
206
206
206
206
206
206
206
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
204
204
204
204
204
204
204
204
204
204
204
204
204
204
204
204
203
203
203
203
203
203
203
203
203
203
202
202
202
202
202
202
202
202
202
202
201
201
201
201
201
201
201
201
200
200
200
200
200
200
200
200
200
200
199
199
199
199
199
199
199
199
199
199
199
198
198
198
198
198
198
198
198
198
198
197
197
197
197
197
197
197
197
197
197
196
196
196
196
196
196
196
196
196
196
195
195
195
195
195
195
195
195
195
195
195
195
195
195
195
195
195
195
195
194
194
194
194
194
194
194
194
194
194
194
194
193
193
193
193
193
193
193
193
193
193
193
193
192
192
192
192
192
192
192
192
192
192
192
192
192
191
191
191
191
191
191
191
191
191
191
191
191
190
190
190
190
190
190
190
190
190
190
190
190
190
190
189
189
189
189
189
189
189
189
188
188
188
188
188
188
188
188
188
188
188
188
188
188
187
187
187
187
187
187
187
187
187
187
187
187
186
186
186
186
186
186
186
186
186
186
186
186
186
186
186
185
185
185
185
185
185
185
185
185
185
185
184
184
184
184
184
184
184
184
184
184
184
183
183
183
183
183
183
183
183
183
183
183
183
182
182
182
182
182
182
182
182
182
182
182
182
182
182
181
181
181
181
181
181
181
181
181
181
181
181
181
181
180
180
180
180
180
180
180
180
180
180
180
180
179
179
179
179
179
179
179
179
179
179
179
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
177
177
177
177
177
177
177
177
177
177
176
176
176
176
176
176
176
176
176
176
176
175
175
175
175
175
175
175
175
175
174
174
174
174
174
174
174
174
174
173
173
173
173
173
173
173
173
173
173
173
173
173
173
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
171
171
171
171
171
171
171
171
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
169
169
169
169
169
169
169
169
169
169
169
169
169
169
168
168
168
168
168
168
168
168
168
168
168
167
167
167
167
167
167
167
166
166
166
166
166
166
166
166
166
166
166
166
166
166
166
165
165
165
165
165
165
165
165
165
165
165
164
164
164
164
164
164
164
164
164
164
164
164
164
164
164
163
163
163
163
163
163
163
163
163
163
163
163
162
162
162
162
162
162
162
162
162
162
162
162
162
162
162
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
160
160
160
160
160
160
160
160
160
160
160
160
160
160
160
160
160
159
159
159
159
159
159
159
159
159
159
159
159
159
159
159
159
159
158
158
158
158
158
158
158
158
158
158
158
158
157
157
157
157
157
157
157
157
157
157
157
157
157
157
157
157
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
155
155
155
155
155
155
155
155
155
155
155
155
155
155
154
154
154
154
154
154
154
154
154
154
154
154
153
153
153
153
153
153
153
153
153
153
153
153
153
153
153
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
150
150
150
150
150
150
150
150
150
150
150
150
150
150
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
147
147
147
147
147
147
147
147
147
147
146
146
146
146
146
146
146
146
146
146
146
146
145
145
145
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
143
143
143
143
143
143
143
143
143
143
143
143
143
143
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
141
141
141
141
141
141
141
141
141
141
141
141
141
141
141
141
141
141
141
141
140
140
140
140
140
140
140
140
140
140
140
140
140
139
139
139
139
139
139
139
139
139
139
139
139
138
138
138
138
138
138
138
138
138
138
138
138
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
132
132
132
132
132
132
132
132
132
132
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
126
126
126
126
126
126
126
126
126
126
126
126
126
126
126
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
121
121
121
121
121
121
121
121
121
121
121
121
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
112
112
112
112
112
112
112
112
112
112
112
112
112
112
111
111
111
111
111
111
111
111
111
111
111
111
111
111
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
100
100
100
100
100
