0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
2
2
3
3
3
4
4
4
5
6
7
8
9
9
11
11
11
13
15
15
15
17
19
24
27
30
34
39
42
50
59
72
82
105
105
105
105
105
105
106
106
106
106
106
106
107
107
107
108
108
108
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
110
111
111
111
112
112
112
112
112
113
113
113
113
113
113
114
115
115
115
116
116
116
116
116
116
116
116
116
116
117
117
118
118
119
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
124
124
127
131
131
131
133
133
136
140
141
141
145
150
155
160
160
160
160
160
160
160
160
160
160
160
160
163
168
168
168
168
168
168
175
186
200
209
223
231
231
231
231
231
231
231
231
231
231
231
231
231
231
232
233
233
233
233
233
234
235
235
235
235
235
235
235
235
235
236
237
237
237
237
237
237
237
237
237
237
237
237
238
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
243
248
252
257
262
267
267
271
275
276
277
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
279
279
279
279
279
279
279
279
280
280
281
281
281
282
282
282
283
284
285
286
287
287
289
289
289
291
293
293
293
295
297
302
305
308
312
317
320
328
340
354
365
390
390
390
390
390
390
391
391
391
391
391
391
392
392
392
393
393
393
394
394
394
394
394
394
394
394
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
396
397
397
397
398
398
398
398
398
399
399
399
399
399
399
400
401
401
401
402
402
402
402
402
402
402
402
402
402
403
404
405
406
407
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
408
409
409
409
409
409
409
409
410
411
411
412
412
412
412
413
413
413
413
414
414
415
415
415
418
418
421
425
425
425
427
427
430
434
435
435
439
444
449
454
454
454
454
454
454
454
454
454
454
454
454
457
462
462
462
462
462
462
469
480
494
504
518
528
528
528
528
528
528
528
528
528
528
528
528
528
528
529
530
530
530
530
530
531
532
532
532
532
532
532
532
532
532
533
534
534
534
534
534
534
534
534
534
534
534
534
535
536
536
536
536
536
536
536
536
536
536
536
536
536
536
536
536
536
536
536
536
540
545
549
554
559
564
564
568
572
573
574
575
575
575
575
575
575
575
575
575
576
577
578
579
580
581
582
582
583
584
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
600
603
605
608
610
615
620
625
630
635
640
643
648
653
658
672
683
697
711
721
743
743
743
743
743
743
744
744
744
744
744
744
745
745
745
746
746
747
748
748
748
748
748
748
748
748
749
749
749
749
749
750
750
750
750
750
751
751
751
751
752
753
753
754
755
756
757
758
759
760
761
762
762
762
763
764
765
765
765
766
767
768
769
770
770
771
772
773
773
774
775
775
776
777
778
779
780
781
782
783
784
785
785
785
785
785
785
785
785
785
786
787
787
787
787
787
787
787
788
789
790
791
792
793
794
795
796
797
797
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
819
824
829
834
839
844
844
844
845
850
855
859
862
867
872
877
882
887
887
887
887
887
887
887
890
893
893
893
893
898
903
903
903
903
906
910
924
935
949
963
977
992
992
992
992
992
992
992
992
993
994
994
994
994
995
996
997
997
997
997
997
998
999
999
999
999
999
999
999
999
1000
1001
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1003
1004
1005
1005
1005
1005
1006
1007
1007
1007
1007
1007
1007
1007
1007
1008
1009
1009
1009
1009
1010
1011
1015
1020
1025
1030
1035
1040
1040
1045
1050
1051
1052
1053
