30035114
8286735
4043268
3300812
3262209
2782359
2388781
2384688
2299626
2209496
2171690
2050639
1967072
1888927
1782132
1690362
1688802
1660944
1632797
1538332
1527905
1493462
1404713
1367835
1363207
1313836
1281159
1251643
1235372
1233812
1195199
1188432
1141372
1128407
1059212
1049631
1043884
1031561
1029961
998486
980142
978768
964408
955918
949111
931326
928859
904724
879942
856371
812656
802635
779397
776407
773241
768705
767473
757427
751561
743856
741195
737558
732423
711596
707495
704708
693306
670559
670100
661135
646340
643611
641162
620051
605419
600817
592934
590910
563409
555827
552163
547221
539405
536504
530179
523647
521509
519793
509481
499298
498275
491182
487036
465743
465022
463364
450870
447658
445832
445477
440861
439574
438271
437782
436698
434314
429471
421097
417366
416995
416125
404237
392152
389880
388816
387919
382414
373970
368184
366153
364770
362777
362548
361687
350539
347797
346597
346228
341041
335685
327298
323800
323070
321981
321933
319957
318611
307255
299136
294533
290833
289866
288085
281273
280588
274976
273309
270068
269790
267527
265575
264607
263526
255924
254859
249425
247391
244887
242275
242125
239973
238175
237776
237078
234926
233072
232476
225679
222228
216828
209482
206467
203023
200462
199794
199150
197887
194222
189747
185091
184155
183574
182441
180456
179196
177398
174981
174732
173977
168963
166101
164879
164864
164687
164129
163042
162299
160445
158224
154319
153216
152838
152749
152623
150399
150245
148317
147758
146738
142952
142206
137690
136941
136894
135257
134831
133588
132094
131336
130232
128250
127088
126934
126488
126182
124733
122701
122562
121507
119768
118058
117583
115535
115025
113487
113312
113046
112996
111956
111431
111415
109175
105956
103538
99522
94613
92766
91382
90662
89646
88661
88432
87572
87494
87358
87318
84703
84657
84098
83285
82503
82272
81641
80590
80254
79144
79134
77685
77349
77191
77006
74459
73111
72915
72762
72118
71530
70868
70017
68825
68070
67858
67743
67224
67153
66410
65072
63370
62495
61896
61562
60541
60052
59448
57121
57051
56822
55982
54901
54822
53860
52786
51871
51183
51087
50567
48877
48784
48770
48120
47210
46832
46815
45980
45302
44323
44277
43994
43282
42107
41972
41521
40816
39967
39934
39030
38976
38726
38427
38268
37767
37762
37452
37190
37141
34712
33984
33784
33491
32748
32591
32440
31917
30784
30150
29349
29303
29165
28674
28621
28486
27414
27411
26856
26289
26283
26261
26191
25994
25916
25890
25609
25278
25134
24974
24965
24804
24734
24675
24503
24040
24026
23661
23634
23263
23192
23137
22803
22646
22326
21861
21402
21101
20804
20514
20253
20150
20131
20129
20035
19610
19580
19441
19233
19212
19075
19043
19008
18963
18874
18767
18424
18360
18199
18157
18082
17914
17592
17475
17422
17378
17142
17105
16832
16821
16672
16495
16413
16360
16311
16269
16103
15960
15947
15676
15651
15568
15393
15329
15304
15164
15138
14947
14405
14165
14093
13944
13830
13728
13573
13440
13416
13340
13239
13115
13112
13079
13068
13038
12990
12938
12814
12799
12789
12649
12493
12463
12121
11964
11794
11737
11648
11564
11560
11512
11475
11412
11406
11401
11399
11118
11087
10964
10790
10766
10692
10643
10594
10591
10528
10471
10315
10266
10243
10238
10142
9993
9907
9838
9764
9726
9715
9701
9612
9524
9510
9501
9433
9372
9289
9275
9210
9177
9120
9102
9027
8994
8975
8877
8799
8743
8672
8610
8507
8464
8261
8260
8056
8042
8023
7998
7948
7888
7794
7772
7757
7550
7545
7451
7423
7271
7142
7125
7080
7041
7023
6960
6915
6901
6898
6877
6852
6827
6817
6704
6595
6554
6551
6506
6501
6476
6446
6422
6319
6256
6248
6243
6015
6002
5877
5874
5850
5797
5790
5781
5574
5567
5497
5426
5412
5411
5408
5370
5333
5317
5304
5260
5253
5210
5181
5112
5097
5082
4990
4934
4927
4905
4869
4851
4832
4829
4824
4815
4772
4762
4750
4699
4616
4615
4601
4587
4540
4524
4511
4508
4504
4453
4425
4410
4390
4379
4373
4372
4363
4314
4266
4248
4225
4172
4170
4164
4127
4125
4024
3990
3982
3980
3954
3946
3928
3925
3919
3871
3816
3801
3788
3780
3686
3664
3645
3643
3639
3620
3593
3582
3578
3527
3506
3492
3459
3430
3427
3394
3378
3359
3355
3329
3319
3301
3268
3255
3232
3227
3199
3165
3162
3133
3124
3110
3105
3055
3046
3031
3029
3022
3007
3007
2988
2984
2903
2871
2866
2851
2845
2841
2808
2802
2760
2759
2730
2704
2704
2700
2700
2688
2685
2669
2662
2657
2655
2645
2623
2621
2617
2615
2613
2609
2601
2584
2580
2578
2572
2567
2541
2528
2522
2518
2512
2510
2498
2494
2468
2468
2460
2454
2453
2444
2433
2431
2423
2409
2408
2408
2403
2389
2383
2349
2344
2338
2326
2316
2314
2301
2286
2273
2268
2252
2237
2224
2210
2198
2188
2153
2148
2126
2098
2080
2079
2079
2077
2072
2045
2039
2038
2035
2011
1994
1980
1970
1941
1940
1934
1918
1905
1850
1847
1846
1796
1786
1783
1772
1752
1748
1746
1741
1740
1732
1711
1693
1668
1648
1645
1639
1617
1589
1540
1539
1535
1531
1530
1524
1520
1519
1516
1496
1484
1464
1463
1461
1457
1456
1452
1430
1408
1407
1406
1406
1405
1404
1379
1374
1373
1364
1330
1317
1312
1266
1264
1263
1252
1251
1234
1220
1206
1194
1173
1148
1141
1134
1110
1107
1098
1095
1084
1069
1059
1057
1051
1050
1040
1020
992
960
946
944
924
916
904
900
896
890
886
874
872
869
865
863
858
840
836
828
826
824
819
816
806
804
803
782
781
778
760
755
750
746
733
731
725
718
710
710
708
705
699
699
683
676
662
656
648
643
639
635
620
607
606
602
602
596
596
593
587
584
580
576
576
571
570
562
558
553
549
548
537
534
534
524
516
512
510
497
494
493
492
487
483
483
481
480
478
475
474
474
462
458
457
455
454
453
452
450
450
450
441
441
433
426
425
422
420
418
415
414
414
408
399
396
395
394
393
391
390
388
385
384
384
381
373
369
368
360
348
348
348
345
340
339
338
329
329
328
328
328
327
324
324
316
315
312
309
309
304
304
303
300
299
299
293
292
287
286
285
285
284
282
279
275
273
272
270
269
268
266
259
256
255
255
254
252
251
246
246
246
245
244
243
240
230
229
229
228
226
225
224
223
221
220
220
218
216
214
214
211
209
209
208
205
203
202
201
201
200
199
199
199
198
198
196
196
196
195
191
191
190
189
187
186
185
184
183
182
178
178
177
176
176
174
172
172
172
171
171
171
170
169
169
169
169
168
168
164
163
163
162
160
159
158
157
157
156
155
154
154
154
153
153
152
149
148
148
146
144
144
143
143
142
142
141
141
141
140
139
138
138
138
138
137
137
135
135
134
133
133
132
131
131
130
130
130
130
129
129
129
128
128
128
128
127
127
126
126
125
124
123
123
123
122
121
120
118
118
117
117
116
116
115
114
114
114
112
112
111
111
110
109
108
108
108
107
107
107
106
106
105
104
104
103
102
102
101
101
101
99
98
98
98
98
97
97
97
96
96
95
94
94
94
94
93
93
93
91
91
90
89
89
88
88
88
87
87
87
87
87
86
85
85
84
83
83
83
81
80
80
79
78
78
78
78
77
77
77
76
76
76
76
75
75
74
74
74
74
74
73
73
72
72
72
69
69
69
68
68
68
67
66
66
66
66
65
65
65
63
63
63
63
63
63
62
62
61
61
60
60
60
59
59
58
58
57
57
57
56
56
55
55
55
55
55
55
55
55
55
55
55
54
54
54
54
54
53
53
53
53
53
53
52
52
52
52
51
50
50
50
50
50
50
50
50
49
49
49
49
48
48
48
48
48
47
47
47
46
46
46
46
46
46
45
45
45
45
44
44
44
44
44
44
44
43
43
43
43
42
42
42
42
42
42
42
41
41
41
41
41
41
41
41
41
40
40
40
40
40
40
40
39
39
39
38
38
38
38
38
38
38
37
37
37
37
36
36
36
36
36
36
36
36
35
35
35
35
35
35
35
34
34
34
34
34
34
34
34
34
33
33
33
33
33
33
33
33
33
32
32
32
32
32
32
32
32
32
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
30
30
30
30
30
29
29
29
29
29
28
28
28
28
28
28
28
28
28
27
27
27
27
27
27
27
27
27
27
27
26
26
26
26
26
26
26
26
26
26
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
22
22
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
