b
]]>
b
]]>
44
42
42
41
39
39
39
39
39
39
39
38
38
38
38
36
36
36
36
35
34
33
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
33
33
34
34
34
34
34
34
35
35
35
35
35
35
36
36
36
36
36
36
36
36
36
37
37
38
39
39
39
40
40
41
41
41
41
41
41
41
41
42
42
43
43
43
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
45
45
45
45
45
45
45
45
45
45
45
46
46
50
52
52
53
54
56
57
57
57
57
57
57
58
59
60
62
61
60
55
55
54
54
54
54
55
55
56
56
57
57
59
59
59
61
62
62
63
63
63
64
64
65
66
66
67
67
67
67
68
68
69
70
72
74
74
75
77
78
79
80
81
81
82
83
83
83
83
84
87
88
89
89
90
91
91
92
92
92
93
93
93
95
95
96
97
99
100
102
103
104
107
107
108
109
109
110
111
112
112
113
113
115
115
116
117
118
119
119
120
120
121
121
122
122
123
123
124
127
127
127
128
129
129
130
130
131
132
133
134
134
135
136
136
136
137
137
137
138
140
140
141
141
142
143
144
145
145
146
148
149
149
150
151
151
152
153
154
154
155
155
156
156
157
158
159
160
160
161
161
162
162
162
164
165
166
167
167
167
168
169
171
172
172
172
172
167
165
165
165
167
170
170
171
174
177
189
187
186
186
185
185
187
188
188
188
189
189
190
191
193
194
196
197
198
199
200
200
201
202
205
206
206
208
208
209
210
210
212
212
213
213
213
214
214
214
215
215
215
215
215
216
217
218
221
223
227
227
227
227
227
229
230
230
231
232
233
234
235
236
236
236
238
239
244
247
249
252
255
258
260
262
264
267
269
269
271
271
271
270
270
270
269
269
269
268
268
267
267
266
265
264
263
263
277
279
281
284
284
285
286
286
287
287
287
287
287
287
287
287
287
287
287
287
300
303
305
307
308
310
309
302
300
292
294
295
296
297
312
314
315
317
317
319
320
321
323
325
351
367
375
377
383
385
390
391
393
394
394
395
396
397
397
400
404
406
409
412
417
426
439
439
451
460
464
468
470
473
477
479
481
500
527
531
536
538
543
547
557
557
558
559
559
561
561
563
566
571
573
576
591
592
594
597
601
608
613
618
621
636
643
643
643
643
644
644
644
644
645
647
648
649
649
650
650
651
651
652
654
658
658
659
660
660
661
666
669
671
672
674
678
679
683
687
696
698
700
702
706
707
707
707
707
707
708
708
708
712
717
719
722
724
726
727
729
731
733
734
735
735
736
737
737
738
738
739
740
741
741
739
734
730
731
731
737
742
773
775
776
773
772
771
771
770
770
770
769
769
769
766
710
686
680
680
680
680
680
680
680
681
686
697
708
710
713
715
718
719
723
734
740
744
754
755
763
765
766
769
769
770
771
772
773
774
774
775
775
775
776
780
781
782
783
785
787
788
791
791
796
797
797
798
799
800
800
802
802
802
801
799
799
798
797
797
797
797
796
795
795
805
807
809
809
810
811
813
814
814
814
815
815
815
815
815
816
818
819
819
819
819
819
819
819
819
819
819
819
819
819
819
819
819
819
819
818
817
817
817
817
817
817
817
817
817
817
815
815
815
815
814
814
813
813
813
813
813
813
813
810
809
808
808
807
800
799
797
796
796
794
793
791
789
787
786
786
785
785
782
773
770
770
768
767
767
767
767
767
767
766
766
766
765
765
765
764
763
763
763
762
761
760
760
760
759
759
759
759
760
761
761
763
764
764
766
767
767
767
767
767
767
767
768
768
770
770
771
771
772
771
770
770
769
769
769
769
769
769
768
767
767
767
765
764
764
764
762
762
762
763
764
764
764
765
767
769
772
773
777
777
778
778
779
779
777
776
774
773
772
769
768
766
765
764
764
763
762
762
761
761
761
757
757
757
756
756
756
754
752
752
752
752
753
753
754
754
754
755
755
756
757
759
760
761
762
762
763
763
763
764
764
764
764
763
761
759
758
757
754
755
756
761
762
764
767
767
771
772
773
773
779
779
780
780
780
780
781
781
781
782
785
787
791
796
794
794
794
793
785
784
781
781
781
780
780
780
779
779
779
778
778
777
775
773
772
771
771
771
771
771
770
769
766
765
764
763
762
761
761
759
759
759
758
758
758
757
757
757
757
757
758
758
759
760
760
761
762
763
763
763
764
764
765
765
766
766
766
767
768
768
764
762
758
758
757
757
756
755
753
750
749
749
748
747
744
743
742
741
738
737
731
729
728
727
726
725
724
723
722
720
716
712
710
706
702
692
688
682
680
676
672
670
669
666
666
666
666
665
664
663
662
661
660
658
658
657
656
655
654
653
650
648
644
638
628
627
620
608
600
597
591
588
578
571
567
559
561
567
569
570
571
572
573
576
578
582
585
592
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
600
605
613
618
624
625
630
631
633
636
639
642
647
650
652
656
660
663
665
666
669
670
681
684
685
688
691
698
701
703
706
709
710
712
715
717
720
723
725
727
728
729
730
731
733
744
746
748
751
751
752
753
756
757
758
758
759
759
743
742
741
740
735
734
729
726
726
724
723
722
721
719
719
719
719
719
719
720
721
725
728
730
732
733
734
735
736
742
745
748
755
758
760
763
767
768
770
772
774
775
776
776
776
776
776
783
783
781
780
778
777
776
775
774
772
770
769
768
768
768
768
770
770
771
771
772
772
773
773
775
772
771
769
767
766
764
763
760
756
754
743
742
740
739
738
721
720
719
716
714
708
708
707
705
704
703
701
700
699
698
697
697
696
696
696
697
697
698
698
699
699
699
701
702
703
703
703
704
705
706
707
705
699
698
694
692
691
689
687
679
662
658
645
641
638
622
619
592
588
584
577
564
559
549
548
546
543
539
537
536
533
528
527
528
528
529
530
531
532
532
532
532
532
532
532
532
532
531
531
531
531
531
531
530
530
530
530
529
529
526
525
524
523
523
521
520
520
519
519
518
517
515
514
513
510
504
502
499
498
496
494
487
484
481
479
466
463
445
441
436
434
432
430
428
426
423
421
415
411
409
406
400
396
394
392
391
389
388
380
380
380
380
380
380
380
380
380
380
380
378
376
373
372
371
368
362
363
365
367
368
368
369
370
371
372
373
374
375
376
374
373
370
369
369
369
364
359
358
357
356
355
351
349
348
347
345
343
343
342
340
322
317
292
264
246
221
207
198
190
178
155
130
97
7
20
5
26
24
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
2
2
3
3
3
3
4
5
5
6
8
8
9
10
10
11
11
12
13
13
14
14
15
16
17
18
19
19
20
20
20
21
21
22
23
24
25
27
28
29
29
31
32
36
39
40
43
43
43
44
44
44
46
47
48
48
49
50
50
56
57
58
58
59
61
63
64
64
64
65
65
66
70
71
72
73
79
80
81
82
83
84
87
91
93
94
95
96
97
102
104
106
113
116
120
123
125
126
130
131
134
135
137
141
144
145
146
147
148
151
153
163
164
165
166
167
167
168
170
171
172
173
174
177
178
185
189
191
194
196
199
203
203
205
206
209
211
213
214
215
216
218
219
220
221
222
225
229
233
234
241
242
248
249
250
251
251
251
252
252
252
252
253
253
255
255
256
256
257
257
258
258
258
260
260
261
263
265
269
278
289
296
299
302
310
311
312
312
313
316
316
323
324
328
330
331
332
332
332
334
335
335
336
337
337
338
338
338
339
340
340
341
341
341
342
342
342
343
343
344
344
344
344
345
345
346
346
347
348
348
348
348
348
348
348
348
348
348
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
348
347
347
342
341
340
338
328
327
326
323
321
319
317
317
316
316
316
315
310
299
299
296
295
293
292
292
291
290
289
287
282
282
281
281
285
286
287
290
304
308
309
309
309
310
310
310
310
310
311
311
311
311
311
311
311
311
311
313
313
314
314
315
316
317
318
319
319
320
320
321
321
321
322
322
322
322
322
323
323
324
325
326
327
328
328
328
328
329
330
330
330
331
332
332
333
334
334
334
335
335
335
335
336
336
336
336
337
338
338
339
339
339
340
341
341
341
341
342
345
350
353
356
357
357
357
358
368
372
374
373
372
372
371
370
369
369
369
369
368
367
367
367
367
367
367
368
377
380
381
382
383
383
383
383
386
392
401
402
414
416
417
413
413
415
416
416
417
418
420
421
422
427
427
427
428
429
429
429
430
430
430
432
433
434
444
451
451
453
478
478
491
499
502
521
529
550
552
554
566
566
572
575
616
618
620
629
633
636
639
651
655
657
660
660
661
687
693
705
719
724
724
725
727
727
727
727
777
779
780
781
784
807
812
813
815
816
845
847
851
881
890
894
916
922
930
933
936
938
960
961
963
964
964
967
967
968
968
970
971
971
972
972
973
973
974
975
975
976
977
977
979
980
980
982
982
981
972
944
946
950
958
966
966
966
966
966
966
965
964
963
959
959
959
958
955
955
951
950
950
950
950
950
950
952
962
963
963
967
967
967
983
987
987
987
988
988
989
989
988
988
987
986
986
985
984
984
981
981
978
978
977
977
976
976
969
968
965
962
957
955
948
949
955
957
962
963
964
964
967
974
975
975
975
975
977
982
990
990
989
988
987
986
984
984
984
984
984
984
984
984
984
984
984
984
984
984
985
985
985
986
986
986
986
986
987
987
987
987
987
987
988
988
988
988
987
986
986
985
984
984
983
982
982
981
980
980
979
978
970
969
965
961
959
958
954
952
951
951
951
951
951
950
951
952
952
953
956
958
962
963
971
971
973
974
976
976
979
980
980
981
981
982
985
986
998
1002
1004
1006
1010
1012
1012
1005
1003
1001
1001
999
997
991
987
984
980
965
959
954
953
948
942
937
935
932
929
923
919
916
915
914
913
909
908
905
900
897
889
886
885
884
883
881
880
879
878
877
877
877
877
877
877
877
874
868
863
861
858
858
854
851
846
843
842
840
832
823
814
807
797
787
783
757
755
743
737
728
724
712
708
705
693
680
674
671
662
660
658
653
646
637
634
631
626
624
622
620
614
611
602
597
591
585
581
578
573
565
563
560
556
550
547
541
538
536
534
531
530
522
520
518
516
507
506
497
492
484
474
465
462
457
453
448
445
444
436
435
434
433
432
432
429
429
428
428
424
424
424
423
422
422
422
422
420
419
386
381
368
364
361
354
351
346
337
333
332
321
312
308
306
305
293
290
288
286
281
279
271
270
270
267
242
241
234
226
224
221
212
211
206
205
192
187
184
182
178
169
168
148
147
142
132
131
128
126
122
115
115
109
107
64
57
53
52
49
47
42
41
38
37
37
36
35
33
20
14
12
6
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
2
2
3
3
3
3
3
4
4
4
4
4
4
5
5
5
5
5
6
6
6
6
6
6
6
6
7
7
7
8
8
8
9
10
11
21
24
24
25
25
25
25
26
26
28
31
31
31
32
32
32
32
33
35
37
39
39
41
47
55
63
66
67
67
68
69
69
70
71
79
80
81
88
90
91
93
97
98
99
99
101
103
104
108
109
109
109
110
110
111
111
112
116
129
130
130
132
133
133
135
139
140
142
143
144
146
147
149
149
149
149
149
150
150
150
151
151
151
151
151
156
158
161
165
170
172
175
180
181
183
187
186
186
186
185
185
183
182
182
181
181
181
197
199
201
204
209
213
215
215
216
216
217
217
219
221
223
224
229
233
234
237
240
243
244
246
249
252
252
254
255
255
256
257
257
256
255
253
252
251
250
249
241
235
232
231
231
231
230
230
229
229
228
225
224
224
215
212
212
211
210
210
210
210
210
210
210
209
209
209
209
209
209
211
211
211
211
211
212
212
212
212
211
210
210
209
209
209
208
208
207
207
205
201
198
197
196
195
194
192
192
192
192
193
193
194
195
195
195
196
196
196
196
196
196
196
196
196
196
196
197
197
197
197
197
197
197
197
197
197
199
202
204
206
206
207
207
207
207
207
208
208
209
209
209
210
211
212
213
214
215
218
221
222
233
239
239
248
253
256
263
267
270
273
275
280
287
288
288
289
289
290
290
291
292
294
296
298
300
301
301
303
303
307
308
310
311
313
313
314
315
315
317
318
319
320
322
323
326
327
330
334
336
337
340
340
341
345
346
347
348
349
349
350
352
356
358
359
360
363
369
371
371
371
371
372
372
372
372
372
372
373
373
373
374
374
374
374
374
374
374
375
375
376
376
376
376
376
376
376
375
374
374
373
373
372
372
372
371
371
371
371
370
370
369
369
368
368
367
367
364
364
364
364
364
364
364
363
363
363
363
363
363
363
362
362
362
362
362
362
362
362
362
361
361
361
361
361
361
361
361
361
362
363
363
364
369
375
380
381
384
390
395
398
402
409
420
427
430
433
437
445
447
449
451
453
453
454
454
455
456
457
457
458
459
459
460
460
460
462
463
464
465
465
466
467
469
470
471
473
473
475
477
478
481
484
486
486
487
486
485
484
484
483
483
481
481
480
480
479
479
478
477
476
476
472
471
471
470
469
470
470
472
472
473
475
475
477
477
478
479
481
482
484
486
488
490
493
494
496
497
498
498
498
498
498
498
498
502
505
505
504
504
504
503
503
503
503
503
503
502
502
501
501
500
499
498
497
497
497
496
495
494
493
492
491
487
487
486
486
486
484
484
483
485
487
488
488
488
489
489
489
489
490
491
495
496
496
496
496
496
496
496
496
495
495
493
493
493
493
492
492
492
492
492
492
492
490
489
488
487
485
484
483
483
482
479
478
477
476
472
469
465
460
458
457
457
456
456
455
455
455
454
454
450
448
444
439
438
438
437
437
437
436
436
435
433
429
424
420
416
415
413
412
409
408
407
407
406
403
403
402
401
400
395
394
389
384
379
375
374
374
364
359
357
356
354
354
351
349
346
346
346
345
345
346
347
347
348
349
349
350
350
350
351
351
352
352
352
352
353
357
358
358
363
363
363
364
364
364
365
367
370
375
376
379
384
395
395
396
396
396
397
400
403
408
410
413
419
420
421
422
423
424
426
429
432
428
426
417
416
415
413
409
403
400
400
398
397
394
385
383
378
377
376
373
371
370
368
362
359
355
352
350
349
348
346
344
341
337
334
333
332
331
329
328
325
322
320
315
305
299
294
290
289
288
288
280
271
267
265
264
261
257
256
255
253
251
250
249
249
248
247
246
245
245
244
241
240
237
234
215
214
213
212
212
211
210
207
205
204
203
203
202
194
191
189
187
185
183
178
179
180
180
181
181
182
182
183
180
171
170
168
166
153
152
151
151
151
151
150
150
151
151
152
154
155
156
158
161
162
162
162
162
163
163
164
164
164
164
163
163
161
161
160
160
160
159
159
158
156
155
155
154
154
154
153
152
152
150
149
149
148
148
147
147
147
146
146
146
145
145
144
142
141
140
137
137
138
138
139
140
141
142
143
148
149
151
155
155
156
157
158
160
161
162
163
165
165
165
165
166
166
167
167
167
168
168
169
170
170
170
171
171
171
171
172
173
173
174
175
175
176
176
177
177
177
178
178
178
178
178
180
180
181
181
181
182
183
183
183
183
184
185
186
188
191
192
194
195
196
197
197
198
200
200
200
201
202
202
203
204
204
208
211
217
222
225
226
228
229
231
235
236
238
240
241
239
239
237
234
241
252
269
276
276
276
276
275
273
269
268
268
265
260
255
251
246
242
239
235
228
224
211
207
204
189
176
171
166
162
152
144
141
135
133
124
118
109
105
103
100
97
93
84
82
80
78
78
76
75
73
72
71
70
69
68
68
68
68
68
68
68
68
68
68
68
67
66
66
64
63
62
61
60
59
58
58
57
56
54
54
53
52
51
50
48
47
46
45
43
43
42
42
42
42
42
42
41
41
41
41
41
41
41
41
41
38
38
38
37
37
37
37
37
37
37
37
37
37
37
37
33
33
33
32
29
26
25
23
22
19
19
19
19
19
19
19
19
18
17
16
15
14
15
15
16
16
17
18
19
20
20
22
25
28
31
31
32
33
33
33
32
31
31
30
29
29
26
26
24
23
22
22
23
24
24
24
24
24
24
24
23
23
27
35
36
36
44
52
54
55
57
58
60
61
66
69
72
74
75
77
78
81
84
86
87
87
87
86
86
86
85
85
85
85
85
84
83
82
82
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
80
80
77
74
72
71
69
68
65
64
63
62
58
58
57
57
57
57
57
58
58
58
58
59
59
59
59
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
62
62
63
65
65
64
64
61
60
59
59
58
57
55
53
52
50
50
51
52
52
54
55
55
57
59
60
62
64
65
66
66
60
57
55
53
51
47
46
45
43
41
38
38
39
40
41
42
43
45
45
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
47
48
48
48
49
50
50
51
51
52
53
53
53
52
51
51
50
50
50
49
49
48
48
47
46
45
45
45
46
47
48
48
50
50
51
51
52
52
53
53
53
53
54
54
55
55
55
55
56
56
57
58
59
59
60
61
61
62
62
61
52
52
50
48
49
49
50
51
52
53
53
53
54
54
54
54
54
53
53
52
51
51
51
50
50
50
50
49
49
49
48
48
48
47
47
46
46
45
45
45
45
44
44
43
43
43
42
41
37
37
37
36
36
32
28
27
25
23
20
20
20
20
20
20
20
20
20
20
19
19
19
18
16
16
15
15
16
16
16
16
17
17
18
19
19
19
20
20
20
21
21
21
18
17
17
16
15
14
13
12
12
11
9
8
8
8
8
8
7
7
7
6
5
5
4
4
4
3
3
3
3
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
2
3
3
3
3
3
6
7
9
11
14
14
13
12
10
9
8
8
7
7
6
5
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
1
0
0
0
0
0
0
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
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
4
5
6
6
6
6
7
7
7
9
9
8
8
7
7
7
7
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
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
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
4
4
5
6
7
7
6
6
6
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
6
9
12
12
14
14
14
14
14
14
12
9
8
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
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
6
6
6
5
5
5
5
4
4
4
4
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
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
8
8
8
8
9
9
9
9
9
10
10
10
10
9
9
9
8
8
7
7
7
7
7
7
7
8
8
8
8
10
11
11
11
11
11
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
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
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
7
6
6
6
5
4
4
4
4
4
4
4
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
1
1
1
1
1
1
1
1
1
1
2
2
2
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
30
45
74
95
108
113
153
176
182
183
184
185
186
187
188
144
157
173
175
181
184
196
215
217
219
221
245
67
48
51
53
53
54
54
56
56
56
57
57
57
57
57
57
57
56
56
55
54
52
52
51
51
51
51
50
50
41
38
36
34
33
32
31
31
31
31
30
30
30
29
29
29
29
28
28
28
28
28
28
28
28
28
28
28
28
28
28
31
32
34
34
36
38
40
41
41
42
42
42
43
42
40
36
34
32
31
30
30
28
27
26
26
26
26
25
24
22
21
20
20
17
16
13
12
10
10
10
10
9
9
9
8
8
7
7
7
6
5
4
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
2
1
1
1
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
4
4
5
8
9
10
11
12
13
14
15
15
16
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
15
15
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
20
20
20
21
21
21
21
21
21
21
21
21
22
23
24
25
26
27
27
27
27
29
30
30
30
30
30
30
30
30
30
30
30
30
28
27
27
27
26
26
26
25
25
25
24
23
23
23
22
21
20
19
19
17
16
16
16
15
15
14
14
14
14
14
14
14
13
7
6
6
6
6
6
7
7
7
7
7
7
7
7
8
9
9
9
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
9
8
7
7
6
4
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
3
3
3
3
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
4
4
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
8
8
8
8
8
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
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
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
7
7
8
9
10
10
10
9
9
9
9
8
8
8
8
8
8
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
10
9
8
9
11
12
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
18
19
20
21
23
24
24
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
24
24
23
23
23
23
22
22
22
22
21
21
17
14
12
12
11
11
10
9
8
7
7
7
7
7
7
7
7
7
7
8
15
15
15
15
15
15
14
14
14
14
14
14
14
13
13
11
11
11
10
10
10
10
9
9
9
8
8
8
8
8
8
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
8
8
9
9
10
10
10
10
10
9
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
14
15
15
16
16
17
18
18
18
17
17
16
15
15
14
14
14
14
13
13
13
12
12
11
11
11
11
10
10
10
10
9
8
7
7
7
7
7
7
7
7
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
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
4
3
3
2
2
1
1
1
1
3
4
5
7
9
10
10
11
12
15
15
16
17
19
20
21
22
25
24
24
23
23
22
22
21
21
20
20
19
18
18
17
17
17
17
17
17
18
19
19
20
20
20
20
20
21
23
23
24
25
26
26
26
26
26
23
22
22
22
17
16
15
15
15
14
13
11
9
9
9
9
9
9
9
10
10
15
23
33
35
38
39
39
39
39
38
37
37
37
37
37
36
36
36
36
36
36
36
36
36
36
35
35
35
35
34
34
37
37
37
38
43
43
44
44
44
44
45
45
45
45
45
45
45
46
46
46
46
46
46
46
46
46
46
46
46
45
45
45
45
44
44
43
43
43
43
43
43
43
43
43
43
43
43
43
43
42
42
41
41
40
36
35
35
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
32
32
32
27
23
23
23
23
18
16
16
16
16
16
15
14
13
13
12
12
12
11
11
11
10
9
8
8
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
8
8
8
9
9
9
9
9
10
10
11
11
12
12
12
13
14
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
16
16
17
18
20
20
21
21
21
22
22
22
22
22
23
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
26
26
27
27
27
27
27
27
27
27
27
29
30
31
31
32
32
33
33
33
33
33
34
34
36
36
37
38
39
40
40
40
40
40
41
41
45
46
46
46
46
46
45
45
45
44
43
42
42
42
42
42
41
40
40
39
39
39
39
39
39
39
39
39
39
39
37
37
36
36
36
34
33
30
27
26
26
25
24
23
23
23
22
22
21
21
21
21
21
21
21
20
20
20
20
20
20
20
20
19
19
19
19
19
19
19
19
18
17
17
17
17
17
17
17
17
17
17
17
18
18
18
19
19
19
20
20
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
22
22
22
22
21
21
21
21
21
21
21
21
21
17
16
15
15
15
15
15
15
13
12
12
10
12
13
17
17
19
19
19
19
20
21
21
21
21
21
21
21
20
20
20
20
20
20
18
17
17
17
17
17
17
16
16
16
16
13
12
11
11
11
10
10
10
10
9
9
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
10
11
11
12
13
13
13
13
14
14
16
17
17
18
18
18
18
18
17
17
17
17
17
17
17
15
15
15
15
15
14
13
12
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
12
13
13
17
17
18
18
20
22
22
21
20
24
24
25
27
28
28
28
32
34
34
35
35
35
35
35
35
35
35
34
34
30
30
29
25
24
24
23
23
23
23
22
22
21
21
21
21
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
22
22
22
22
23
23
23
23
24
25
25
25
26
26
26
26
26
26
26
26
25
25
24
24
24
24
24
24
23
23
23
23
23
22
22
22
21
21
21
21
21
21
20
20
20
20
20
20
19
19
19
19
19
19
19
19
19
18
17
17
17
17
18
21
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
25
25
25
25
26
26
26
26
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27