0
0
2
2
2
2
2
2
2
2
2
2
2
2
2
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
12
12
17
17
20
23
34
50
79
79
79
79
79
79
79
79
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
81
81
81
81
81
81
81
81
81
81
81
81
81
82
82
82
83
84
84
88
88
88
88
91
91
94
94
94
94
94
94
94
94
94
94
94
94
95
95
96
96
96
96
96
96
96
96
98
100
100
100
100
100
100
100
105
117
117
117
117
123
123
124
124
127
129
129
129
130
131
146
175
192
195
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
209
209
209
209
212
216
216
216
216
216
216
216
216
216
217
218
218
218
218
218
218
227
236
249
249
256
266
269
271
275
276
276
276
276
276
278
278
278
278
281
282
283
283
286
289
289
289
291
291
293
293
295
295
295
295
298
301
301
305
305
305
308
310
310
312
312
317
317
321
321
325
332
338
338
350
361
369
379
387
399
408
430
451
483
509
561
561
561
561
561
561
561
561
562
562
562
562
562
562
562
562
562
562
562
562
562
563
563
563
563
563
563
563
563
563
563
563
563
564
564
564
564
564
564
567
568
568
568
568
570
572
575
576
576
576
578
580
580
580
581
582
582
582
585
588
591
595
595
595
599
603
608
611
613
615
618
620
620
621
624
627
630
634
639
643
648
653
654
657
657
661
661
661
662
666
670
674
674
677
679
682
682
684
684
686
689
694
699
702
706
710
710
710
710
713
713
713
713
720
726
728
728
728
734
744
744
755
770
770
780
794
809
823
832
843
857
867
876
881
895
910
944
977
1009
1037
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1070
1072
1072
1072
1075
1079
1079
1079
1079
1079
1081
1086
1086
1086
1086
1090
1094
1094
1094
1095
1097
1097
1097
1097
1099
1104
1107
1107
1107
1110
1114
1114
1124
1139
1154
1154
1169
1184
1189
1194
1199
