1
1
1
3
3
4
4
4
4
3
4
2
3
3
0
0
0
1
1
1
2
3
1
2
2
2
2
1
2
2
1
2
2
1
2
4
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
2
3
3
6
4
3
3
2
2
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
2
1
1
1
2
2
2
3
3
3
3
3
3
0
0
0
0
0
1
1
1
0
0
0
1
1
1
2
3
4
4
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
2
3
1
1
2
2
3
4
4
4
3
3
3
4
4
4
3
1
2
2
1
2
5
4
4
3
5
5
5
5
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
7
8
8
8
9
9
9
10
11
11
12
12
12
12
12
12
13
18
19
19
21
22
24
24
24
24
24
25
26
26
26
26
26
26
27
27
28
29
30
31
33
34
35
35
35
35
35
34
36
37
38
43
44
45
47
51
52
54
54
54
54
54
55
55
56
59
64
63
63
63
65
67
71
74
77
77
78
82
91
95
101
112
119
125
122
116
109
108
112
112
113
114
114
112
109
99
97
95
94
93
88
86
86
86
87
88
90
92
93
100
100
100
101
101
101
102
104
109
110
116
118
121
126
127
128
129
130
130
133
133
132
131
128
127
126
125
124
122
121
121
120
118
118
118
120
121
122
129
130
131
134
140
142
143
143
144
151
157
163
166
166
166
166
166
166
167
167
169
169
170
171
172
172
172
170
170
169
167
167
167
170
172
174
178
181
181
181
181
180
180
179
179
189
196
197
196
196
195
194
194
192
192
191
192
195
199
201
202
204
206
210
212
218
232
238
243
244
244
246
247
249
251
254
256
260
264
268
269
269
269
269
269
269
270
270
270
271
273
273
273
274
274
276
277
277
277
281
285
288
287
287
283
282
280
278
277
276
281
284
288
290
291
292
295
299
305
307
316
318
320
321
322
324
325
328
329
330
331
332
333
334
331
329
327
323
318
323
325
327
332
335
339
344
345
347
354
362
369
372
380
382
381
381
380
380
381
385
388
393
394
397
399
401
403
404
405
408
414
418
431
434
436
440
440
441
441
441
443
446
448
449
451
452
454
456
457
459
461
464
464
469
472
474
482
484
486
492
484
483
490
493
495
496
497
497
498
499
500
505
505
505
505
504
504
504
504
506
513
515
523
525
524
522
520
516
515
518
525
533
538
543
548
553
558
559
560
561
532
531
529
524
527
561
567
570
570
570
570
574
577
584
591
593
593
594
597
587
583
582
573
570
571
572
582
584
585
587
594
598
601
611
612
611
609
604
600
594
589
591
592
592
593
596
597
592
588
585
576
582
584
585
596
605
618
620
620
620
626
630
634
634
629
623
616
613
610
606
602
607
612
617
621
623
625
627
628
627
625
623
621
619
616
614
615
619
623
626
623
616
616
623
628
643
651
655
660
660
660
659
655
651
650
647
646
645
644
648
652
656
659
666
673
673
660
640
627
622
625
623
610
608
607
606
605
608
616
622
623
627
631
634
629
625
618
608
599
595
591
599
598
595
599
603
606
607
609
618
627
627
627
628
628
629
629
630
636
638
642
650
658
668
662
655
665
671
683
691
694
699
698
704
707
712
719
715
710
721
734
744
748
752
743
740
731
731
731
732
736
751
748
747
743
736
726
706
699
690
687
687
687
688
688
675
667
661
655
655
657
661
661
654
641
632
621
619
614
610
605
600
599
598
597
594
583
578
564
563
561
558
557
552
549
546
540
540
540
540
540
538
538
538
538
538
537
537
534
530
527
527
534
526
524
524
523
522
522
520
519
518
512
512
510
506
505
505
506
508
509
510
515
522
527
508
506
507
508
509
510
513
515
515
516
516
514
513
512
508
521
517
519
519
518
517
516
515
506
489
491
497
507
503
496
492
488
484
483
481
480
467
458
451
449
447
445
444
442
439
436
419
410
409
409
407
405
403
399
397
395
393
390
388
381
376
371
366
361
357
351
344
338
332
321
310
302
299
296
293
290
287
288
289
290
292
294
293
291
285
280
277
271
263
256
240
235
233
232
231
231
231
231
230
230
229
229
229
228
227
227
226
225
224
223
223
223
223
223
223
223
223
224
224
224
224
217
218
218
222
217
206
202
197
194
190
189
187
185
185
184
183
180
174
173
172
170
168
168
167
168
161
155
150
146
145
144
135
129
127
125
126
122
118
114
106
106
105
105
105
104
104
104
103
103
102
101
101
100
100
100
100
100
100
100
100
100
100
100
100
100
100
103
105
106
106
106
105
103
102
102
102
102
104
101
103
104
105
105
106
109
111
111
111
114
116
117
143
147
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
152
153
154
155
155
155
155
161
162
165
167
168
169
170
176
178
193
195
196
200
202
202
201
201
199
199
201
212
215
216
217
219
220
225
226
226
226
226
226
225
222
224
238
238
244
246
243
242
241
237
232
221
218
214
213
216
205
196
194
192
186
181
178
175
173
172
175
179
182
184
185
173
173
172
162
145
144
147
148
148
151
154
154
153
149
147
132
130
125
120
119
122
127
138
139
136
132
128
123
117
103
100
100
100
101
94
90
88
88
89
91
94
95
95
95
91
84
74
72
68
66
64
64
63
62
61
60
57
50
47
46
45
55
55
54
54
54
55
55
56
52
52
52
53
53
53
53
53
53
53
52
52
52
50
50
39
38
38
36
36
35
35
35
37
39
39
39
37
37
32
30
30
29
29
29
29
28
28
28
28
27
26
25
25
24
23
23
23
22
20
19
18
18
17
17
17
17
17
18
19
22
23
30
29
29
29
29
28
28
27
27
27
27
27
26
23
23
20
20
16
16
16
15
10
10
10
10
10
10
7
5
3
3
3
3
2
2
2
2
2
2
1
1
1
1
1
1
1
1
0
1
3
3
3
3
2
2
2
2
2
2
3
3
3
3
3
3
4
4
4
4
4
4
4
8
5
5
7
7
4
3
3
3
3
1
2
2
3
3
3
0
1
2
2
2
2
2
2
2
2
1
1
1