7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
10
10
10
11
11
11
11
11
11
11
11
11
10
9
9
8
7
6
5
5
5
5
5
5
6
6
6
7
7
7
8
8
8
9
9
9
9
9
9
9
8
8
8
8
7
7
7
6
6
6
5
5
5
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
5
5
5
6
6
6
7
7
7
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
9
9
9
8
8
7
7
7
7
7
7
7
6
6
5
5
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
2
2
2
1
1
1
1
1
1
1
2
2
2
2
3
3
4
4
5
5
5
5
5
4
3
3
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
4
4
4
5
5
5
6
6
6
6
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
11
11
11
11
12
12
12
12
13
13
14
14
14
15
15
16
16
16
16
17
17
17
17
18
18
18
18
19
19
19
19
20
20
20
20
21
21
21
21
22
22
23
23
24
25
25
26
26
27
28
29
30
31
32
33
34
34
34
34
34
34
34
34
34
34
34
34
35
35
35
35
36
36
37
37
38
38
38
39
39
40
40
41
41
42
43
44
44
45
46
46
47
47
47
47
48
48
48
48
49
49
50
50
51
51
52
52
53
53
53
53
53
53
53
54
54
54
54
55
55
55
56
56
56
56
57
57
57
57
58
58
59
59
60
60
60
61
61
61
61
61
61
61
61
61
61
62
62
63
64
64
65
65
65
65
66
66
66
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
68
69
69
70
70
71
71
71
71
71
71
71
72
72
72
73
73
73
74
74
75
75
76
76
77
77
78
78
79
79
80
80
80
81
81
81
82
82
82
82
83
83
83
84
84
84
84
84
84
84
84
84
83
83
83
83
83
83
83
83
83
84
84
85
86
86
87
87
87
87
86
86
86
85
85
85
85
85
85
85
86
86
86
86
87
87
87
87
88
88
88
88
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
90
90
90
90
90
90
90
90
89
89
89
89
89
88
88
88
88
88
88
88
88
88
88
88
88
88
89
90
91
92
92
93
94
95
96
96
96
96
96
96
96
96
97
97
98
98
99
99
99
100
100
101
101
101
101
102
102
102
102
102
102
102
102
102
102
102
102
102
101
101
101
101
100
100
100
100
99
99
98
98
97
97
97
97
97
97
97
97
97
98
98
98
98
98
98
98
98
99
99
100
100
100
101
101
101
102
102
102
102
102
102
102
102
103
104
104
105
106
107
108
108
109
110
110
111
111
112
112
113
113
114
114
114
115
115
115
116
116
116
118
119
121
123
124
126
128
130
132
132
132
132
132
133
133
133
133
134
134
134
135
135
136
136
137
137
137
136
135
134
134
133
132
132
132
132
132
132
133
133
133
133
134
137
139
141
143
145
147
149
151
153
153
154
154
155
155
156
157
157
157
157
157
157
157
156
156
156
156
156
156
157
157
158
158
159
159
160
161
161
162
163
163
164
165
165
166
167
168
169
171
172
174
175
177
178
180
180
180
181
181
181
181
182
182
183
183
184
185
185
186
186
187
188
189
190
190
191
192
193
194
195
196
197
198
199
200
201
202
202
203
204
205
206
207
208
208
209
210
210
211
212
213
214
215
216
217
218
220
221
221
221
221
221
221
221
221
221
222
224
225
227
228
230
231
232
234
235
236
237
238
240
241
242
243
244
246
246
246
246
246
247
247
247
247
247
249
250
251
253
254
255
257
258
260
261
262
263
264
266
267
268
269
270
271
271
271
271
271
271
271
271
271
272
274
277
279
281
284
286
289
291
292
293
294
295
296
297
298
299
300
301
302
304
305
307
308
310
312
313
314
312
310
308
305
303
301
299
297
295
298
302
306
310
314
318
322
326
330
332
333
333
334
335
336
336
337
338
339
340
341
341
342
343
344
345
346
347
347
347
347
347
347
347
347
347
348
349
350
351
353
354
355
356
357
357
358
359
360
361
362
363
364
365
366
367
367
368
368
369
370
370
371
371
371
371
370
370
369
369
369
368
368
369
372
375
378
380
383
386
389
392
394
395
396
397
398
399
401
402
403
404
404
405
405
405
406
406
407
407
407
407
407
406
406
406
405
405
405
405
407
409
411
413
416
418
420
422
423
423
423
423
423
423
423
423
423
423
423
423
424
424
424
425
425
425
426
428
429
430
432
433
434
436
437
437
437
436
436
436
435
435
434
434
434
434
434
434
435
435
435
435
436
438
440
441
443
445
447
449
450
451
451
452
452
453
453
454
454
455
455
455
455
455
455
455
455
455
456
457
458
459
460
461
462
463
463
463
462
462
461
461
460
460
459
459
458
458
457
457
456
456
456
456
456
457
457
457
458
458
458
459
459
459
459
459
459
459
459
462
467
471
476
480
483
488
492
495
496
496
497
498
498
499
500
500
500
500
499
499
499
498
498
498
497
496
495
495
494
493
492
491
491
491
492
492
493
494
494
495
495
496
497
498
499
500
501
502
503
504
504
502
500
499
497
496
494
493
492
493
495
496
498
500
501
503
504
506
507
507
508
509
510
511
512
511
510
509
508
506
505
504
504
505
505
506
507
507
508
509
509
511
512
514
515
516
518
519
520
522
523
523
523
524
524
524
525
525
525
526
526
526
527
527
527
528
528
528
528
527
526
526
525
524
523
523
522
522
522
522
522
522
522
522
522
522
523
524
524
525
526
527
527
525
524
522
521
519
518
517
517
518
519
519
520
520
520
519
518
517
516
515
512
510
507
505
503
500
498
496
496
496
496
496
496
496
496
496
497
498
500
501
502
502
500
499
498
496
495
496
497
499
500
502
503
503
503
504
504
504
504
504
503
503
502
501
501
500
498
497
496
495
494
492
490
488
486
484
482
479
477
476
478
481
484
488
491
495
494
493
493
492
491
490
490
488
487
485
483
482
480
479
477
475
473
471
470
468
466
464
463
462
462
462
462
462
462
462
462
462
462
462
462
462
462
460
458
457
455
453
451
447
444
444
444
444
443
443
443
443
443
441
439
438
436
435
433
431
430
428
427
426
425
424
422
421
420
418
418
418
418
418
418
418
418
417
417
417
416
416
415
415
415
414
414
413
412
411
411
410
409
409
409
409
409
409
409
409
409
409
409
409
408
408
407
406
406
405
404
403
401
399
398
396
394
392
390
389
389
389
389
389
389
389
389
388
388
387
387
386
386
385
383
381
379
378
376
375
373
372
371
370
369
366
364
363
362
360
360
359
358
358
357
357
358
358
359
359
358
357
356
355
354
353
353
352
352
352
352
351
351
351
351
351
352
352
353
354
355
356
356
356
356
356
357
357
357
357
358
359
361
362
363
364
363
360
357
354
351
348
348
348
348
347
347
347
346
346
346
345
345
345
346
348
349
351
353
353
353
352
352
352
351
351
351
349
345
341
338
336
332
332
333
334
334
336
336
337
337
337
336
336
335
335
335
334
334
333
332
332
331
330
330
330
330
330
331
331
331
332
332
333
333
333
333
333
332
331
330
329
328
328
328
330
331
332
333
333
332
331
330
328
328
329
330
331
332
333
332
329
327
325
323
320
314
309
303
297
292
288
286
284
282
280
278
276
276
277
278
279
280
283
285
288
290
292
294
296
298
299
298
297
296
295
294
293
287
281
277
271
267
263
260
259
261
264
267
270
272
277
280
283
283
282
281
280
279
277
273
269
263
256
249
242
244
247
248
250
252
254
253
252
251
249
248
247
243
239
236
232
228
226
226
225
224
223
223
222
222
225
232
238
244
250
256
260
263
265
267
269
270
272
274
268
260
256
252
244
236
233
228
223
217
213
210
207
202
197
193
188
183
186
196
205
210
218
228
231
231
230
228
228
227
226
226
226
227
228
228
229
233
238
242
247
250
256
264
271
278
284
292
295
293
293
292
291
289
287
285
281
278
274
272
270
267
266
262
258
255
252
250
251
252
254
256
258
260
263
266
271
276
281
284
287
287
287
287
287
287
287
287
283
278
273
270
267
262
257
251
245
239
236
230
228
226
224
223
222
221
221
224
227
233
238
244
251
252
254
256
257
258
259
255
251
247
243
239
237
236
234
231
229
228
226
224
222
220
218
218
218
219
219
219
220
220
220
218
217
215
214
212
211
210
210
209
208
206
206
205
204
203
202
201
200
199
198
197
196
195
194
194
194
194
194
194
194
194
197
200
205
210
215
218
219
219
219
219
219
219
219
219
216
213
209
206
202
198
195
191
188
186
185
184
184
183
182
181
180
180
179
178
177
177
176
175
174
174
173
173
174
176
177
179
180
182
183
185
184
183
182
180
179
178
177
174
173
172
171
170
169
168
166
165
165
165
165
165
165
165
165
165
165
167
169
171
172
174
176
178
180
183
186
189
192
195
198
201
204
207
208
209
212
214
215
217
218
217
216
214
213
212
210
209
208
206
206
205
204
204
204
203
203
201
200
199
197
196
194
193
193
193
193
194
194
194
194
194
194
194
194
194
194
194
194
194
192
191
189
188
186
185
183
181
179
177
174
172
170
168
165
163
164
166
167
168
170
172
173
175
176
177
178
179
180
181
182
183
184
186
187
189
190
192
193
190
187
183
180
176
173
169
166
164
162
160
157
155
153
150
148
145
143
140
138
135
133
131
130
128
127
125
124
123
122
122
121
121
121
120
120
119
119
119
119
118
118
118
117
116
116
115
114
113
113
112
111
111
110
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
93
92
91
90
89
88
87
86
85
84
83
82
80
79
78
77
76
76
75
74
74
73
72
71
71
70
69
68
68
67
65
64
63
62
61
60
59
59
59
58
58
58
57
56
55
54
53
52
51
51
50
49
49
48
47
46
45
44
43
43
42
41
40
40
39
38
38
38
38
38
38
38
38
37
37
36
36
35
35
34
33
33
33
32
32
31
31
31
30
29
28
28
27
26
25
25
24
24
24
23
23
23
23
22
22
21
20
19
19
18
17
17
16
16
15
15
14
13
13
13
13
12
12
12
12
11
11
11
10
10
10
10
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
7
7
7
7
7
8
8
9
9
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
7
7
7
6
6
6
6
5
4
4
3
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
3
3
4
4
4
3
3
2
1
1
1
1
1
1
1
1
1
1
2
2
2
3
3
3
3
3
3
4
4
4
4
4
5
5
5
5
6
6
6
7
7
8
8
9
9
10
10
10
11
11
11
12
12
12
12
12
12
12
12
12
12
12
11
11
10
10
9
9
8
8
8
8
8
8
7
6
6
5
5
5
4
4
4
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
5
5
6
6
7
7
8
9
9
10
10
10
10
10
9
9
8
8
7
7
7
7
6
6
6
6
6
6
7
7
8
8
9
9
9
9
9
9
9
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7