3
3
2
1
0
5
7
8
8
8
8
8
8
8
8
8
10
17
17
9
9
9
12
14
15
17
16
14
14
10
5
4
3
2
1
1
0
0
0
-1
-1
-1
-1
-1
0
8
8
8
8
7
7
9
11
12
13
13
12
11
11
11
11
8
8
8
8
8
8
8
3
2
-1
0
1
2
2
1
0
-1
0
0
1
2
0
0
1
1
1
-1
0
0
0
-2
0
0
3
3
4
5
5
5
4
4
4
3
3
7
6
4
5
6
6
6
6
6
3
3
3
3
3
3
3
5
5
5
5
6
20
30
31
33
38
39
40
40
41
44
46
46
46
47
47
53
53
56
56
57
77
79
85
84
85
83
87
84
84
85
97
97
97
96
100
102
102
109
112
112
112
113
116
123
141
144
152
155
160
165
170
175
175
166
168
168
168
177
186
191
202
194
205
208
212
215
217
222
228
218
224
229
227
238
240
244
244
229
235
237
242
248
249
247
246
264
268
261
255
256
265
274
279
277
274
300
302
302
302
302
314
320
322
324
320
321
325
326
326
330
343
333
336
338
342
355
358
362
363
362
380
388
387
386
385
385
384
397
399
394
391
389
405
410
409
408
407
411
413
405
409
409
424
424
426
426
428
428
438
441
444
446
450
450
452
451
436
435
447
454
453
454
456
461
465
467
467
467
468
472
483
486
489
495
499
506
509
519
528
530
528
522
519
524
534
540
540
540
524
515
516
514
514
521
519
522
522
521
518
519
508
524
535
537
541
542
547
548
556
563
564
563
562
550
549
547
540
538
539
540
537
529
522
533
531
508
502
497
496
497
504
506
510
512
524
528
528
528
523
524
525
535
535
536
537
537
537
561
560
569
569
567
567
577
586
584
578
585
586
590
596
597
596
594
612
629
634
643
648
640
631
624
622
628
629
632
634
637
639
641
645
651
654
656
661
656
654
649
652
664
665
662
663
667
671
675
678
673
672
680
685
684
681
682
680
681
681
679
672
673
674
675
675
664
667
674
680
659
657
657
661
666
669
673
670
648
650
653
655
654
650
641
634
632
642
641
640
640
641
643
643
630
645
651
654
654
644
649
658
655
645
643
645
651
653
647
629
621
620
626
628
637
638
636
626
621
621
619
609
615
617
617
618
618
614
611
609
610
601
586
599
617
600
602
588
569
556
562
564
563
563
563
557
551
550
546
544
543
547
547
554
554
554
554
550
547
539
541
543
547
552
555
557
535
526
524
529
540
539
542
544
545
548
580
564
560
560
563
570
571
566
562
582
588
595
598
609
611
613
615
618
621
624
650
655
663
654
638
638
624
609
621
643
637
633
633
630
645
636
623
631
622
621
624
625
625
625
627
632
638
642
663
664
669
673
673
677
682
701
705
705
704
703
704
714
715
716
719
726
717
715
724
726
738
743
751
756
764
767
762
760
760
762
763
763
776
780
781
783
782
784
793
802
803
804
804
802
801
809
816
815
814
813
814
833
833
830
828
827
827
828
828
829
829
857
843
861
862
870
876
875
873
885
895
891
868
849
820
832
824
823
827
819
810
808
806
806
808
811
806
782
788
797
802
796
788
784
780
779
778
777
776
775
773
768
766
762
757
755
751
747
738
738
733
719
715
714
713
712
710
709
705
704
702
697
689
681
675
669
673
678
676
675
674
672
671
669
653
652
650
649
647
646
646
646
622
615
607
604
600
601
610
610
592
589
604
586
563
560
552
549
536
538
537
537
536
535
537
537
537
528
531
535
503
507
506
501
476
480
488
490
491
491
476
470
462
458
458
458
456
453
444
456
457
453
432
429
425
420
415
417
417
418
418
416
415
411
409
406
403
398
398
399
399
394
390
378
374
373
376
379
381
380
379
378
369
364
360
346
334
334
334
334
334
327
313
314
310
308
306
305
303
299
293
292
265
265
267
269
270
271
267
261
257
253
247
244
243
243
245
247
249
252
251
240
233
228
228
229
229
210
199
197
200
216
207
199
189
176
173
173
174
174
174
167
171
171
168
165
164
156
153
152
148
146
139
136
134
131
125
124
123
122
130
133
125
111
107
106
112
113
111
111
108
106
103
101
98
96
95
104
98
90
70
69
69
69
69
67
66
65
65
65
66
68
62
60
57
49
47
45
42
42
42
32
30
19
17
10
10
10
10
10
10
11
11
12
12
13
15
16
22
26
27
28
30
33
39
39
39
48
59
59
59
59
59
57
54
58
61
64
68
69
65
78
80
84
85
85
86
83
82
78
92
100
103
104
105
104
102
103
106
107
107
108
109
114
120
127
141
141
141
144
147
151
149
140
136
137
142
156
156
155
158
164
170
172
170
169
163
157
160
170
175
175
175
175
175
175
176
177
180
180
182
187
193
196
198
198
198
200
208
211
220
220
217
218
220
224
226
228
223
220
218
218
218
218
217
217
214
212
204
200
195
185
184
193
204
199
192
187
182
173
167
164
168
172
174
175
182
178
172
165
170
177
156
152
167
174
169
163
161
162
163
163
151
148
145
142
141
146
148
148
139
136
131
126
129
134
141
135
121
111
111
111
114
121
126
129
130
126
124
122
124
126
128
130
133
137
137
137
136
134
128
130
131
133
133
134
140
143
151
155
153
153
151
150
148
144
134
140
144
145
145
149
151
158
158
158
155
153
154
155
156
159
158
156
157
163
166
176
176
179
182
179
175
170
170
170
177
179
180
180
180
180
161
157
161
161
162
162
147
148
133
131
136
135
134
133
131
131
131
131
133
136
136
137
140
143
152
157
158
160
161
160
158
156
156
158
159
172
187
167
173
194
189
188
191
193
200
201
203
207
208
209
209
210
211
212
216
221
225
228
243
255
263
271
269
270
273
277
277
287
288
285
289
306
314
310
313
305
305
308
314
322
322
342
340
349
353
359
357
356
357
362
362
365
368
395
403
398
395
380
380
389
402
400
391
387
386
387
386
385
386
391
398
399
397
399
405
409
411
411
406
413
416
417
417
412
427
427
423
417
414
413
408
391
385
380
374
374
374
374
373
377
375
373
374
373
371
365
385
388
387
388
390
395
401
401
402
418
418
419
425
423
423
423
428
431
438
442
452
454
455
465
473
473
470
469
487
491
485
494
496
504
504
503
503
497
493
491
490
485
479
476
473
472
471
470
467
465
466
470
472
472
468
467
466
467
477
478
479
471
463
450
435
434
445
441
438
435
431
432
440
441
440
439
433
431
426
426
426
426
426
431
434
439
418
413
410
399
398
398
401
402
401
400
392
381
379
377
375
373
373
373
369
363
362
361
360
359
359
356
349
348
338
332
331
329
329
329
322
319
320
322
317
312
309
309
313
318
318
313
312
316
320
327
319
316
314
320
328
337
335
332
330
325
331
333
332
329
324
320
318
314
311
294
289
292
295
297
293
292
287
286
285
285
299
304
302
299
295
296
298
300
293
287
288
290
292
294
298
299
298
286
284
282
280
279
279
277
287
295
302
308
301
294
290
285
286
287
287
286
283
286
296
298
304
303
299
298
295
294
292
286
287
287
282
264
263
262
262
262
262
262
262
259
247
245
243
241
237
235
239
240
239
236
235
233
225
225
225
225
225
224
221
219
217
220
217
208
185
185
182
174
172
171
170
163
145
159
158
151
156
159
162
163
133
130
124
124
119
116
115
111
115
119
124
124
123
120
118
115
116
117
100
95
105
102
104
106
111
124
125
124
122
117
113
121
125
127
131
136
142
141
139
137
135
147
152
156
176
180
188
179
146
153
194
167
145
145
145
160
151
151
159
175
186
169
182
198
198
194
191
184
177
201
205
195
190
184
192
182
182
182
196
207
209
200
191
180
191
196
190
176
176
170
164
163
168
169
167
165
158
157
154
153
152
152
152
152
153
154
166
166
166
167
168
174
176
180
187
188
190
183
181
180
179
178
181
191
190
183
183
183
183
180
172
167
159
166
168
166
161
165
169
171
173
171
169
167
167
168
172
175
172
167
174
174
174
172
172
172
172
169
162
160
156
156
156
157
156
154
149
149
149
149
148
148
152
156
158
157
155
152
152
160
167
180
182
181
182
191
191
189
189
190
192
194
195
196
214
218
220
222
224
237
234
228
219
238
242
245
245
244
241
248
251
261
258
253
249
265
294
301
297
290
273
291
290
286
284
283
307
297
300
307
322
318
308
308
308
312
326
337
325
319
317
317
312
307
301
294
280
278
324
325
326
338
344
346
329
324
319
320
325
325
325
325
326
327
328
329
318
313
316
319
314
311
305
309
317
313
303
289
288
301
294
292
292
291
297
309
309
308
307
310
312
313
315
317
323
323
318
293
281
261
268
280
278
284
277
274
267
267
267
263
256
245
245
246
244
238
232
232
232
231
227
225
218
223
211
208
204
204
200
191
185
208
229
216
227
223
212
213
232
236
236
234
231
226
221
236
238
240
238
235
225
224
250
257
263
268
272
272
272
271
271
270
270
270
270
270
270
286
293
298
302
305
314
314
314
326
323
336
339
358
365
361
355
355
368
354
357
361
367
372
378
358
354
356
352
332
338
327
330
332
327
319
320
301
299
302
308
313
311
310
308
304
295
295
295
297
297
296
290
288
283
276
263
262
260
262
263
263
259
256
256
256
248
230
229
234
234
229
229
231
236
239
239
240
234
208
210
219
218
200
196
197
191
160
158
157
155
153
150
147
143
141
139
150
153
157
154
148
147
124
124
119
118
117
116
118
118
118
108
104
94
93
93
94
95
95
96
98
97
97
100
98
98
102
97
96
94
105
108
109
111
113
115
123
134
132
127
125
125
127
130
132
132
132
133
133
144
154
159
158
157
149
152
154
166
163
155
153
153
155
155
155
155
153
151
156
165
168
176
182
184
194
197
200
201
200
195
192
192
194
199
205
208
209
209
209
209
209
209
236
225
225
226
226
226
225
225
225
225
220
211
211
209
207
203
201
200
201
203
202
200
201
205
214
221
227
227
221
220
219
219
217
219
231
230
229
214
214
218
224
219
218
241
241
237
234
232
223
221
221
221
224
229
236
231
225
222
229
215
178
182
187
192
185
177
172
168
166
166
166
166
167
167
170
169
161
159
156
155
154
151
150
149
143
142
134
129
128
125
125
124
109
107
103
103
100
100
99
86
85
89
90
89
85
89
96
97
97
84
84
89
89
114
115
117
120
123
128
134
126
126
126
126
118
127
122
121
120
119
119
119
121
122
123
124
128
130
130
130
128
120
119
132
136
136
136
137
141
143
145
147
152
163
167
166
170
166
163
160
157
169
170
173
175
176
182
183
183
183
182
182
182
182
182
182
182
184
188
188
187
187
188
190
191
191
193
198
197
199
200
204
206
207
208
213
215
216
218
218
218
220
221
227
230
228
228
227
226
227
229
235
237
237
236
236
247
250
251
253
253
253
254
255
265
278
278
277
275
274
266
267
269
271
272
271
266
265
262
262
244
244
244
245
246
242
238
231
225
228
232
233
234
232
231
221
215
212
211
215
210
194
191
189
192
201
208
207
203
199
198
195
192
187
194
180
171
164
161
163
178
182
179
164
161
162
163
162
146
145
147
147
146
143
143
143
145
139
130
119
123
130
130
116
113
111
111
110
110
117
117
116
115
114
113
113
113
107
102
102
104
99
98
96
94
92
91
88
87
86
85
85
85
84
84
84
81
81
85
85
82
83
81
81
82
83
78
77
81
82
83
84
85
86
88
88
90
88
90
90
90
84
80
80
77
76
83
87
90
91
90
82
81
81
81
82
82
82
82
82
82
82
82
82
82
82
82
83
84
85
85
88
90
93
93
98
101
102
102
103
103
107
107
106
106
106
106
106
106
108
109
111
112
112
112
112
110
111
110
110
111
111
111
108
110
110
113
116
120
121
121
121
121
121
118
116
114
114
118
120
123
123
123
123
124
123
123
123
123
123
123
123
123
122
122
122
121
120
120
119
119
120
120
121
121
124
125
123
124
123
121
125
126
126
127
128
130
130
129
128
128
129
130
130
130
130
130
129
125
125
127
127
128
125
123
123
123
124
124
122
121
123
125
125
125
124
124
127
128
129
131
132
131
131
130
128
126
125
128
131
131
131
131
132
132
136
138
138
142
145
148
151
152
153
153
153
153
152
153
153
152
151
151
152
154
155
157
159
160
169
175
183
182
182
186
190
194
195
198
199
206
215
219
223
225
226
234
236
247
249
246
245
243
236
234
239
235
233
232
231
232
232
231
228
227
223
218
218
218
218
220
225
231
233
234
234
232
228
227
226
222
227
228
228
227
227
223
215
217
217
205
203
201
200
199
199
199
200
200
201
200
196
197
200
204
208
211
211
213
215
215
216
218
218
216
221
222
223
224
227
229
229
230
241
243
244
245
247
249
251
253
256
264
268
271
250
235
220
215
211
210
207
201
202
199
195
192
185
175
160
157
157
157
155
153
153
151
147
145
144
143
142
141
140
140
140
139
138
137
137
137
133
133
133
134
134
134
134
134
142
142
143
148
151
151
151
151
151
151
152
154
157
162
180
184
184
187
188
191
191
192
192
191
188
189
189
183
179
179
173
173
171
171
168
168
168
167
166
165
162
162
156
156
157
158
158
160
156
159
162
164
165
167
169
168
164
164
164
170
177
176
168
168
162
156
156
155
154
154
154
154
159
161
162
161
160
156
148
145
140
136
131
130
131
137
136
141
142
146
149
149
149
149
149
150
152
155
157
158
159
160
160
162
167
168
172
175
177
183
184
186
186
186
183
170
166
171
171
170
159
153
151
151
150
149
149
145
142
138
136
132
124
120
116
113
106
102
99
98
96
94
93
93
93
97
101
102
98
98
104
104
107
107
111
112
112
112
109
107
109
110
112
116
124
129
129
129
130
130
127
122
121
117
117
113
108
108
107
106
107
108
106
106
108
109
109
107
100
98
95
93
94
94
94
89
80
69
66
64
62
60
60
29
29
28
26
27
27
27
26
25
25
25
24
24
24
24
23
23
23
23
22
22
24
22
22
22
22
22
25
26
26
26
29
29
29
29
29
29
28
28
26
25
23
18
18
17
17
16
16
16
14
10
10
10
8
4
0
1
1
2
2
2
1
1
1
1
1
1
-1
0
0
0
1
1
1
0
0
0
0
0
-1
-1
-1
-1
0
0
0
1
1
0
1
1
0
-1
-1
-1
-1
0
0
0
0
0
0
0
0
3
1
8
8
8
8
9
9
9
8
8
8
8
6
3
4
4
4
5
4
3
3
3
3
3
3
3
3
3
1
1
2
4
4
4
6
7
7
5
6
7