0
0
0
0
0
0
0
0
0
1
1
1
1
2
2
2
2
2
2
2
2
2
3
3
4
5
6
6
6
7
8
9
9
10
10
11
11
11
11
11
11
11
12
12
15
18
18
18
23
27
32
34
34
43
55
67
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
94
94
94
94
94
94
94
94
94
94
94
94
94
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
96
96
97
98
99
100
100
100
101
102
102
102
102
102
102
102
102
102
102
102
105
110
110
110
110
110
114
118
118
119
119
119
119
119
119
119
123
127
129
134
139
142
142
142
144
146
161
175
188
200
210
210
210
210
210
210
210
210
210
210
210
210
211
212
212
212
213
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
215
216
216
216
217
218
218
218
218
218
218
218
218
218
218
218
218
218
218
218
219
220
220
220
220
220
220
224
229
233
235
240
244
248
252
256
257
258
259
260
260
260
260
260
260
260
260
260
261
261
261
261
262
262
262
262
262
262
262
262
262
263
263
264
265
266
266
266
267
268
269
270
271
271
272
272
272
272
272
272
272
273
273
276
279
279
279
284
288
293
295
295
304
318
330
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
359
359
360
360
360
360
360
360
360
360
360
360
360
360
360
361
362
363
363
363
363
363
363
363
363
363
363
363
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
365
365
366
367
368
369
369
370
371
372
372
372
372
373
374
375
375
375
375
375
378
383
383
383
383
383
387
391
391
392
392
392
392
392
392
392
396
400
402
407
412
415
415
415
419
423
438
453
468
480
494
494
494
494
494
494
494
494
494
494
494
494
495
496
496
496
497
498
498
498
498
498
498
498
498
498
498
498
498
498
498
498
498
498
498
498
498
499
500
500
500
501
502
502
502
502
502
502
502
502
502
502
502
502
502
502
502
503
504
504
504
504
504
504
508
513
517
519
524
528
532
536
540
541
542
543
544
544
544
544
544
544
545
546
546
547
547
547
547
548
549
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
571
573
576
581
583
588
593
598
603
608
613
618
623
628
633
647
662
677
692
704
731
731
731
731
731
731
732
732
732
732
732
732
732
732
732
732
732
732
732
732
732
732
732
732
733
734
734
734
734
734
734
734
734
734
734
734
735
736
736
737
738
739
740
741
742
743
743
743
743
743
744
745
746
746
747
748
749
750
751
752
753
753
754
755
755
756
756
757
757
758
759
760
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
776
777
778
779
780
781
782
782
783
784
785
786
787
788
789
790
791
791
791
791
791
796
801
801
801
801
801
806
811
814
817
821
825
830
834
839
844
849
854
857
862
867
870
875
880
885
890
905
920
935
947
962
962
962
962
962
962
962
962
962
962
962
963
964
965
965
966
967
968
968
968
969
970
970
970
970
970
970
970
970
970
970
970
971
972
972
972
973
974
975
975
976
977
978
978
978
978
978
978
978
978
978
978
978
979
980
980
981
982
983
983
983
983
984
985
989
994
998
1002
1007
1012
1017
1022
1027
1028
1029
1030
1031
