4
2
3
4
4
4
3
3
6
6
6
5
5
7
7
2
2
1
4
3
2
2
3
3
5
8
8
8
8
8
4
4
4
4
5
5
3
6
6
6
6
6
6
8
9
9
7
7
3
3
3
3
3
3
3
3
3
3
3
3
4
5
5
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
7
7
7
8
6
6
2
2
1
2
1
4
3
8
7
7
7
7
7
6
6
6
5
6
6
6
7
8
9
10
11
11
14
22
22
28
29
35
40
49
59
63
66
70
73
70
70
69
66
64
63
55
45
46
46
46
49
50
54
58
60
61
62
62
59
55
54
54
53
52
52
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
49
55
56
61
61
81
83
104
103
103
108
117
116
116
115
113
113
113
113
113
115
115
114
114
114
114
112
105
106
106
111
111
111
113
113
112
112
109
108
108
103
101
100
97
97
96
95
95
95
95
93
91
95
97
101
102
106
122
122
124
125
128
128
126
116
114
112
112
111
111
111
111
112
113
118
118
119
116
116
115
114
113
113
114
114
114
113
113
113
113
113
113
113
113
113
113
124
124
124
125
126
128
129
129
129
124
124
124
124
131
137
138
141
142
142
143
143
142
142
142
142
144
144
144
142
141
141
136
137
137
137
137
138
138
139
139
139
139
139
140
140
140
140
138
136
134
131
130
135
139
139
139
139
139
138
136
134
131
128
126
126
128
128
129
131
134
137
139
136
130
126
111
108
106
101
97
97
96
96
96
98
98
98
98
98
100
101
102
101
101
101
101
101
102
102
102
103
104
103
102
103
105
106
108
111
112
115
119
119
119
120
127
126
126
126
125
125
125
125
125
124
124
124
124
124
123
122
122
122
122
122
122
119
118
117
116
116
117
119
122
122
121
121
121
123
125
129
142
145
145
152
167
170
173
178
184
195
195
195
195
194
194
194
194
193
190
191
182
169
169
165
162
172
172
168
164
161
161
161
161
161
160
160
160
160
159
159
159
159
158
157
156
154
152
152
151
151
155
158
161
161
155
150
143
134
134
133
133
133
133
133
134
134
134
134
134
134
134
134
135
135
135
135
136
136
136
136
136
136
136
136
135
134
134
137
138
140
142
143
143
143
143
143
144
150
151
153
156
158
158
170
171
167
169
170
176
174
173
171
172
172
172
174
174
175
180
190
192
193
195
197
217
218
221
224
224
226
232
241
242
245
252
254
256
257
257
258
257
257
255
253
252
250
250
253
250
251
257
259
261
262
266
268
268
268
269
275
279
278
272
274
274
274
273
273
279
278
278
277
277
278
282
287
289
292
297
299
306
308
308
312
313
317
318
323
324
325
326
327
327
327
328
329
330
333
334
334
334
334
334
334
336
337
338
339
340
341
343
345
346
347
349
349
349
349
348
355
357
361
364
365
368
371
372
373
374
374
374
375
375
377
378
379
381
381
382
383
383
384
385
385
385
385
385
385
385
385
385
385
389
389
395
408
414
414
414
414
414
414
414
414
414
413
410
409
409
407
408
408
408
409
409
409
410
410
418
419
426
434
449
460
463
467
465
465
464
464
463
463
463
462
447
445
448
450
452
454
458
460
461
462
464
466
472
472
474
477
476
473
474
475
476
479
482
485
488
492
509
509
517
520
520
520
520
520
520
520
523
524
525
525
526
526
526
527
527
528
528
528
528
528
525
519
517
515
514
514
514
515
515
515
515
515
515
515
524
524
522
522
521
521
521
527
529
530
531
533
536
536
530
533
535
536
535
532
530
528
516
516
519
520
520
521
521
523
524
524
525
525
526
527
527
528
527
527
526
525
524
524
524
524
524
524
523
523
523
523
523
521
520
520
519
517
514
512
510
510
506
495
483
480
476
475
474
474
474
473
473
474
474
468
461
458
453
450
450
450
450
450
450
450
450
451
451
451
447
445
445
445
444
442
447
453
460
467
473
473
473
473
473
474
474
475
475
475
472
472
475
476
478
479
479
480
480
480
481
481
481
481
481
479
478
477
475
474
473
471
462
450
441
434
425
419
406
405
403
403
402
401
401
400
399
393
393
392
391
391
390
389
389
388
386
384
384
383
382
381
380
377
377
377
377
377
377
377
377
370
362
362
350
350
352
354
350
347
344
343
339
337
337
337
336
336
336
335
335
335
333
333
333
333
333
333
333
333
334
334
334
333
332
327
327
326
325
324
323
323
323
323
322
321
319
318
318
316
315
314
308
307
302
300
297
296
295
290
289
286
284
284
279
278
277
276
275
271
270
269
268
267
265
264
263
263
263
252
251
245
244
242
242
242
242
242
242
242
242
242
242
240
241
244
242
239
255
254
252
247
244
243
242
241
238
237
226
226
226
225
212
212
208
202
202
203
203
203
203
200
199
199
199
198
195
192
191
190
189
187
186
185
183
179
179
178
178
177
174
174
172
171
172
172
171
171
170
170
170
170
170
170
169
169
169
169
168
168
168
168
168
168
165
162
161
158
156
156
154
147
146
146
144
137
136
137
137
136
136
141
139
130
128
128
127
123
121
120
119
119
119
120
121
121
121
120
120
119
118
117
118
119
118
118
118
120
124
128
134
126
123
122
119
120
122
122
121
121
120
120
120
120
122
128
123
123
122
120
118
116
114
114
114
111
112
112
112
112
111
113
113
114
114
114
114
114
115
115
116
116
118
117
118
120
121
121
122
124
124
123
123
123
124
124
125
126
127
128
127
127
127
127
128
130
132
132
133
133
134
133
132
133
133
133
136
137
137
137
137
137
137
139
139
141
145
147
147
149
154
153
152
151
151
151
150
149
149
148
148
147
146
143
143
143
143
144
144
144
144
144
144
144
143
143
143
141
141
141
136
136
135
132
132
132
132
132
132
132
131
131
130
129
129
128
128
128
128
128
127
127
124
124
124
124
123
120
117
117
115
115
115
115
115
116
116
116
115
115
115
114
114
114
114
114
115
115
115
115
114
114
115
117
117
119
119
119
118
118
118
118
118
118
118
118
118
118
118
118
118
117
117
116
116
116
116
116
116
115
115
115
115
115
115
115
115
111
111
111
111
111
111
111
111
112
105
102
101
100
100
99
99
99
100
100
99
97
96
93
94
97
99
104
111
112
111
112
111
108
107
103
100
100
100
94
93
94
95
93
91
84
84
84
81
80
77
73
71
71
71
71
70
69
68
68
65
65
63
63
64
64
65
65
65
66
66
63
59
58
58
58
58
58
58
58
58
57
56
55
53
53
52
52
52
52
52
50
49
49
48
47
47
47
47
46
46
45
45
45
44
44
44
44
43
42
42
42
42
41
41
41
40
38
35
34
34
34
34
34
33
30
30
29
29
29
29
26
26
26
26
27
27
27
27
28
28
28
28
28
27
27
27
26
24
24
24
24
24
22
22
22
21
21
20
20
20
20
20
20
20
20
18
17
17
17
17
16
16
17
17
17
17
17
16
16
16
15
15
14
14
14
14
14
13
13
14
12
12
8
7
4
4
3
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
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
1
0
0
0
2
7
0
3
1
2
3
3
4
5
5
6
7
7
8
9
9
10
10
9
9
8
8
7
6
4
3
2
2
2
2
4
4
8
8
8
8
8
8
8
7
7
5
3
3
3
4
1
0
7
7
7
7
7
6