50
65
17
8
113
23
168
79
89
233
80
92
67
66
12
7
33
7
6
27
38
109
35
56
0
19
53
88
56
99
46
115
39
52
64
74
0
42
155
20
31
118
46
136
62
48
69
114
72
114
26
108
92
34
133
124
7
59
40
78
57
142
169
62
44
93
94
56
19
107
75
100
69
0
112
25
60
48
145
123
100
40
101
109
73
4
92
33
110
112
88
98
13
91
63
0
22
84
80
124
78
206
92
46
78
39
65
56
25
31
57
59
0
29
75
118
144
89
94
43
53
106
166
87
78
22
53
61
74
32
109
90
79
39
140
94
137
77
97
18
73
129
121
112
40
0
63
11
35
92
65
73
40
47
54
140
95
50
49
94
68
52
117
41
95
118
137
72
131
85
66
88
14
2
8
83
0
1
100
0
77
52
46
122
69
30
26
73
112
93
104
102
26
137
151
100
98
93
46
108
16
56
90
13
73
120
13
61
56
107
0
17
12
48
56
77
0
2
74
154
69
153
89
65
86
0
58
37
69
17
31
37
5
0
17
17
101
29
189
118
109
0
44
66
34
67
54
63
71
103
117
121
161
61
120
57
48
72
48
50
41
70
56
100
87
99
87
59
79
60
101
167
156
0
98
97
123
114
139
43
61
53
130
35
0
55
31
102
27
38
66
144
147
88
136
110
73
107
144
18
19
42
67
114
26
64
72
103
176
69
97
81
79
93
64
83
0
0
71
117
125
83
80
78
87
65
80
130
16
93
42
39
61
70
28
56
40
121
75
92
128
128
60
100
198
66
107
81
61
71
154
139
78
73
53
49
101
62
96
62
76
198
67
33
33
114
105
104
107
98
0
51
61
70
31
0
73
5
44
97
55
97
91
82
33
83
117
66
173
135
65
109
90
108
31
40
91
64
134
81
132
74
94
51
68
28
151
42
52
43
34
160
75
191
103
137
69
57
60
126
57
47
8
51
17
33
25
25
1
70
104
63
53
183
158
24
82
59
69
5
71
118
123
137
21
79
54
0
12
101
71
171
73
18
123
66
62
108
71
103
49
37
31
24
100
93
80
86
53
54
37
101
72
0
63
43
33
0
87
38
130
134
80
171
103
97
114
77
68
156
99
153
147
169
165
83
121
113
120
24
72
122
40
70
58
32
78
21
2
4
8
56
10
14
41
33
0
48
11
69
145
87
94
76
4
27
163
51
23
0
17
55
44
16
0
122
64
91
88
200
26
92
36
10
22
0
49
0
68
48
22
0
33
33
7
59
51
0
55
53
15
45
44
22
4
55
1
29
58
28
110
113
12
0
141
81
112
80
56
98
126
156
161
129
111
30
128
65
127
129
128
82
129
87
61
82
190
102
36
30
79
10
124
2
79
53
23
65
91
82
86
90
94
53
93
57
0
56
84
103
96
85
20
152
38
63
73
43
95
23
59
93
61
23
58
55
129
120
115
156
170
118
45
142
149
0
79
79
92
111
148
120
77
57
116
118
142
112
88
53
45
127
125
38
138
106
140
86
105
0
24
65
71
8
13
44
68
15
83
66
87
0
83
10
74
109
60
147
149
106
95
55
102
35
33
88
137
147
55
120
37
33
81
125
29
101
85
86
91
136
105
99
160
58
68
67
48
38
63
24
44
100
24
27
88
23
27
46
58
52
0
65
29
101
85
18
56
52
61
54
152
24
62
52
76
6
24
70
63
95
73
117
69
125
102
43
45
96
94
129
65
0
133
99
133
118
46
61
83
118
141
74
0
69
0
47
0
88
72
81
78
31
151
147
162
70
81
53
110
97
79
148
147
99
34
58
46
92
127
21
0
35
103
81
104
82
26
68
0
7
0
53
0
84
119
37
126
47
43
73
104
126
42
41
122
76
45
98
29
16
27
0
10
50
67
87
80
85
164
87
5
0
0
48
94
90
86
75
119
45
0
69
0
0
62
43
51
49
59
46
46
0
159
77
92
64
9
19
16
61
101
62
0
11
35
112
64
191
65
57
167
111
49
115
80
40
62
175
124
96
126
111
131
125
111
161
113
80
32
117
123
30
117
90
126
113
47
85
102
94
56
84
107
32
77
83
67
76
80
66
31
69
16
80
61
76
85
48
107
98
109
85
54
39
49
37
55
56
92
166
133
20
31
107
24
53
94
66
71
56
133
111
113
119
80
72
123
44
116
202
132
45
40
62
59
178
89
76
52
61
43
37
34
43
64
45
43
55
93
42
79
38
86
0
30
28
100
43
126
88
74
33
58
96
22
62
55
48
47
113
104
91
81
63
111
43
9
0
27
6
2
156
135
83
163
65
126
38
82
114
97
89
69
75
62
58
56
24
32
108
89
54
37
16
65
108
16
11
148
95
83
56
46
4
9
30
40
15
49
171
196
79
111
95
121
110
43
101
98
75
61
37
108
66
110
74
106
52
65
182
82
3
72
78
46
94
21
49
111
40
41
89
54
66
41
7
13
109
98
59
92
69
132
29
50
45
80
92
45
42
64
61
37
77
54
91
3
0
0
87
0
57
6
82
49
75
69
101
114
0
96
148
121
56
70
40
6
68
0
14
100
45
2
34
92
94
78
60
61
23
61
68
175
26
70
56
68
142
32
0
20
72
15
0
0
37
42
44
70
59
64
142
75
119
152
97
100
94
71
90
104
219
57
20
27
127
61
90
117
173
179
65
82
65
53
103
116
93
148
149
136
114
83
111
134
30
0
30
124
36
117
100
93
54
49
52
103
121
92
49
67
70
58
43
19
53
15
52
70
108
35
73
39
101
87
111
28
90
75
85
26
22
58
102
68
59
72
47
133
87
22
47
51
23
31
27
98
141
124
154
124
79
145
83
77
111
41
56
76
136
107
24
49
38
84
142
77
16
114
94
43
38
38
54
69
113
55
47
44
66
106
55
45
51
63
81
62
65
84
82
38
115
23
44
66
52
124
43
18
75
24
57
0
95
66
61
15
50
6
6
87
76
84
0
24
47
74
139
127
72
12
127
81
123
58
77
81
86
55
32
113
44
22
56
106
72
70
68
87
76
122
25
72
25
43
5
50
6
45
85
132
58
95
119
82
87
160
150
81
54
78
65
66
35
92
48
82
51
33
9
44
83
43
80
0
40
22
140
67
19
20
70
78
2
2
142
87
102
21
130
74
80
40
69
40
8
137
34
38
50
57
51
112
171
50
0
18
67
60
93
75
150
60
54
106
99
95
35
0
76
125
91
41
78
36
3
71
75
33
30
28
11
25
62
74
59
84
188
85
48
113
76
66
63
48
50
94
50
0
57
5
12
0
52
59
0
30
86
78
48
96
32
110
176
186
129
25
136
43
167
104
167
49
33
46
143
26
86
111
188
35
95
72
22
32
176
84
131
105
140
158
0
96
50
40
0
48
98
26
157
87
163
83
103
69
98
97
14
33
54
57
29
42
24
89
9
65
71
77
87
96
29
50
91
26
66
104
100
69
47
87
138
113
72
48
83
41
87
66
112
47
85
67
43
27
87
80
125
102
145
64
41
64
68
24
82
54
26
11
112
68
118
43
187
233
168
92
88
97
53
108
69
51
79
21
0
26
30
44
47
0
83
43
36
101
112
70
126
108
115
156
105
33
65
53
71
29
59
23
13
4
6
33
95
69
36
5
46
51
28
24
118
7
62
110
99
35
0
110
104
115
5
110
98
117
129
60
65
0
75
32
18
72
37
108
75
87
95
127
101
19
103
31
9
5
16
26
3
71
80
78
142
62
111
157
150
99
46
52
69
44
56
100
9
119
66
38
0
0
38
78
37
83
38
105
77
34
93
9
12
67
102
43
0
73
65
43
140
158
68
45
12
50
91
80
102
0
0
73
101
9
106
126
29
0
46
21
78
0
71
15
0
57
142
40
79
3
48
91
27
173
99
55
0
0
28
119
79
12
47
75
96
72
55
68
111
46
187
65
150
91
83
73
1
100
94
10
38
94
35
0
13
53
49
42
57
48
76
42
90
113
79
157
138
136
92
157
49
166
0
22
86
137
29
128
102
90
121
114
135
139
39
65
26
101
14
110
150
18
0
142
81
9
115
75
59
84
132
117
101
121
82
116
60
105
91
0
35
0
65
81
39
0
9
66
78
62
0
0
62
51
75
109
45
100
124
62
48
4
115
69
124
126
62
47
18
78
117
122
96
51
51
75
82
10
112
71
74
178
22
82
133
9
68
31
118
65
44
140
86
168
157
177
57
67
80
2
0
33
112
21
117
93
41
99
6
45
35
48
0
32
20
19
5
137
102
117
136
75
115
119
39
84
60
46
16
94
39
17
54
107
98
69
73
69
13
43
89
44
66
29
59
81
122
112
147
93
111
148
64
45
27
123
104
122
48
97
64
0
53
38
18
7
148
53
168
91
65
96
53
90
25
45
26
24
47
48
53
0
98
164
152
137
105
96
70
64
59
44
27
52
185
62
84
103
91
0
26
45
79
52
80
119
45
111
70
43
0
23
1
27
6
58
31
95
70
63
105
138
93
87
109
88
101
51
1
8
145
101
84
33
16
70
0
50
80
0
69
39
0
20
114
89
28
60
8
29
48
114
117
79
98
76
105
140
40
34
79
87
0
102
48
95
98
85
195
187
126
88
168
61
111
15
27
79
0
55
117
0
0
110
50
0
47
63
41
0
0
17
9
60
16
80
68
97
77
78
88
68
0
41
157
147
45
143
77
84
26
116
87
140
165
56
66
16
30
105
44
59
37
63
96
32
149
0
52
65
18
142
118
106
58
43
99
58
60
0
57
28
43
67
85
13
0
62
0
22
26
104
50
134
160
112
98
68
67
20
45
61
37
136
123
114
47
14
27
111
103
97
103
43
59
81
52
80
82
134
104
108
62
110
89
143
66
42
58
98
74
118
183
154
114
129
49
55
16
46
93
86
105
114
120
63
51
52
7
69
60
0
87
0
42
66
59
107
135
158
112
82
114
128
53
35
25
30
3
25
59
48
37
168
59
0
38
22
59
79
113
96
27
0
0
31
155
73
79
75
135
89
50
54
80
28
107
98
124
6
0
17
28
73
45
66
97
149
106
55
64
25
11
76
89
111
151
122
182
140
45
101
76
63
84
37
9
66
18
85
0
79
10
112
19
92
32
87
0
82
63
68
61
27
105
66
86
91
1
8
0
14
22
0
16
91
93
55
22
22
47
76
56
60
54
140
101
69
107
66
81
87
58
43
0
0
140
58
69
104
10
30
59
109
26
86
70
0
39
86
116
55
55
112
92
57
65
118
98
83
32
49
52
85
106
145
135
165
85
158
126
159
30
0
126
1
47
0
25
103
165
57
85
122
0
28
0
7
0
0
72
60
86
101
178
124
27
91
99
22
121
45
0
47
85
50
114
66
120
173
225
66
129
69
128
61
93
108
114
47
47
47
92
160
62
0
0
0
0
137
110
94
120
46
110
93
88
9
27
117
61
97
69
27
8
26
28
38
66
33
85
197
87
29
66
42
33
69
41
45
48
28
47
125
81
109
0
7
120
121
85
111
91
55
71
73
34
165
161
64
72
119
255
255
86
89
73
66
119
67
46
130
113
17
18
8
114
10
83
140
189
49
118
88
79
43
90
46
18
52
2
28
40
64
12
57
119
132
98
118
140
98
23
3
19
51
19
35
57
78
39
78
115
68
0
94
0
142
72
85
86
56
69
72
221
106
118
94
63
56
45
31
75
0
132
44
8
15
44
34
6
72
76
75
125
47
163
31
70
12
140
78
61
87
78
42
159
72
44
0
32
113
147
97
95
45
76
18
28
53
129
82
28
112
56
106
76
35
69
50
53
76
109
87
64
88
16
0
49
26
67
4
0
27
34
105
162
74
65
53
134
21
106
77
63
90
65
144
66
78
122
36
95
18
0
16
61
102
120
108
82
40
64
54
130
72
116
60
11
65
70
76
70
62
55
87
101
9
35
150
182
0
24
92
19
16
184
16
36
134
122
108
29
22
13
49
52
123
172
74
113
100
121
53
53
0
25
1
183
0
32
100
128
99
162
179
162
4
96
134
91
115
26
62
176
49
106
17
64
52
90
184
150
19
69
31
132
41
95
55
43
173
105
111
110
54
50
12
218
66
122
62
60
96
83
124
18
42
0
106
71
121
93
57
66
137
27
79
60
49
123
117
67
93
30
59
39
67
75
60
11
7
0
250
90
67
199
129
98
71
98
58
58
40
137
93
18
183
114
106
126
250
248
138
97
62
74
106
163
124
62
121
130
20
3
66
45
143
110
139
82
90
102
114
102
132
28
32
44
0
66
34
44
62
127
120
98
121
96
106
95
35
39
94
98
72
28
25
6
46
213
30
53
0
88
34
53
0
113
10
42
39
152
152
70
109
147
48
38
32
98
96
16
111
55
17
19
3
11
75
135
128
94
103
60
123
103
107
72
145
44
0
59
127
81
101
94
111
38
30
105
18
103
95
77
202
87
25
85
94
109
113
60
77
100
129
0
90
71
81
110
90
142
40
119
88
229
212
51
96
81
70
61
68
46
52
69
79
57
47
180
168
111
202
36
29
41
32
85
139
137
76
38
86
103
178
20
128
121
88
52
47
83
99
64
0
78
4
44
86
95
38
45
123
180
183
26
149
144
102
43
25
51
0
42
198
0
58
69
126
57
17
94
41
32
0
81
127
111
62
23
170
26
24
52
55
0
38
30
58
29
43
98
9
169
187
135
75
114
75
83
89
128
28
73
129
77
82
97
102
127
113
83
181
71
75
56
114
52
105
142
144
108
39
30
49
10
81
122
102
90
86
108
115
95
35
4
67
86
118
130
122
41
64
117
73
0
20
22
65
117
49
118
73
79
42
80
118
108
31
19
0
255
199
0
105
92
80
0
68
159
111
40
74
120
55
88
110
90
82
87
44
68
152
138
150
64
108
140
111
77
150
98
56
31
31
86
39
42
124
132
114
120
146
167
195
0
72
0
130
48
85
50
88
110
108
125
91
75
117
110
122
96
86
20
27
0
0
40
210
39
67
65
18
15
21
22
123
63
65
83
148
120
104
87
96
83
18
73
52
101
26
70
106
52
48
0
44
88
84
78
115
86
85
152
76
88
57
47
57
55
66
210
195
94
83
135
115
78
60
0
82
58
138
100
9
49
137
99
82
124
133
49
137
71
57
62
53
83
108
31
114
148
81
100
133
120
102
0
33
0
13
67
155
28
7
9
106
163
178
101
99
149
152
24
104
130
183
116
94
31
18
36
81
28
59
95
73
69
53
58
38
132
169
123
55
5
25
57
111
34
84
156
189
186
75
136
0
26
13
62
41
0
91
85
0
0
45
154
99
72
75
44
17
53
35
55
57
63
90
26
56
26
31
6
54
59
140
70
144
76
81
53
202
44
118
83
62
30
65
54
0
69
157
102
87
80
72
95
42
56
83
0
0
42
43
57
70
22
71
144
65
51
54
54
26
73
103
58
74
56
100
107
111
66
15
47
105
107
67
92
80
72
147
68
0
0
25
93
101
0
136
73
87
44
50
87
98
83
106
91
14
97
171
0
19
72
10
69
167
145
146
92
77
102
43
83
53
88
46
122
77
53
127
101
82
58
135
138
121
100
108
69
59
30
27
29
23
67
105
146
105
129
72
151
72
70
32
84
58
34
83
101
44
114
105
86
67
68
40
86
66
110
21
7
13
15
85
117
78
108
132
11
9
35
83
66
39
60
67
170
135
73
109
93
81
76
82
77
121
85
161
40
76
61
32
58
111
44
45
50
110
109
148
171
156
60
33
11
29
14
186
194
122
114
11
31
107
77
90
50
87
114
58
39
13
103
124
126
83
167
32
45
0
74
30
94
107
36
116
86
158
78
36
48
36
103
30
7
9
0
70
72
100
158
109
172
138
80
87
101
80
174
0
109
208
129
178
26
20
55
60
103
22
156
105
69
24
8
80
18
84
84
126
87
38
47
51
46
118
76
169
136
108
26
79
136
46
68
12
9
17
57
157
66
0
1
63
92
16
64
63
88
86
30
4
129
94
167
0
0
113
118
121
59
95
70
43
103
64
112
138
206
36
92
90
109
93
108
78
40
63
73
39
78
53
122
56
52
59
39
40
161
108
151
75
44
42
108
113
90
35
120
108
81
118
0
41
44
43
117
86
102
65
119
28
73
69
122
67
50
41
59
156
33
10
67
34
26
13
66
75
103
112
127
103
63
48
96
60
83
25
252
33
21
56
48
64
16
89
108
117
126
76
84
128
130
86
98
117
147
109
58
46
32
138
97
166
114
132
104
47
55
33
38
60
20
59
55
125
63
98
126
22
85
7
57
7
107
35
105
89
122
111
96
60
57
65
47
51
137
34
4
42
0
23
102
83
118
58
97
0
80
104
33
39
76
56
39
155
91
72
116
114
83
84
112
91
128
148
109
106
89
104
66
64
59
96
86
0
100
96
159
108
126
80
57
38
20
118
36
58
127
126
37
36
87
25
84
48
88
114
43
71
71
70
121
120
98
114
129
90
13
71
45
61
29
126
93
124
82
71
41
118
57
143
24
7
51
29
83
144
147
98
99
49
67
76
81
60
198
130
94
63
195
177
146
76
127
160
60
144
112
115
110
109
156
122
46
35
72
60
82
93
31
6
87
84
111
130
116
143
100
23
77
102
21
0
63
42
0
163
116
0
0
74
13
102
26
97
94
92
69
108
73
94
5
0
65
142
153
114
105
19
56
61
44
103
91
96
90
161
83
80
141
157
147
114
155
244
181
3
42
111
147
138
80
65
35
37
150
215
28
102
84
81
111
142
134
81
108
102
40
100
113
98
118
76
67
51
101
124
76
41
96
40
29
47
48
47
15
57
137
55
150
108
61
72
31
30
124
46
139
76
73
127
94
82
124
83
36
49
0
33
102
48
54
32
94
55
196
103
113
90
55
70
144
130
102
78
71
35
30
132
172
108
72
86
86
79
79
154
70
12
39
128
115
113
84
81
46
87
118
117
129
106
98
126
128
62
134
132
127
113
117
101
141
135
86
62
6
20
11
18
45
10
51
36
158
118
23
102
69
72
81
168
118
153
34
5
88
55
114
112
116
160
71
69
63
151
138
39
63
55
0
40
128
112
126
4
76
20
5
14
39
95
63
58
72
130
62
54
21
77
57
34
106
16
68
44
68
82
50
50
23
40
76
57
68
112
26
77
21
9
42
63
69
160
104
83
31
79
91
62
125
96
43
68
87
68
152
117
30
112
70
70
101
36
81
0
133
57
71
110
113
142
78
130
28
23
108
26
128
57
93
48
66
83
52
139
53
57
124
82
59
74
75
79
141
120
103
103
128
141
130
37
55
19
82
129
84
239
0
0
42
135
93
44
104
108
52
26
84
47
55
140
115
107
171
139
118
208
252
184
251
205
195
163
126
95
227
225
255
212
70
68
89
40
109
123
66
74
60
37
131
76
100
0
72
8
51
0
103
110
66
93
71
150
94
80
89
133
112
78
86
131
92
49
61
25
149
20
2
93
73
6
71
47
59
77
15
33
125
97
108
84
56
58
109
52
0
30
62
56
100
71
74
135
100
15
14
29
34
90
64
32
15
125
98
202
104
145
37
106
25
125
14
157
139
60
37
44
122
20
73
106
53
67
62
126
72
99
54
100
73
164
48
95
73
62
74
75
71
93
129
115
99
75
110
133
157
130
120
125
88
119
112
0
142
0
26
21
0
108
137
45
53
90
0
36
63
0
72
109
92
167
102
74
52
100
95
58
125
179
123
104
59
15
48
97
134
84
109
103
36
89
72
125
40
64
91
0
4
0
72
20
65
105
64
45
65
128
116
119
95
111
106
51
67
80
119
106
128
30
147
173
78
113
79
40
14
5
62
48
29
86
195
171
95
24
133
78
64
88
65
35
180
128
141
55
92
91
20
45
96
30
111
57
62
86
79
102
110
136
147
143
73
176
4
89
59
190
0
148
62
125
106
90
77
67
101
57
10
93
0
35
81
135
133
154
146
91
49
26
51
64
130
72
117
109
151
3
3
37
180
105
33
0
132
89
57
57
48
62
178
169
103
121
111
164
93
131
159
242
255
255
255
230
120
115
104
95
0
121
67
13
94
213
64
119
121
66
87
229
130
81
0
81
52
190
96
144
30
26
75
69
83
50
119
66
204
142
85
118
122
92
87
98
90
24
94
45
76
77
61
90
56
15
83
59
83
148
74
83
139
91
122
97
93
6
35
88
83
46
59
106
131
148
95
0
17
6
54
16
20
93
57
35
85
124
101
76
128
0
44
17
107
58
0
102
132
34
13
77
117
93
28
98
143
106
104
121
128
149
135
79
162
102
8
85
119
37
11
30
51
95
27
88
105
109
111
94
195
153
89
89
36
40
20
79
30
159
23
92
26
113
87
57
58
148
52
116
98
115
63
38
54
89
138
58
65
118
101
92
145
66
31
41
81
48
129
101
98
139
111
67
134
49
84
170
95
58
36
3
19
0
105
85
24
103
41
121
135
101
76
55
66
89
151
35
59
176
81
87
47
68
103
56
51
65
35
39
59
35
90
75
82
71
5
51
31
108
103
76
75
122
227
104
84
70
64
71
49
96
38
131
54
59
97
101
101
157
95
118
138
48
130
0
69
85
170
33
140
155
116
113
19
59
34
0
105
0
88
50
52
60
122
123
99
66
26
44
0
0
66
137
58
52
68
104
57
55
31
208
78
71
62
97
13
13
0
63
0
35
77
48
0
82
108
107
70
39
95
55
79
106
135
116
81
92
106
77
124
49
50
166
162
0
223
24
95
103
179
105
110
68
44
123
113
71
73
14
32
16
69
132
121
94
105
126
176
128
116
131
81
104
134
100
32
44
112
82
93
156
95
76
52
77
79
88
124
49
66
35
54
82
83
116
93
15
52
93
130
100
121
84
138
99
65
79
64
67
96
46
122
56
70
41
97
70
128
87
9
57
66
70
75
98
117
147
71
37
132
59
101
146
69
158
109
139
111
137
98
84
73
35
105
41
80
139
96
73
42
57
49
52
113
148
109
127
102
98
154
79
87
121
19
46
84
44
224
211
80
26
58
62
68
46
191
127
0
0
114
15
55
142
95
121
108
103
117
46
135
34
18
69
0
16
46
129
108
68
89
104
94
152
60
46
92
161
150
118
0
73
5
78
72
61
55
44
176
121
18
49
103
103
154
101
82
78
116
144
92
90
120
134
73
60
89
39
14
57
17
166
35
66
91
44
19
21
35
68
113
134
163
79
62
28
158
52
110
37
55
121
68
55
66
82
38
80
58
93
145
99
91
61
56
50
0
93
55
90
194
73
44
68
121
74
0
120
34
56
0
36
112
172
92
91
37
49
86
32
95
98
102
105
72
62
117
64
39
93
107
91
0
43
143
51
12
0
0
83
50
80
44
0
0
98
168
125
46
140
157
203
154
174
156
115
114
29
129
126
65
62
141
163
25
100
26
68
58
0
178
157
130
69
101
67
19
104
23
25
76
69
102
22
40
94
29
158
141
98
40
82
175
92
106
88
65
148
93
147
129
135
76
45
103
132
104
111
110
75
28
109
66
87
121
173
61
56
70
75
187
102
97
104
19
35
118
66
124
72
65
55
97
93
70
109
84
88
80
104
93
79
34
68
74
103
126
47
111
97
47
74
181
81
136
123
184
130
109
50
120
51
50
64
47
131
145
147
155
45
67
72
46
47
194
118
159
179
0
40
73
9
102
40
25
84
96
82
167
141
7
77
35
74
123
55
97
2
0
66
36
125
143
46
87
164
85
162
140
139
18
17
0
36
68
72
46
21
114
44
110
159
50
111
77
56
63
17
10
59
70
44
47
112
88
26
107
85
178
37
88
7
92
125
33
144
137
2
100
178
69
174
116
122
58
130
11
18
56
101
92
62
108
124
52
0
23
39
9
39
40
130
113
42
58
141
181
65
121
79
134
99
168
64
22
56
26
62
136
114
102
109
32
143
0
0
19
34
26
59
0
57
24
45
64
0
34
0
11
0
64
117
108
103
119
9
81
16
16
113
16
103
26
17
47
26
18
0
129
26
76
53
56
0
0
31
7
24
70
59
81
71
0
65
35
119
91
53
72
158
147
113
108
38
111
95
0
0
78
183
193
231
100
231
34
32
0
134
111
110
194
129
211
60
29
54
36
26
17
23
69
57
69
136
59
34
49
70
84
16
41
119
53
37
118
70
83
88
126
114
87
88
91
128
115
114
125
187
61
132
94
60
145
112
84
193
2
84
0
64
41
74
12
0
14
92
102
60
34
48
23
18
97
73
0
95
126
108
86
0
51
65
47
70
50
140
81
141
171
128
50
81
170
109
154
112
136
105
78
66
40
65
111
28
144
143
151
97
78
47
79
77
0
28
127
76
132
93
60
10
61
64
87
63
167
88
85
156
0
109
134
73
10
24
51
121
19
36
60
63
26
101
168
150
62
116
52
100
148
29
72
0
13
59
14
77
100
120
26
200
67
75
124
37
75
57
99
33
117
162
48
0
75
137
76
81
72
123
100
0
57
121
79
114
72
105
96
82
44
103
33
108
30
110
86
108
47
73
83
43
66
109
80
43
85
46
25
42
114
64
55
98
133
111
162
90
133
68
100
141
143
145
67
49
34
50
138
71
117
97
49
52
34
0
59
52
1
115
0
50
70
50
31
65
18
12
12
0
112
151
90
128
88
0
0
1
8
31
26
0
80
63
42
5
49
9
128
131
0
0
39
157
77
28
13
34
12
84
71
47
112
0
0
0
75
4
101
117
99
58
54
63
22
4
44
112
143
104
106
177
86
255
70
115
62
97
100
103
113
81
85
87
57
78
58
28
18
12
42
71
51
41
107
70
55
40
10
56
98
35
19
37
45
32
9
26
18
108
0
64
176
136
127
136
17
0
0
19
77
4
64
99
15
85
81
75
84
151
17
7
35
42
0
5
81
80
119
113
1
46
41
24
121
31
88
88
97
151
56
23
61
45
48
52
114
143
153
152
149
114
113
124
137
153
152
111
124
93
47
70
40
59
76
69
170
125
91
112
42
155
77
70
51
30
47
99
87
73
70
102
83
93
97
146
66
118
141
25
128
79
41
0
9
0
60
60
69
64
38
65
108
195
172
85
107
53
118
51
48
0
13
21
158
0
154
54
80
75
96
55
70
64
61
116
38
71
64
106
145
106
65
0
98
145
75
80
51
87
0
58
135
183
120
144
59
67
195
141
111
115
69
116
109
83
71
76
75
30
45
38
138
137
42
75
36
17
11
73
36
8
33
44
110
125
61
145
73
67
171
87
108
0
58
38
56
25
44
54
64
77
97
91
60
63
106
65
58
59
1
82
0
80
31
49
72
72
0
118
120
136
108
98
58
68
51
34
105
46
48
0
94
67
81
19
89
36
157
0
5
20
0
113
34
41
92
133
57
39
37
133
0
61
8
93
127
0
81
109
73
144
178
30
14
134
120
0
91
127
126
158
157
38
65
26
57
91
116
39
158
132
51
105
77
31
30
33
7
43
76
56
87
110
72
103
49
79
43
103
91
34
49
27
20
80
40
24
190
35
52
127
97
110
77
78
29
0
52
77
55
98
20
64
118
37
75
110
83
116
115
70
31
56
77
103
99
82
117
64
101
77
8
89
57
146
53
166
140
115
103
63
108
49
23
109
105
94
140
143
121
94
121
57
87
108
53
45
73
37
59
51
20
23
130
96
118
168
133
65
94
102
6
92
103
111
91
105
56
105
93
117
77
77
126
130
110
104
66
72
58
79
66
70
34
68
113
106
47
33
153
126
232
231
76
88
61
61
27
102
0
8
18
93
155
97
78
89
97
53
122
58
32
13
26
120
147
94
91
213
131
177
79
64
99
107
83
71
86
87
35
95
90
77
105
82
148
100
214
180
151
210
178
175
147
128
112
84
97
58
86
44
169
53
19
50
6
0
0
125
0
30
196
126
120
118
176
112
145
50
72
0
81
0
79
88
22
47
86
108
121
122
79
74
132
27
55
0
135
102
70
65
116
86
39
112
25
36
110
87
107
71
79
61
54
86
57
32
62
0
0
91
63
41
37
0
13
82
17
24
135
47
119
23
37
57
35
51
55
41
160
66
11
84
109
101
0
117
45
61
87
116
0
64
130
145
83
61
149
108
113
5
52
0
26
80
121
147
43
142
116
7
87
64
12
8
23
5
44
74
69
105
62
27
37
80
109
35
44
209
38
63
80
11
31
147
102
93
82
47
29
41
41
27
17
163
75
126
64
58
62
56
32
84
12
74
34
56
96
104
55
45
121
94
109
107
90
110
104
118
91
71
51
76
111
66
175
129
66
90
91
70
45
95
107
30
95
109
53
24
128
90
113
56
47
115
36
102
46
55
54
48
58
124
106
116
122
130
23
72
126
96
101
119
142
107
103
101
146
167
109
87
184
174
140
69
143
147
44
56
0
4
9
98
166
120
76
42
44
91
200
255
230
129
105
95
40
23
96
0
24
117
140
143
94
110
135
83
38
115
165
15
47
0
138
27
119
79
175
122
86
93
48
5
133
132
29
35
84
54
49
114
86
80
79
92
122
132
91
125
120
176
157
202
49
65
55
109
116
90
82
83
108
8
24
10
77
59
0
34
171
88
72
115
137
108
134
101
40
115
133
25
28
53
92
18
0
0
73
93
61
118
88
145
99
63
62
72
62
117
128
102
76
55
88
56
41
60
74
38
42
43
30
27
106
127
48
4
20
112
87
0
17
55
69
50
51
0
12
18
57
105
74
117
0
45
81
51
0
95
0
76
112
120
38
7
0
56
22
18
46
65
157
183
141
9
81
204
110
59
0
6
35
78
35
61
56
121
125
102
38
104
67
65
3
6
47
58
31
22
113
68
0
62
4
125
59
71
125
59
19
67
93
55
137
67
87
124
93
43
18
0
0
14
167
146
68
75
39
40
65
71
29
62
6
0
62
48
26
16
109
110
132
105
88
45
116
46
114
119
102
27
111
106
155
147
94
68
94
85
153
62
89
36
94
131
63
57
116
123
100
27
72
114
72
97
61
38
46
59
59
110
123
100
134
157
51
39
79
101
102
97
87
168
176
93
183
173
189
118
188
203
186
147
154
188
107
56
76
2
21
21
112
123
88
91
101
111
110
177
175
181
118
102
138
130
51
76
0
95
51
31
100
95
17
98
59
124
101
128
117
118
86
77
89
143
23
154
133
178
71
97
27
125
106
42
35
86
47
170
88
124
123
152
114
91
70
99
62
71
104
146
71
68
90
109
84
114
134
158
129
122
98
72
67
57
27
40
137
66
81
42
142
192
131
120
92
71
105
47
27
97
81
62
42
5
44
58
17
0
96
110
59
120
186
60
141
124
68
93
123
136
159
86
107
48
13
10
3
18
76
0
75
53
151
49
13
13
0
0
40
51
62
55
27
13
0
0
24
43
38
66
129
0
8
86
105
34
25
56
131
121
75
15
43
0
15
53
96
0
33
101
28
80
105
129
118
141
46
44
62
38
0
51
31
163
54
156
35
148
48
120
29
12
26
43
38
14
61
112
56
85
121
108
55
84
124
56
91
73
29
51
47
108
108
110
157
21
167
46
80
100
40
68
238
0
65
24
25
88
153
43
71
5
104
36
0
45
91
51
62
61
55
25
37
62
47
53
43
51
117
136
110
160
127
48
83
77
101
98
95
109
80
92
111
83
106
92
134
132
67
115
50
69
78
125
41
78
68
44
93
106
119
105
151
100
47
121
96
125
141
166
187
141
100
190
196
208
201
236
208
141
137
191
181
118
62
62
77
6
46
144
33
47
91
56
36
183
247
204
127
95
83
151
80
68
19
33
95
11
100
114
100
137
40
56
81
144
82
99
89
81
23
67
170
120
93
76
146
131
94
123
118
112
95
151
48
0
152
65
41
74
124
135
112
0
98
148
162
96
188
181
63
71
144
108
115
105
95
43
76
26
7
8
76
32
94
88
70
130
97
185
142
62
134
113
127
80
88
47
113
72
98
136
124
34
36
22
44
88
6
9
137
176
122
171
122
119
85
87
116
93
54
104
77
76
41
72
23
39
36
48
98
128
14
0
0
21
19
8
93
83
104
26
26
45
29
0
63
71
91
50
0
0
83
66
58
38
104
90
24
89
38
66
58
7
30
129
113
105
75
79
134
114
127
134
79
0
28
23
117
84
0
151
79
131
0
33
134
0
123
95
40
88
63
69
55
25
109
97
70
60
93
127
143
109
29
42
110
20
0
98
109
59
78
130
108
133
119
102
75
48
30
39
70
0
40
21
120
139
123
88
146
123
68
93
80
27
116
104
99
55
118
46
65
65
108
35
55
8
31
120
184
114
64
69
12
6
1
15
62
123
90
122
120
61
143
162
77
48
39
58
53
77
39
98
86
132
74
72
95
86
183
124
120
76
99
125
194
196
204
167
146
155
166
213
246
255
242
222
226
251
226
206
123
103
76
20
125
54
15
32
129
74
87
57
106
152
203
130
95
47
126
104
154
76
52
141
109
111
45
32
74
89
111
98
106
74
0
101
85
92
69
35
92
181
69
116
76
74
83
128
129
100
48
39
81
83
170
26
31
130
92
124
78
34
57
39
155
0
135
64
96
53
47
102
10
20
34
40
9
22
72
58
67
56
65
24
149
69
121
130
117
135
216
95
106
115
160
82
12
90
93
93
2
88
54
89
35
7
50
57
90
114
110
107
121
111
148
130
48
70
87
106
113
39
90
0
55
42
123
45
0
0
0
100
0
38
29
32
43
64
132
108
119
180
140
34
15
31
20
97
130
40
154
87
154
127
108
72
119
95
69
88
0
8
125
153
128
26
62
83
165
69
46
149
149
130
46
113
107
105
9
0
24
136
88
68
56
52
93
92
93
108
50
47
68
87
122
119
188
104
105
84
71
95
94
89
31
0
58
79
86
72
115
114
150
71
81
33
53
85
63
178
75
76
0
124
122
101
123
52
55
146
115
26
140
80
92
68
123
104
55
123
59
103
62
13
63
87
12
169
86
116
16
20
25
9
118
82
39
52
105
103
55
22
78
62
85
126
91
91
0
91
126
93
112
106
70
93
61
111
118
141
109
99
171
195
230
219
170
156
181
240
213
210
211
205
197
254
255
215
208
150
98
93
25
47
145
47
107
110
176
109
93
124
169
73
121
90
59
57
93
164
153
22
57
28
82
55
46
36
6
153
97
59
87
85
110
24
100
94
21
35
134
66
178
152
61
61
49
25
96
141
118
90
137
95
101
164
64
147
128
62
43
38
68
207
51
71
102
113
106
130
69
57
8
30
5
19
32
89
56
82
86
40
140
47
122
132
70
103
145
171
226
97
118
139
121
106
32
38
32
30
74
62
138
93
52
65
31
15
71
89
58
71
36
90
82
49
156
90
99
135
51
97
49
77
45
15
65
0
0
0
15
111
99
33
87
97
40
100
84
102
184
43
78
17
43
109
96
31
28
0
48
24
188
112
172
45
58
106
113
0
58
152
160
152
26
88
100
88
123
26
175
156
200
41
110
93
49
134
121
83
106
136
69
35
96
74
93
83
62
0
0
38
53
128
108
127
101
118
73
32
45
88
127
25
12
91
5
99
106
96
189
98
25
26
62
79
102
34
168
73
37
66
121
107
101
71
156
142
118
143
78
99
77
67
104
50
41
48
106
92
64
47
40
38
11
14
98
64
67
0
22
21
90
64
103
96
56
103
40
89
70
125
135
122
110
102
60
35
85
72
72
77
103
52
122
67
79
152
93
115
153
193
158
255
242
178
180
208
211
212
221
205
214
210
255
251
227
235
147
112
75
171
171
153
109
136
89
206
64
86
122
147
139
121
77
109
153
46
139
85
59
10
78
59
8
30
92
25
85
127
74
0
100
67
107
141
99
41
23
73
0
99
68
66
185
52
0
37
93
96
168
91
32
57
82
58
67
46
95
91
95
89
68
20
4
128
103
83
70
70
55
43
143
33
94
20
93
144
76
69
103
75
62
51
22
77
164
128
83
152
143
153
103
113
9
61
45
68
80
57
56
114
104
126
72
74
25
101
59
37
57
17
50
74
92
54
182
45
93
87
109
36
32
0
0
68
17
18
41
17
96
116
75
66
14
37
90
149
118
0
0
100
82
0
50
58
131
50
0
31
49
149
65
50
148
105
135
85
67
31
65
156
106
82
66
110
70
60
95
8
135
137
144
56
88
88
54
103
124
160
78
168
81
30
92
48
0
29
50
0
47
74
132
49
94
106
101
90
102
67
36
105
26
0
156
75
165
125
98
139
81
73
105
73
48
104
46
65
27
34
71
115
99
53
38
158
168
65
58
79
169
70
100
114
90
121
65
38
28
149
68
59
10
16
34
86
79
84
47
18
36
88
2
98
119
112
135
107
86
80
132
140
154
134
65
151
149
114
105
135
67
148
135
90
21
80
76
104
135
157
136
242
220
202
246
201
219
222
255
215
255
255
220
255
252
247
242
166
139
138
138
134
208
146
111
109
108
137
125
138
122
129
112
79
89
139
91
148
124
87
93
53
60
53
28
48
103
3
0
18
41
42
52
8
114
110
104
36
102
16
37
48
70
77
37
44
91
87
66
153
61
48
34
23
72
99
61
89
183
109
100
44
141
91
30
44
66
93
78
54
111
128
0
106
103
69
151
41
81
85
66
46
58
50
71
186
81
71
146
170
97
121
49
27
91
90
106
120
118
81
124
148
89
126
140
55
26
100
70
26
52
59
27
13
37
55
107
166
154
76
56
29
13
0
0
11
14
88
141
58
57
70
53
0
70
64
146
117
37
86
127
140
110
73
70
115
78
0
22
120
116
88
79
86
100
80
94
89
118
26
80
147
66
29
56
113
2
44
0
111
131
110
2
0
128
95
203
99
62
46
130
90
54
153
53
70
73
7
0
27
108
128
171
94
82
76
79
65
40
31
127
57
73
100
29
135
125
106
106
101
43
96
47
108
9
52
74
101
150
83
49
80
27
23
118
135
78
70
66
16
71
116
107
105
102
81
48
31
130
146
49
46
79
91
49
61
137
55
33
1
18
59
125
78
104
97
126
122
57
113
146
129
93
98
127
74
115
163
86
94
117
167
90
75
68
166
132
153
180
169
255
255
210
255
211
224
255
255
216
255
255
219
216
255
254
252
246
216
180
127
116
130
77
45
58
62
160
141
31
128
42
106
155
127
125
93
208
130
54
180
23
79
164
79
35
117
95
4
112
59
100
82
66
112
73
95
27
66
49
14
33
14
25
48
0
137
70
51
58
55
35
36
54
73
50
29
101
89
90
66
36
96
91
35
30
56
70
34
108
131
168
129
152
44
64
67
94
90
121
125
22
90
63
38
167
66
81
71
119
72
96
85
67
169
73
48
145
112
166
151
59
17
60
165
104
3
75
54
33
70
3
25
14
28
29
95
130
94
6
82
29
57
0
0
102
58
76
133
118
50
88
59
44
98
62
134
156
102
88
66
144
59
95
54
0
8
61
73
73
145
124
54
33
15
15
124
0
90
70
40
85
126
26
134
0
67
24
96
61
117
190
151
45
121
169
154
104
61
47
32
70
87
118
42
92
47
26
44
51
76
87
152
61
106
143
60
71
45
169
130
104
141
103
72
108
166
97
128
105
72
59
112
20
62
38
62
66
32
125
71
39
46
22
61
70
64
31
56
130
85
104
125
116
120
111
147
69
128
113
72
48
110
120
103
64
15
41
155
47
54
0
119
26
114
56
136
116
78
69
98
196
117
32
127
32
56
50
107
126
103
120
106
66
59
204
221
208
255
209
223
227
255
255
255
255
255
219
255
218
219
216
218
255
255
255
219
210
147
127
109
65
70
89
42
91
115
164
136
52
74
71
61
58
26
173
62
95
81
37
139
93
55
22
40
155
120
38
90
41
37
25
64
76
64
47
116
72
16
33
15
26
0
60
48
61
85
21
146
0
69
84
115
9
78
91
143
92
100
73
20
15
27
51
109
59
95
150
5
89
97
165
73
77
84
56
0
103
93
84
57
153
102
110
69
143
26
80
53
5
34
61
20
0
94
60
51
92
63
34
122
5
94
131
119
97
116
53
52
54
0
39
39
94
93
73
123
4
158
51
12
54
61
59
43
100
95
61
93
76
12
2
30
77
108
85
91
130
73
143
21
53
26
61
0
32
3
28
39
0
111
36
66
106
99
80
126
81
137
72
96
62
129
154
25
54
34
149
141
30
182
134
195
72
39
55
56
46
4
18
107
0
40
35
61
38
99
40
90
53
97
140
128
84
163
98
70
104
77
111
98
101
97
125
88
118
139
100
114
70
103
110
35
97
1
48
168
168
38
116
52
119
14
33
31
31
16
7
80
82
37
113
81
119
95
104
72
129
124
33
66
84
143
55
105
112
48
66
75
28
21
87
2
143
157
107
98
61
56
66
143
118
17
108
28
24
7
70
99
50
92
134
78
120
232
247
255
210
255
255
228
219
222
255
255
255
220
217
255
218
216
255
255
218
216
227
215
147
149
82
114
97
89
94
39
74
155
83
74
44
40
55
71
60
88
34
97
99
31
38
158
166
63
44
154
83
90
126
62
103
93
76
82
0
43
80
80
26
0
37
0
32
27
0
24
18
31
117
36
125
33
91
70
42
38
148
127
102
123
98
53
88
38
86
69
82
45
52
128
101
106
15
94
81
43
1
122
52
78
49
124
102
83
119
105
54
88
0
20
95
98
50
103
57
9
24
47
21
108
79
44
116
147
153
72
112
164
95
129
27
30
30
101
66
25
125
63
22
82
127
69
42
63
48
114
151
106
49
90
45
73
52
117
94
62
21
170
100
0
25
86
64
32
0
116
33
151
104
21
11
105
98
134
111
79
11
158
124
53
17
20
80
163
0
61
46
177
77
30
137
85
137
155
74
26
88
32
59
73
7
26
81
12
64
28
79
37
20
0
116
128
124
156
104
39
5
101
74
130
125
41
136
140
138
36
169
81
114
195
121
114
50
101
84
140
135
87
89
140
126
131
62
50
59
33
89
72
98
91
76
94
108
92
115
105
146
154
156
67
77
22
126
85
63
114
111
14
69
49
47
159
79
101
147
94
56
76
96
0
59
74
82
53
99
73
42
15
86
111
67
98
79
202
251
255
255
219
255
227
224
255
255
229
224
255
255
255
255
255
255
255
216
215
207
232
218
176
151
144
114
104
92
110
86
97
175
94
129
94
11
43
73
88
113
144
117
94
62
135
40
199
1
53
146
20
91
74
148
31
31
113
63
76
34
90
69
33
88
81
26
65
0
0
0
0
46
14
51
18
59
78
37
62
64
106
150
93
106
102
113
115
64
15
71
86
42
100
70
17
0
7
81
22
61
41
91
43
34
29
83
131
113
102
167
185
73
89
104
62
110
76
102
25
18
53
45
70
60
94
72
33
132
101
69
87
79
79
91
106
72
89
55
60
28
115
69
0
104
10
51
0
0
74
66
88
116
67
74
46
2
46
59
129
82
50
143
110
97
149
41
106
0
8
41
40
119
35
87
63
94
54
55
135
112
69
144
93
110
5
0
90
144
103
48
27
139
68
117
166
91
74
128
151
99
24
0
125
132
31
43
0
29
16
12
24
34
0
0
48
65
97
110
116
68
63
56
70
185
96
62
116
163
72
101
153
108
157
182
127
161
125
154
76
80
86
118
49
107
79
53
125
73
43
95
62
77
91
112
122
64
117
77
123
94
138
104
107
108
17
16
129
171
107
68
145
16
64
39
28
55
103
87
89
137
80
62
68
18
79
106
109
114
58
57
156
13
79
30
70
110
110
180
219
229
224
255
255
229
223
255
255
227
224
223
221
255
255
255
255
214
216
213
199
177
188
173
214
185
169
146
108
119
68
160
119
85
114
67
44
48
62
106
95
105
20
143
112
181
140
237
65
90
122
104
58
102
0
44
65
147
86
102
96
71
8
114
94
58
0
45
2
0
20
4
0
50
35
28
51
61
61
100
114
89
88
126
81
137
46
47
68
74
30
32
144
93
25
0
57
25
61
79
128
47
98
65
29
0
80
130
170
152
133
182
61
72
126
85
76
87
131
112
105
49
96
64
61
116
25
0
79
50
23
116
61
69
32
59
23
124
44
33
114
57
44
42
50
34
30
58
48
47
34
50
68
48
50
57
30
49
117
87
67
130
74
26
62
54
28
83
60
47
30
22
8
52
12
33
56
192
84
162
44
126
118
154
109
5
0
68
68
38
45
49
108
61
101
88
49
97
50
59
77
40
0
44
58
5
26
24
89
97
2
25
5
0
10
80
99
58
31
67
150
157
136
73
170
92
126
71
93
124
152
86
37
60
86
113
172
113
111
115
55
114
113
15
97
133
27
96
29
17
115
53
88
113
90
95
110
98
118
89
72
111
118
99
52
85
96
91
129
115
110
174
87
113
34
46
45
118
122
50
64
69
30
39
72
95
30
97
204
49
58
87
0
60
33
43
125
208
255
217
224
255
255
227
228
227
255
226
223
255
255
223
255
255
255
255
212
215
213
196
178
154
230
199
202
191
144
114
136
115
114
88
0
32
93
115
73
78
40
149
100
79
117
35
54
161
79
79
96
20
81
20
71
73
104
103
89
97
38
55
0
0
134
76
114
0
0
10
2
17
2
26
106
0
77
43
43
30
67
90
39
44
72
97
80
68
88
86
73
73
57
96
33
69
55
112
32
61
46
104
153
130
117
19
44
95
112
99
95
78
88
33
48
118
62
40
137
106
77
39
60
30
0
130
138
0
25
85
114
35
105
87
140
88
0
0
112
88
4
197
67
15
86
0
18
64
49
1
79
60
90
52
55
0
92
38
63
99
0
89
57
65
93
26
101
61
97
0
85
38
79
0
96
97
102
101
73
210
41
145
131
174
36
22
67
69
53
61
39
102
157
201
93
56
55
46
72
100
141
40
29
95
99
26
0
49
73
99
65
32
30
43
4
52
36
102
58
63
31
26
18
118
101
138
54
48
20
209
147
56
79
55
0
67
169
172
179
102
77
30
83
37
156
101
132
127
89
52
25
0
93
134
106
87
98
98
56
82
122
83
76
99
145
97
92
62
143
129
145
120
32
97
110
134
5
66
88
115
58
19
30
62
87
53
37
104
58
55
255
73
84
42
114
61
59
189
254
255
228
255
255
255
228
229
229
228
228
255
255
255
216
215
216
215
255
213
205
182
182
198
202
248
244
222
203
157
105
96
57
51
0
148
40
82
51
36
29
160
62
81
65
16
45
12
57
50
75
54
78
49
30
91
107
97
115
35
52
71
118
127
75
25
94
30
53
0
16
9
16
0
0
35
119
76
107
39
39
80
66
40
114
104
131
102
65
46
124
95
153
62
93
44
59
78
123
11
95
85
107
75
130
133
45
68
111
112
117
144
116
117
58
62
89
4
47
134
209
41
104
0
8
74
48
101
52
47
95
36
131
120
96
15
17
28
41
78
167
163
54
37
76
87
96
33
88
108
61
114
82
60
47
13
3
37
53
43
45
31
114
75
101
125
37
54
74
33
122
0
174
0
4
26
98
31
46
14
93
61
73
176
105
0
2
111
124
96
71
70
41
97
118
119
56
87
70
92
101
144
80
69
72
12
26
56
8
58
0
86
0
70
26
0
0
0
87
69
0
48
88
107
68
98
79
92
62
0
37
88
113
113
24
34
132
127
213
105
62
40
77
82
29
140
130
100
137
96
64
34
0
57
128
96
84
46
48
82
81
22
25
89
97
79
121
141
125
54
117
88
120
26
146
82
97
16
32
75
80
44
0
29
96
88
104
35
115
32
46
221
56
67
16
75
75
163
255
255
255
255
255
229
229
229
228
228
229
228
224
218
216
255
217
255
255
255
214
202
192
196
211
195
242
251
230
223
162
102
31
52
67
113
65
72
36
27
78
102
51
27
73
0
0
20
23
65
29
0
23
49
103
76
54
129
91
102
109
27
29
90
100
26
0
7
2
83
69
37
80
41
40
150
99
109
30
63
14
54
38
77
115
91
101
164
160
57
11
96
128
114
106
127
64
0
107
79
196
88
73
86
130
86
140
154
117
104
59
78
115
45
74
55
50
112
0
16
91
75
84
82
15
99
25
154
132
69
140
125
68
143
99
107
97
87
67
79
85
154
146
95
97
130
104
83
9
64
26
105
88
68
36
135
0
103
56
2
12
26
42
88
0
30
77
64
77
44
40
0
2
16
81
0
31
58
43
26
83
0
93
139
181
99
46
74
86
23
11
26
91
126
224
98
72
58
163
154
103
102
150
64
148
107
52
105
0
64
0
0
62
0
18
5
47
100
10
22
206
55
38
91
102
66
85
74
41
28
42
44
0
39
80
59
122
152
205
230
6
122
46
75
93
27
96
79
103
136
130
66
21
0
0
24
125
103
43
32
75
23
42
29
46
22
47
91
121
142
96
53
121
56
34
133
69
58
128
68
108
92
93
18
46
91
100
128
101
96
64
103
137
54
22
83
25
68
227
255
255
226
255
255
255
255
228
228
227
229
226
219
213
255
255
255
255
255
225
213
250
211
209
198
193
245
255
238
235
182
111
90
88
0
63
0
7
90
99
112
126
75
50
117
7
8
0
34
55
25
2
17
116
63
47
76
136
132
94
99
43
47
69
64
13
50
40
56
91
45
14
51
14
45
131
73
0
40
59
107
72
48
65
162
52
131
156
124
31
31
69
53
131
76
62
49
73
191
148
125
20
26
43
66
3
0
208
116
91
33
67
82
53
91
59
45
93
73
7
35
45
86
0
0
130
191
104
65
126
116
159
163
118
189
42
95
90
90
140
124
171
170
154
123
111
97
13
33
21
82
94
85
61
53
92
130
91
0
67
69
55
10
55
129
101
131
149
82
62
47
15
64
49
0
0
3
19
0
135
26
0
87
206
135
100
27
0
72
135
103
141
161
84
130
181
116
176
109
58
91
61
100
119
176
127
60
142
0
0
13
33
61
32
52
29
78
40
65
71
118
150
116
71
0
133
19
126
77
47
0
104
99
25
84
118
159
184
207
167
26
193
22
105
137
13
103
90
29
68
93
50
23
53
0
15
34
52
43
47
23
63
114
13
16
15
77
77
56
110
57
46
70
53
47
25
56
39
112
94
3
73
80
54
125
111
69
144
86
47
82
91
72
126
34
66
52
162
255
255
255
225
229
229
229
255
255
255
255
226
223
255
255
255
255
255
255
255
213
254
244
207
202
190
192
192
247
233
220
199
128
100
117
0
34
100
52
125
50
21
143
200
74
100
55
18
0
63
62
20
47
65
159
18
11
73
162
134
118
96
79
63
106
93
69
56
55
26
64
26
148
116
41
25
66
100
54
59
70
38
0
116
111
76
121
134
100
84
78
63
8
116
110
88
9
4
93
172
141
136
86
43
20
4
31
0
118
121
43
26
84
39
29
53
27
50
72
124
28
82
0
43
0
0
158
91
32
56
27
45
110
165
111
66
168
177
161
198
182
208
187
122
87
165
95
155
0
101
0
128
71
55
49
48
54
92
32
4
52
45
18
77
79
121
66
57
66
55
123
91
55
2
53
126
100
17
29
3
36
3
0
70
179
27
27
113
6
67
109
100
71
78
139
54
124
187
114
158
50
54
20
110
81
138
118
28
123
206
0
71
111
48
26
78
36
59
89
51
56
0
130
110
149
111
63
81
20
34
62
47
28
74
62
114
214
113
209
224
126
66
136
101
43
72
52
41
114
28
134
107
32
12
23
0
50
28
62
44
63
72
76
24
42
110
99
101
83
101
81
66
54
30
16
53
19
61
105
0
8
0
53
46
65
193
148
194
116
80
64
73
77
48
111
100
105
88
139
255
255
255
255
255
227
228
255
255
255
255
224
221
214
255
255
255
255
255
255
249
199
201
199
199
200
245
187
176
222
203
192
137
63
113
42
46
15
71
108
146
94
104
152
55
161
62
22
10
155
78
166
71
51
88
98
66
157
109
95
104
51
65
70
87
70
64
66
50
53
57
0
61
99
51
58
47
66
21
0
82
26
0
151
146
59
131
107
24
56
58
48
36
55
121
104
14
29
35
89
52
140
92
106
9
0
5
23
88
30
57
89
66
62
75
9
53
7
15
23
57
83
48
37
57
46
74
52
69
91
15
23
108
133
23
128
175
183
212
149
142
70
104
6
1
102
53
110
6
60
74
95
97
79
0
0
152
81
18
0
82
33
34
56
0
26
148
65
57
79
76
124
41
36
19
77
82
32
36
74
3
0
47
110
103
39
12
122
111
34
21
119
43
110
115
28
55
164
168
112
118
21
27
66
48
134
114
64
135
132
153
0
88
26
30
75
26
33
139
43
0
0
41
126
0
61
23
68
66
58
78
75
41
116
44
14
92
127
138
90
46
7
114
186
100
158
218
134
65
122
135
100
43
51
41
47
2
0
48
35
89
25
14
6
35
110
117
59
65
124
77
60
163
133
98
40
48
46
10
33
89
115
44
123
133
56
46
70
93
4
83
14
86
47
49
46
102
208
255
209
255
228
226
255
255
255
255
255
223
222
224
222
217
255
255
255
255
255
208
199
194
251
255
211
255
251
199
240
225
175
186
161
117
63
178
154
90
61
61
74
138
124
137
141
30
84
32
125
31
51
52
108
175
131
65
34
133
58
93
52
146
31
40
75
115
122
45
64
128
26
74
9
53
17
7
124
35
70
47
145
126
95
172
38
72
94
53
115
31
39
12
0
48
65
0
47
60
50
51
106
71
54
117
75
0
24
113
30
65
39
57
107
61
44
81
11
58
89
62
50
3
85
133
143
109
86
0
51
99
38
75
144
102
60
87
151
115
139
138
128
130
59
80
0
57
7
74
26
0
64
47
57
28
152
101
0
0
165
0
14
17
89
83
17
75
40
82
178
89
18
105
115
39
9
18
39
0
54
27
16
0
23
0
92
47
120
0
61
107
55
60
122
10
166
16
86
0
65
106
69
84
35
58
76
66
169
41
70
0
7
30
0
64
142
26
44
33
133
90
90
46
68
74
95
54
27
40
54
3
100
143
61
82
62
51
37
184
144
143
147
7
109
110
119
161
177
89
114
176
113
79
0
6
75
0
0
17
56
44
64
28
24
1
5
54
129
84
48
113
77
100
75
63
70
48
68
44
76
105
71
39
0
0
110
67
49
59
16
60
16
78
115
106
85
50
195
251
255
255
228
255
255
255
255
255
223
222
255
255
224
220
221
255
255
255
255
255
254
191
253
255
254
250
221
208
195
238
178
231
204
174
99
101
219
122
82
94
54
57
51
50
23
95
67
55
23
12
45
56
0
59
135
138
123
130
145
136
84
115
125
58
40
108
43
39
41
94
32
49
71
155
91
85
68
154
64
124
133
228
106
63
29
80
128
97
78
90
57
38
0
26
5
126
71
54
73
90
56
50
154
15
87
190
92
63
167
22
10
64
77
8
27
107
49
146
129
123
50
37
18
0
0
101
133
66
51
86
107
22
77
67
53
127
63
141
96
164
83
122
89
111
51
127
99
62
101
36
0
0
51
55
93
66
0
20
19
61
0
0
39
61
101
58
151
69
136
66
66
0
2
26
0
58
117
15
15
26
98
0
6
0
73
63
0
123
121
156
123
110
102
249
75
29
33
111
143
132
96
44
95
104
112
34
26
50
0
65
51
44
50
95
15
26
46
31
49
70
100
74
71
69
123
103
96
101
104
85
124
70
36
87
81
47
70
99
109
133
179
144
132
146
139
183
120
117
22
176
127
108
64
142
100
76
34
56
77
19
47
35
20
11
30
0
23
143
60
86
132
98
74
61
67
90
50
77
72
30
44
46
0
49
9
87
11
33
154
24
0
15
91
99
93
118
176
227
255
255
225
228
255
228
255
255
255
255
255
223
221
223
219
219
214
211
219
255
255
255
255
255
247
252
255
206
248
237
180
227
231
210
170
142
104
125
126
90
54
51
154
55
151
18
92
109
136
90
112
31
103
0
77
74
91
141
104
45
78
90
54
95
50
30
74
60
51
90
68
71
124
88
192
146
135
31
94
106
165
62
138
106
35
56
78
102
78
80
101
154
41
38
83
81
83
0
44
28
65
61
77
64
58
74
61
44
59
143
50
42
53
137
67
62
132
121
141
95
67
0
6
91
66
44
44
41
86
118
129
112
39
40
58
54
41
17
99
71
173
99
133
81
95
43
207
124
72
2
47
5
46
59
36
112
54
67
75
75
45
45
52
49
52
105
60
46
44
88
73
69
18
15
3
98
106
77
80
160
28
60
25
0
14
116
0
45
50
85
48
29
52
163
133
99
61
115
118
155
71
154
14
11
139
0
148
122
77
97
72
99
54
0
74
9
0
107
47
49
59
107
47
89
117
123
115
110
94
79
0
57
36
14
156
156
79
0
155
133
88
149
121
182
73
131
61
107
90
26
125
75
110
32
129
154
64
43
40
101
0
35
0
67
26
7
20
0
202
150
65
102
129
31
78
94
127
61
48
38
0
46
102
0
48
48
53
104
28
33
56
23
27
79
81
52
123
113
206
255
255
223
228
228
229
255
255
228
223
223
224
222
222
255
255
214
213
216
255
255
255
255
209
255
255
215
255
198
189
188
186
246
235
191
160
134
98
49
94
85
84
75
108
69
60
113
38
113
123
59
87
25
17
94
59
78
113
74
131
157
126
87
96
28
62
54
8
29
121
67
44
55
107
135
98
47
31
76
85
38
152
73
71
67
90
84
95
58
98
131
76
58
82
11
0
68
31
35
50
134
103
53
127
54
51
22
4
93
65
38
62
46
85
84
87
132
149
153
168
128
151
81
106
2
0
59
71
68
48
95
72
101
56
38
112
93
149
59
46
157
209
165
81
128
72
35
0
58
54
32
55
80
27
43
51
89
40
126
25
32
50
55
60
46
107
75
105
48
26
70
116
83
0
40
69
113
102
36
41
105
84
62
154
103
70
139
159
111
38
23
86
0
91
33
49
62
159
161
105
91
92
62
56
0
89
196
61
46
111
108
41
12
71
36
32
22
83
49
94
65
109
123
123
109
94
90
128
115
95
100
63
117
84
170
153
83
64
154
169
173
99
25
68
68
85
34
70
74
47
69
85
66
29
0
48
132
61
38
80
41
72
84
152
95
20
67
40
123
157
163
84
100
36
125
79
49
117
88
62
75
166
197
93
36
75
0
56
94
47
48
32
39
42
86
56
142
199
255
255
226
224
228
228
255
255
228
227
223
222
223
222
255
255
255
214
215
211
255
255
255
253
255
255
218
208
204
202
194
192
191
248
245
211
179
101
69
99
166
51
96
74
212
54
19
96
61
132
112
71
114
56
78
70
39
105
114
166
129
94
80
93
135
70
99
102
67
108
5
87
138
152
116
102
26
47
51
76
145
53
171
90
75
21
68
86
55
112
62
94
128
79
70
58
65
114
88
53
127
169
136
127
114
60
53
96
16
70
92
45
143
81
142
142
144
114
120
12
147
92
149
121
159
0
34
126
112
187
144
76
0
84
96
130
124
126
144
92
50
157
75
31
83
183
54
60
58
7
1
47
84
97
42
38
31
48
52
102
0
21
43
33
79
113
58
72
81
28
1
0
39
0
53
45
49
111
180
151
73
54
34
105
109
121
109
176
80
82
63
78
121
26
51
19
37
171
59
98
85
224
70
127
48
0
51
13
72
39
96
45
95
28
80
100
82
0
7
3
21
0
47
109
78
75
33
117
150
107
77
76
109
76
131
140
168
44
106
117
135
136
103
125
67
77
87
95
89
64
91
64
85
25
63
37
37
42
177
77
51
96
60
92
130
117
68
62
162
145
95
95
32
84
46
64
96
117
150
97
60
87
148
141
49
72
94
29
0
4
103
83
40
42
12
168
87
196
255
255
255
255
226
228
255
255
228
255
255
221
221
223
222
255
255
216
213
255
210
255
255
255
255
255
255
255
200
190
190
182
178
178
234
233
209
180
140
97
137
157
0
115
73
132
119
120
46
71
103
110
82
51
56
54
46
105
76
55
132
53
75
117
147
106
78
100
52
0
154
44
15
114
154
126
67
0
63
71
41
40
120
117
5
41
60
80
9
58
75
66
82
111
114
56
166
73
37
28
85
77
116
29
143
116
35
9
0
4
63
63
99
98
74
122
105
132
102
131
67
109
83
74
111
52
21
34
133
152
163
175
57
36
99
107
62
34
137
65
123
184
157
35
62
117
95
13
13
19
42
67
65
39
143
101
15
0
26
80
1
0
40
0
0
33
135
67
46
117
83
66
0
24
0
53
39
83
26
68
59
133
46
10
30
74
105
92
14
0
35
105
126
147
48
127
14
35
62
84
26
115
85
64
77
17
0
55
28
57
148
106
95
148
219
68
46
131
93
64
34
0
1
66
133
72
22
39
42
95
89
68
105
79
77
73
44
111
82
131
129
139
114
80
66
43
75
55
33
26
58
64
48
1
38
110
33
69
67
84
99
71
64
72
50
84
52
160
65
53
175
72
6
75
91
134
156
70
122
116
112
107
56
10
80
80
130
103
35
115
34
21
57
81
55
128
32
159
222
255
226
224
255
255
228
228
228
227
255
255
219
219
255
255
255
216
213
255
203
255
255
245
243
250
254
253
233
225
177
186
182
185
244
253
252
225
207
158
121
94
119
35
22
129
130
118
108
142
146
72
111
110
47
107
81
94
0
15
85
158
108
135
133
102
72
93
164
94
106
39
59
67
98
107
82
53
77
95
61
44
49
75
144
51
78
43
24
48
151
45
33
0
60
46
61
7
30
69
0
28
0
67
129
162
102
77
54
1
66
117
135
110
86
144
177
163
124
38
101
66
171
58
47
80
102
44
113
137
106
87
83
44
60
28
68
38
59
29
46
197
125
131
165
105
48
111
100
38
10
0
44
131
98
26
39
59
29
16
22
0
16
0
23
73
117
41
2
41
26
0
16
16
54
40
106
35
23
53
67
46
10
0
18
37
50
49
19
98
65
42
89
101
47
58
88
109
157
91
37
73
60
88
131
35
78
0
93
15
26
94
68
74
140
169
172
120
98
112
118
151
72
43
11
99
90
111
35
54
32
136
44
36
11
2
2
50
59
124
191
32
17
171
82
72
38
113
109
47
47
45
122
55
60
138
40
128
100
91
64
127
106
107
112
45
58
33
136
136
107
148
85
22
82
73
75
118
74
123
92
91
82
118
19
80
36
139
161
16
59
93
66
111
104
99
117
99
171
206
228
255
255
255
255
227
227
227
227
255
255
219
219
255
255
218
213
211
255
251
255
243
231
244
254
253
236
220
223
225
187
186
247
255
241
244
213
201
162
137
146
138
35
69
59
81
159
98
105
100
132
77
132
154
108
98
87
32
21
31
102
105
102
71
70
132
150
147
64
92
114
67
36
34
100
93
142
95
110
41
108
79
77
165
74
109
62
85
47
159
106
0
11
105
57
103
59
70
93
0
0
57
69
68
83
89
27
65
54
53
29
143
126
131
67
119
172
95
74
124
123
184
145
64
87
97
103
121
129
66
168
48
61
58
32
130
22
19
34
27
73
76
120
179
35
47
40
57
76
0
0
0
70
84
69
58
8
35
65
63
54
0
0
95
0
0
86
40
70
0
7
5
29
65
107
41
19
92
70
159
97
27
81
51
0
96
85
15
100
123
60
61
91
72
0
95
0
150
106
83
106
87
52
100
67
63
32
157
31
170
9
21
31
0
173
99
113
40
139
58
107
22
26
95
64
107
44
86
95
96
128
95
45
49
21
22
4
49
81
8
48
15
57
80
109
24
26
127
60
19
0
52
0
96
171
77
146
127
95
30
78
79
88
112
40
46
59
144
165
161
65
80
97
82
93
45
157
53
60
23
69
18
13
0
35
87
60
64
7
0
33
25
109
89
107
156
130
203
255
224
255
255
255
255
255
255
255
255
227
223
255
255
255
218
222
255
209
198
195
250
241
243
205
255
199
196
243
249
253
252
255
255
242
237
164
205
193
156
106
128
125
59
46
43
117
168
95
102
63
117
84
118
84
18
94
43
89
57
98
56
81
50
143
76
176
116
62
105
6
55
34
23
35
44
74
41
65
105
122
131
135
133
125
128
75
40
48
124
88
100
129
158
62
64
51
61
48
41
55
14
87
57
34
102
99
88
139
0
0
49
170
12
128
72
156
121
124
161
127
95
113
75
89
64
39
169
44
46
74
144
12
57
22
17
68
104
132
51
38
56
149
84
37
19
14
109
136
24
0
0
52
26
37
139
76
87
34
0
41
31
55
100
39
17
25
38
6
66
39
46
87
125
139
51
41
108
116
101
34
167
41
60
42
86
39
89
52
47
58
26
26
89
108
33
50
36
43
132
90
161
15
87
26
58
43
33
62
60
105
126
52
41
45
30
45
99
1
30
25
62
45
0
84
82
84
82
59
70
74
111
109
126
20
17
33
61
59
72
46
135
91
52
21
19
99
50
50
47
0
56
14
9
108
162
88
73
97
141
17
154
104
101
97
32
83
124
151
75
213
85
121
97
84
117
66
114
81
45
52
39
44
50
81
11
21
157
5
0
26
46
7
95
89
43
143
197
255
228
223
228
255
255
255
255
255
255
255
224
225
216
255
219
218
255
255
255
200
197
246
191
198
255
255
255
255
251
199
210
202
197
187
223
221
205
150
139
151
106
109
134
132
111
69
47
122
145
90
82
84
144
139
46
34
115
131
91
80
81
37
56
65
109
60
111
49
71
107
34
99
47
29
37
33
72
63
105
88
145
73
116
104
111
119
90
31
0
113
51
128
63
96
50
45
12
83
81
56
14
61
64
50
78
62
133
14
58
49
126
68
151
86
50
103
110
76
43
133
118
31
96
4
95
71
0
54
107
102
221
51
15
33
0
30
111
67
91
91
53
51
103
48
41
100
81
167
75
10
66
5
27
0
31
90
66
27
96
44
20
57
39
88
12
14
61
21
50
116
76
121
68
70
77
0
28
16
39
55
0
84
95
63
58
203
41
57
71
0
78
147
85
96
100
148
24
120
26
74
127
110
80
61
32
48
86
119
87
19
59
52
98
39
36
70
107
64
75
21
95
58
115
40
124
106
93
36
36
23
75
87
95
135
84
17
0
74
8
64
41
69
11
100
13
0
26
98
167
103
101
68
95
97
117
111
123
54
40
216
103
159
100
21
107
44
109
95
64
82
129
85
103
73
85
121
60
55
44
56
61
0
37
31
37
36
71
196
160
36
0
3
28
61
111
36
101
175
228
227
225
228
255
255
255
255
225
226
255
255
255
215
255
255
255
255
255
255
249
249
193
196
206
222
226
255
255
249
201
194
199
198
190
229
213
200
202
140
98
135
121
143
90
145
72
50
68
78
68
34
122
108
53
65
5
75
88
68
128
28
25
80
119
50
49
27
19
57
98
116
83
75
54
42
10
0
0
90
115
36
43
122
91
91
108
17
59
102
33
36
117
37
26
105
101
84
174
30
74
23
169
133
16
120
109
94
188
133
146
190
96
67
62
124
121
70
182
115
125
116
144
126
89
78
107
92
31
162
174
97
29
117
17
57
84
94
127
51
68
76
77
104
37
75
107
150
55
43
22
0
5
30
16
19
127
121
69
0
125
61
107
0
51
62
20
70
32
25
90
145
67
68
114
48
60
144
26
58
36
99
84
108
103
38
125
162
53
54
38
1
132
78
103
36
113
66
47
102
53
96
88
91
85
0
40
81
71
102
67
1
81
85
26
26
26
96
51
49
94
142
85
76
82
31
97
50
54
3
37
81
78
62
83
88
111
53
33
2
33
16
57
30
7
34
51
119
74
63
89
105
80
96
111
135
105
75
8
66
82
121
121
148
110
124
89
99
51
24
65
99
52
78
70
140
45
56
74
156
46
27
52
28
13
62
80
0
74
132
179
0
6
0
71
114
133
230
222
222
255
229
229
255
228
228
226
227
223
255
255
216
210
255
255
255
255
255
249
179
238
193
205
255
217
203
250
255
199
194
205
211
209
198
241
187
167
205
143
107
154
136
141
109
125
93
79
38
55
92
24
50
93
55
125
50
29
88
72
74
124
174
104
92
32
63
161
0
63
98
132
109
69
118
63
77
48
104
167
111
129
107
115
64
68
111
62
19
42
33
0
80
128
57
107
165
90
136
54
90
126
53
25
24
82
109
156
95
143
129
55
133
17
127
121
126
162
89
124
140
133
94
81
46
121
3
90
73
51
105
77
80
21
17
123
168
107
126
87
100
18
31
0
36
55
121
56
58
82
0
46
92
53
61
164
98
85
95
44
94
0
35
49
52
44
40
78
53
0
27
79
99
63
45
12
68
76
121
0
37
8
0
0
14
41
28
65
0
83
42
28
8
62
0
94
40
23
92
13
100
11
0
28
55
18
21
90
20
38
120
21
0
0
149
47
99
118
131
99
108
179
151
79
45
10
65
23
59
49
26
24
24
0
106
87
88
98
60
98
54
8
55
39
72
75
0
0
146
86
102
45
119
71
124
166
163
115
92
18
150
0
95
124
111
138
103
105
112
78
100
8
66
133
127
102
69
126
46
33
57
49
12
0
47
37
50
7
0
48
229
41
35
0
158
162
179
248
255
255
255
229
229
228
227
227
226
225
221
255
255
255
255
255
206
201
255
255
192
173
185
187
205
210
209
199
192
199
204
208
208
195
187
187
245
236
221
148
190
162
104
96
143
111
53
83
89
46
83
65
45
79
85
49
96
30
76
141
108
63
85
99
53
104
90
123
159
78
65
154
147
82
109
103
59
123
111
190
135
159
130
85
110
82
21
0
96
96
51
52
1
24
131
80
68
131
95
95
45
52
112
31
36
0
72
53
45
69
154
113
136
73
64
121
94
110
91
40
114
85
125
132
73
87
104
30
119
19
78
52
20
100
5
156
60
143
111
83
34
82
116
89
53
0
73
61
99
34
132
74
164
161
127
93
124
184
144
29
41
0
26
18
31
8
5
74
53
61
78
21
71
96
94
20
22
72
39
60
101
35
52
25
0
0
0
179
133
32
77
9
66
6
0
0
40
43
50
14
0
37
31
16
57
16
0
54
59
0
0
133
33
0
20
51
0
26
70
0
64
142
169
135
140
31
92
66
8
29
30
83
86
26
1
15
57
93
81
68
93
45
36
28
35
42
182
199
18
69
34
122
115
111
56
148
106
139
119
74
33
90
87
85
90
35
74
104
77
43
82
67
54
57
86
90
53
82
104
100
89
153
44
48
47
65
26
46
5
0
95
169
154
47
1
197
143
157
214
255
229
255
229
229
228
228
255
255
222
219
255
255
209
250
199
201
202
252
255
184
167
182
185
203
204
196
252
191
197
255
211
188
172
166
178
187
217
214
196
188
167
97
95
156
113
116
103
160
120
60
17
88
18
108
68
81
98
96
67
58
80
56
103
65
176
122
143
49
142
86
100
104
148
147
97
83
165
185
213
155
157
117
140
74
75
85
40
47
63
98
27
45
0
86
68
96
59
129
149
144
45
13
23
9
41
12
36
90
129
146
30
41
77
106
107
47
28
100
13
38
93
78
84
75
53
31
74
1
118
122
103
65
81
97
39
109
91
137
102
106
20
116
125
150
30
114
67
138
202
115
215
109
75
23
2
0
94
99
47
57
97
46
5
23
0
8
60
0
70
57
23
104
81
86
83
32
26
47
120
53
105
33
0
19
0
0
188
142
101
87
42
49
22
0
35
61
7
0
9
0
103
79
122
73
32
56
60
61
41
19
49
93
72
11
86
0
0
74
70
100
160
31
58
136
45
61
102
40
33
36
31
91
31
19
3
8
68
99
0
12
20
22
17
49
22
15
134
147
17
11
103
133
94
57
89
53
41
1
17
70
61
62
81
106
100
31
87
23
112
60
106
107
96
147
143
50
91
46
104
0
45
101
33
112
104
172
92
30
0
50
124
222
130
40
119
152
204
255
255
229
220
228
255
255
227
226
255
255
216
255
255
212
196
195
252
255
246
251
230
215
232
239
255
250
235
234
237
255
255
195
178
166
162
168
215
146
208
196
136
120
119
150
156
115
147
145
142
156
59
48
93
8
98
1
113
84
109
79
45
3
34
172
109
78
39
137
101
110
140
177
102
123
114
170
182
137
129
242
186
192
169
211
167
98
94
105
84
4
148
87
14
20
67
150
119
61
63
4
67
138
43
70
30
71
16
60
86
95
75
36
98
108
56
8
66
69
7
122
47
12
90
76
57
42
114
122
0
65
104
114
80
102
64
58
76
46
177
66
61
60
45
67
133
36
72
104
133
139
65
41
31
35
26
0
27
0
0
0
91
65
28
58
67
0
0
25
0
97
58
28
37
67
0
8
14
67
97
58
73
88
37
47
36
0
45
132
69
112
3
101
70
68
69
14
35
22
23
0
46
150
81
117
53
113
15
142
0
69
123
3
45
49
4
52
4
1
68
132
122
198
97
112
198
57
104
101
42
12
96
20
63
23
9
0
117
33
51
0
24
0
0
28
20
43
1
39
38
11
16
83
142
122
87
43
42
71
48
46
76
123
71
80
143
106
100
38
28
90
101
42
86
91
50
139
72
59
84
104
72
84
81
42
28
47
124
119
51
87
40
63
112
232
87
77
173
226
221
221
228
224
228
229
255
226
222
215
255
217
218
255
255
194
185
199
184
194
253
234
208
228
244
246
183
233
241
250
255
185
183
183
166
168
152
209
141
144
197
189
121
108
129
137
124
96
133
69
53
59
54
131
12
82
49
144
83
97
70
112
75
93
50
112
100
136
62
125
251
165
206
104
184
183
191
159
144
106
179
129
173
229
204
169
157
160
160
94
85
48
136
83
125
104
101
116
84
135
85
92
97
52
21
48
0
70
60
39
73
48
7
44
82
51
70
62
32
39
57
26
103
150
90
39
36
106
68
121
31
23
82
98
56
40
29
66
73
153
67
76
154
51
104
154
17
35
75
119
82
98
119
59
41
104
72
80
76
54
0
0
0
0
83
98
40
18
47
18
0
41
1
98
64
46
66
17
28
46
167
48
66
54
60
44
18
54
151
125
110
13
30
55
68
0
23
0
0
51
49
97
61
91
89
65
22
0
83
64
26
70
6
60
128
28
2
60
103
0
13
66
137
100
83
195
105
75
72
72
42
62
84
99
77
84
63
36
29
47
61
88
80
92
87
12
54
213
92
101
91
113
70
73
86
70
2
27
4
21
29
143
82
94
166
50
117
94
37
107
16
17
133
108
75
89
89
61
156
154
143
97
63
133
32
11
37
68
117
93
42
49
101
78
47
168
177
221
255
255
255
228
225
255
229
255
255
216
224
255
250
208
255
249
182
176
222
233
228
239
213
203
232
237
176
172
229
234
243
179
204
248
243
189
186
159
152
135
132
122
180
180
161
138
161
89
92
93
50
155
52
145
123
16
42
35
96
34
120
128
167
142
134
122
82
163
123
125
176
169
178
158
190
221
210
212
214
131
138
162
158
134
154
199
174
164
150
113
124
129
98
31
103
110
50
100
105
41
13
77
48
155
100
83
52
30
55
36
148
95
30
91
70
110
18
92
91
8
34
12
127
89
87
82
6
0
0
154
76
18
29
107
82
56
70
93
26
175
204
79
110
70
72
158
154
39
60
51
166
101
117
6
31
84
76
165
134
0
72
73
0
72
26
26
67
51
46
0
9
31
13
59
102
50
34
24
83
73
149
118
36
52
119
59
35
0
11
68
111
27
169
163
100
4
68
14
54
37
35
80
87
105
113
127
140
35
159
47
69
44
14
21
71
143
62
54
79
0
78
116
208
41
97
60
66
213
126
152
15
10
75
64
34
84
66
62
43
98
87
40
46
26
44
0
115
91
3
109
73
26
106
86
21
127
26
20
59
81
43
53
88
69
53
107
16
84
72
88
74
20
51
70
91
62
93
87
95
93
34
144
105
53
114
0
92
26
135
63
92
57
63
167
31
80
130
184
231
255
255
224
226
219
223
223
255
255
255
255
255
248
251
255
190
173
173
214
224
213
223
207
211
239
230
230
230
178
187
230
224
214
200
185
186
179
206
195
183
122
177
181
121
113
121
163
120
121
100
96
129
71
181
86
59
28
57
119
93
78
114
169
148
155
131
173
213
145
140
114
196
213
221
207
167
223
216
240
152
161
157
171
151
145
145
185
185
153
140
116
147
104
67
121
114
106
107
75
85
69
40
48
205
151
0
19
91
51
91
101
91
41
8
69
142
8
72
47
73
26
0
0
44
47
112
68
0
3
71
72
103
80
178
150
38
88
62
67
90
69
149
147
199
97
59
10
53
0
21
114
109
58
46
61
36
132
159
101
74
21
59
0
52
59
111
41
54
54
42
0
35
73
73
0
0
73
57
94
64
0
131
116
55
104
76
69
26
11
0
16
13
30
114
100
13
58
36
2
0
102
45
55
144
78
209
105
20
179
72
72
0
18
43
30
67
88
60
36
26
52
75
180
47
201
156
24
152
109
64
19
66
103
70
34
40
30
83
114
120
97
58
36
112
120
51
72
55
41
39
166
63
61
63
123
133
68
60
59
67
109
37
43
84
51
67
96
75
74
74
73
55
70
86
15
53
45
45
81
98
84
124
87
90
115
38
70
0
50
26
165
102
98
171
120
104
179
139
194
207
255
224
225
217
219
255
255
218
255
254
201
247
238
194
180
217
170
213
158
198
202
203
219
241
242
230
175
168
99
221
214
202
190
177
179
168
152
191
204
169
181
172
109
142
120
165
133
118
103
68
134
114
244
75
72
97
152
142
142
116
88
174
179
199
149
181
186
208
183
135
210
211
227
229
168
235
173
193
172
173
167
178
167
142
150
197
196
109
134
113
119
120
82
119
54
119
59
58
36
48
86
40
48
76
47
30
57
44
153
26
106
107
94
34
81
31
120
73
35
21
18
65
15
34
84
50
43
108
132
125
102
95
128
126
0
36
123
159
0
148
190
72
102
152
60
36
144
73
93
15
54
49
3
33
26
113
83
119
144
0
74
56
83
68
159
61
50
50
44
60
0
86
59
58
128
86
0
86
80
48
57
126
76
126
87
62
145
20
17
18
11
142
138
111
9
63
86
79
26
144
69
74
121
157
120
28
72
140
78
91
74
38
48
55
121
90
49
0
58
27
56
63
77
119
118
93
90
53
39
86
57
56
31
30
9
14
3
72
0
28
59
30
0
53
134
96
32
103
87
109
166
93
91
141
123
97
98
0
57
48
30
41
44
105
31
26
86
80
45
89
22
77
19
14
53
70
95
69
98
67
82
56
34
49
96
78
87
0
55
157
137
163
134
101
115
194
206
248
255
255
255
255
255
255
255
255
255
255
235
241
242
227
234
170
162
165
213
202
189
186
197
219
235
239
222
169
226
159
169
154
230
228
225
177
216
209
137
202
152
196
172
184
207
125
180
203
158
138
152
199
175
220
91
103
151
115
47
140
172
203
156
191
238
216
191
195
243
211
206
175
211
225
195
231
190
187
183
180
170
179
231
177
148
161
151
195
172
101
128
82
130
81
104
74
74
46
98
99
54
64
0
26
43
125
26
62
104
105
88
54
67
119
5
22
77
125
154
101
56
43
76
129
112
66
113
116
121
174
65
131
152
104
80
0
16
11
159
101
166
229
89
137
91
0
74
117
45
98
46
1
2
5
76
64
72
42
22
103
101
49
169
91
57
115
68
38
66
43
38
40
91
95
182
106
71
78
45
84
155
134
71
67
190
129
118
123
16
200
96
134
138
76
103
9
55
46
26
68
135
145
109
52
151
51
90
56
168
84
161
180
61
12
77
153
131
66
45
38
4
41
56
0
115
92
121
76
55
106
50
36
33
135
74
39
64
53
20
59
37
62
139
82
26
141
112
82
77
77
38
75
179
123
147
81
92
21
29
55
33
49
57
36
84
51
20
66
58
56
54
43
61
11
22
21
143
112
97
60
71
47
109
111
34
41
24
153
99
105
73
46
81
145
94
129
174
164
193
213
255
255
219
255
255
204
251
252
193
176
234
238
174
231
217
220
217
162
154
193
185
190
213
227
223
218
222
231
197
171
162
220
223
172
178
218
216
184
171
140
223
181
216
209
137
196
227
148
153
255
169
189
255
186
107
107
140
40
149
157
210
210
148
179
227
215
227
255
247
215
248
222
227
196
241
191
249
228
185
166
180
177
175
159
176
204
193
189
154
172
92
116
108
88
86
47
118
135
59
104
45
79
92
37
50
20
76
145
73
92
122
132
118
50
74
30
113
58
64
42
69
12
11
56
7
107
170
141
138
120
70
138
76
13
25
34
24
0
55
108
117
95
106
85
8
27
160
60
75
0
119
56
59
36
84
1
1
0
78
112
77
59
149
115
57
40
136
29
26
26
43
0
37
79
26
36
73
65
59
108
18
35
52
103
123
138
92
91
134
0
38
131
141
48
0
0
25
0
163
66
126
158
78
116
23
42
67
139
204
95
148
21
7
20
184
146
16
24
56
58
0
82
8
68
52
183
57
29
64
7
58
116
126
64
76
124
69
27
26
63
26
26
116
40
158
132
101
44
44
0
53
28
93
73
59
78
62
60
58
99
10
5
36
105
87
72
83
45
58
82
53
82
32
21
54
106
105
133
31
68
69
59
87
79
86
95
26
88
40
99
109
48
141
147
150
207
245
195
216
217
255
250
244
193
235
254
243
197
196
241
248
244
245
235
247
242
248
240
232
214
190
209
171
214
223
226
168
207
213
219
171
171
174
152
190
207
200
175
186
201
175
241
218
168
156
166
86
143
168
133
197
234
107
168
194
156
0
202
118
164
120
180
228
249
224
236
227
189
246
250
190
180
220
240
229
246
199
168
191
181
173
175
163
183
229
204
212
199
161
116
122
104
94
44
58
21
169
132
111
73
28
24
32
44
0
134
131
64
105
122
34
115
122
133
129
129
150
44
30
72
85
146
85
106
150
173
138
108
88
70
0
0
0
0
0
20
91
14
113
43
144
67
74
16
97
0
82
78
42
42
61
82
12
37
6
0
43
0
11
68
114
96
72
157
44
0
84
76
42
26
0
40
120
83
176
94
111
40
153
2
113
26
145
106
150
101
100
80
196
133
138
50
144
38
62
123
72
132
26
42
83
88
89
102
50
112
148
68
123
80
68
3
62
151
139
19
21
1
97
162
118
87
80
19
98
90
33
53
19
55
135
75
56
33
50
139
38
128
86
51
116
82
52
120
118
127
65
60
28
76
82
80
96
64
52
77
39
44
39
0
9
0
142
79
109
45
100
31
113
36
139
125
63
45
36
56
80
95
118
40
131
103
128
62
84
67
62
74
101
74
55
84
151
170
215
239
185
253
204
199
198
199
252
255
222
212
210
199
205
254
253
248
248
254
198
210
253
248
232
205
208
218
216
227
230
230
215
220
227
178
175
221
213
146
152
149
111
166
212
235
242
145
121
176
169
102
151
196
135
201
235
81
166
185
192
1
209
144
149
132
224
169
226
224
227
166
243
243
183
175
184
221
235
175
188
241
224
182
169
170
226
164
175
220
205
209
198
177
186
123
72
82
68
129
104
119
115
104
143
22
30
0
10
58
39
38
70
114
26
33
152
123
62
173
117
50
21
107
48
32
86
33
89
151
38
160
132
109
33
68
29
3
0
0
94
0
57
144
92
206
48
26
114
9
5
76
39
39
36
64
18
24
2
38
26
37
47
110
99
79
113
96
106
0
0
0
38
0
0
93
5
91
0
100
144
55
40
156
7
74
139
159
140
137
70
92
157
152
138
51
121
20
108
74
71
0
66
45
70
97
66
60
45
93
151
99
69
0
16
55
130
1
135
188
48
0
69
134
9
0
105
67
59
45
143
84
58
108
43
88
52
44
104
38
175
81
173
81
78
133
99
94
17
109
86
58
3
96
118
48
41
58
47
0
18
85
71
47
0
0
15
155
65
56
92
94
0
84
8
0
116
92
49
37
58
63
60
77
113
71
106
118
42
38
65
62
84
128
94
84
83
123
134
219
182
181
192
255
255
207
255
255
209
221
213
206
195
212
203
204
194
201
204
203
217
255
255
246
221
211
217
216
233
231
238
226
230
237
239
231
222
176
159
157
211
175
110
191
182
169
121
124
179
159
117
157
134
155
128
157
50
149
124
147
31
138
114
131
141
212
155
152
175
159
166
183
160
174
234
226
222
179
190
183
231
236
233
169
240
244
187
186
234
234
170
202
187
190
111
82
90
85
76
137
82
157
70
79
82
78
86
30
93
0
36
32
43
155
164
113
84
122
131
41
36
41
167
146
23
86
1
98
96
62
49
88
65
66
45
44
0
61
61
102
27
137
139
111
151
93
46
89
47
70
40
87
15
104
42
69
0
0
0
0
43
32
57
7
96
131
143
78
0
0
0
18
63
69
54
13
15
12
86
141
56
91
95
17
149
96
97
98
94
64
57
118
66
128
53
58
0
112
30
32
0
57
59
94
61
94
70
27
152
77
79
55
143
52
37
54
123
78
102
76
6
81
205
13
0
95
80
28
32
53
70
88
85
48
96
94
75
105
65
99
56
88
75
55
97
56
110
51
74
126
41
30
36
55
62
61
40
74
0
0
32
110
65
7
0
99
31
53
134
96
60
79
83
73
83
45
107
84
63
70
63
63
81
122
112
68
45
51
49
71
75
144
171
159
170
95
152
144
167
237
241
252
212
210
208
255
201
196
205
201
190
186
200
197
197
186
188
201
201
209
205
199
191
228
216
169
169
242
235
243
239
241
248
249
238
179
239
170
172
227
129
137
217
181
175
114
133
159
140
177
123
137
136
124
152
77
189
210
113
141
157
153
140
139
206
183
144
171
149
217
174
138
165
186
170
176
176
201
191
180
201
194
189
213
213
213
255
255
255
237
221
155
147
103
115
148
147
120
134
26
123
65
0
32
54
69
31
0
103
129
38
38
80
88
26
113
170
60
46
49
72
13
115
178
60
90
178
89
129
122
113
97
52
5
59
0
37
34
32
75
19
190
74
113
149
172
26
75
74
52
75
98
92
40
115
28
0
37
0
0
42
53
26
89
77
96
118
0
0
2
102
61
22
63
65
0
0
9
69
68
49
31
61
105
71
151
31
121
88
81
93
123
103
112
27
61
0
129
8
0
3
38
81
123
114
58
188
122
6
8
169
77
26
91
55
100
36
0
44
175
147
98
73
62
57
20
0
6
38
102
105
70
62
135
53
116
99
37
114
118
118
142
59
69
24
16
58
8
112
73
52
42
41
87
56
36
80
78
15
50
86
61
17
7
148
62
7
208
43
17
101
55
19
66
93
78
47
77
75
78
103
67
65
42
64
72
78
80
110
126
137
148
178
190
129
216
164
179
245
198
255
255
203
194
186
181
189
191
193
182
184
185
192
191
239
231
202
205
203
203
193
185
177
169
176
233
250
244
250
249
251
255
255
246
238
239
171
187
238
99
164
159
255
159
118
149
146
130
182
116
132
140
116
144
95
192
226
9
115
188
157
172
186
210
157
199
212
211
211
227
207
155
168
173
185
177
200
207
192
213
208
209
223
255
255
255
255
255
188
188
183
169
120
120
90
162
152
132
142
50
124
27
21
68
64
53
122
152
77
65
109
63
139
90
136
171
80
31
104
62
67
64
122
47
77
112
106
105
114
42
76
91
64
65
46
42
111
55
56
0
153
74
147
128
145
50
101
91
35
75
97
107
172
59
132
47
58
0
0
0
62
62
120
161
94
61
63
104
0
139
74
26
48
104
35
19
64
41
53
97
19
103
104
90
99
110
99
132
60
159
182
166
3
52
11
35
56
0
81
0
61
96
83
69
26
142
0
34
159
152
120
75
31
71
26
139
20
107
115
75
155
78
79
31
0
3
0
106
90
34
0
21
102
71
55
48
28
81
135
118
96
0
83
26
63
110
91
95
96
31
16
37
94
83
0
0
248
22
119
142
57
74
78
66
66
46
126
43
123
33
44
5
0
50
73
32
119
58
68
55
73
159
80
83
134
130
121
157
210
211
164
215
206
229
224
237
241
247
202
252
250
250
241
236
179
181
177
183
175
181
179
188
193
194
232
203
207
201
201
191
181
176
166
175
189
191
249
254
252
254
255
255
198
236
182
166
243
239
152
176
157
251
178
124
160
148
138
181
195
171
116
103
40
49
58
172
12
138
181
145
178
173
208
147
209
198
231
162
223
226
159
166
158
185
239
210
220
206
213
255
255
226
255
255
255
255
255
195
190
182
170
142
177
160
172
72
139
150
91
60
88
90
112
114
96
81
47
74
73
116
120
144
66
86
174
150
103
111
96
71
70
95
110
121
28
125
116
71
87
81
133
62
131
103
91
115
45
10
0
87
104
119
66
165
119
126
52
101
139
105
93
160
52
108
72
10
0
148
0
8
5
56
110
106
13
18
40
28
61
86
98
58
203
28
50
85
0
66
109
38
100
113
172
79
217
82
137
130
179
177
145
73
0
0
153
29
32
143
0
152
14
176
86
0
56
64
7
83
125
153
197
108
74
30
142
116
125
94
74
38
43
117
117
93
59
58
111
131
35
40
16
63
213
113
47
55
36
199
77
42
97
87
163
126
117
52
12
50
73
0
127
88
64
51
55
42
9
12
94
68
46
67
77
71
86
62
63
82
130
142
41
34
62
82
83
89
115
120
162
214
170
164
157
157
154
151
139
126
161
142
157
210
209
164
217
217
230
188
184
181
182
179
240
185
178
155
166
163
207
224
213
240
190
244
183
187
248
238
183
175
174
209
217
176
138
235
246
245
248
246
247
248
174
186
223
188
179
151
140
216
205
140
119
136
126
151
162
185
121
126
137
134
128
168
65
8
133
126
167
102
205
158
182
253
195
237
233
213
195
185
189
156
234
255
199
218
255
208
255
255
255
255
255
255
209
251
254
177
181
243
216
228
148
174
218
177
141
136
142
129
119
143
117
113
140
112
189
107
44
74
33
117
136
141
68
78
130
60
18
56
138
37
98
37
74
113
132
100
73
83
37
53
142
0
45
15
85
31
78
84
132
78
123
95
13
60
108
126
45
101
59
171
0
69
26
0
101
12
0
0
70
178
51
108
96
34
148
39
58
38
120
85
0
0
96
1
63
43
31
76
129
26
121
71
129
146
101
20
0
0
63
24
38
75
90
73
99
30
114
99
72
80
102
62
123
62
9
144
159
124
166
36
26
59
47
6
96
70
133
66
87
127
92
133
12
6
56
41
113
71
109
72
91
61
61
39
129
136
30
19
32
110
110
102
101
1
73
69
84
103
100
77
80
134
53
56
55
47
37
35
102
134
98
81
104
87
43
48
69
65
36
54
107
118
153
206
217
211
148
154
125
127
131
148
199
120
117
117
131
143
147
157
151
200
156
204
158
163
176
214
175
177
206
168
147
148
167
203
223
218
224
191
237
237
197
187
184
180
230
221
215
214
214
219
167
193
236
249
176
255
224
154
186
236
239
211
180
220
216
236
182
120
140
121
138
159
183
106
117
138
112
124
190
80
102
171
132
138
132
143
181
179
173
214
218
204
140
181
215
235
191
246
255
196
215
255
255
215
255
255
255
255
255
199
255
246
245
225
235
240
209
142
154
137
178
169
177
121
128
105
120
69
109
44
132
168
134
80
77
46
101
158
122
101
30
99
55
26
56
78
71
83
61
30
80
26
62
91
70
36
70
129
0
33
15
52
33
79
94
168
104
74
106
30
0
25
67
101
20
34
59
98
70
0
4
124
0
105
45
20
54
17
38
195
22
21
71
43
118
130
106
42
6
28
30
74
34
80
55
113
98
150
72
217
34
58
51
0
6
38
109
56
2
72
90
44
34
43
26
130
97
23
108
92
42
175
101
109
110
28
0
55
48
41
68
85
30
115
157
87
170
91
106
0
31
88
65
78
49
55
70
72
126
70
32
52
136
16
77
52
33
33
0
48
104
49
78
83
99
106
106
125
129
33
54
52
41
44
74
120
125
79
109
113
138
12
49
45
47
77
101
140
165
174
214
213
189
147
186
116
119
117
188
136
117
114
114
124
135
138
146
142
189
148
198
150
150
148
152
215
215
136
161
136
182
162
156
208
223
214
229
177
224
232
187
178
227
225
218
213
212
212
166
161
185
232
241
174
210
178
195
234
229
204
184
198
192
180
243
186
128
141
111
181
166
162
164
140
111
105
134
141
101
105
81
164
182
132
151
114
120
149
131
153
139
196
220
208
234
187
244
255
253
212
207
221
216
255
255
255
255
255
192
255
248
240
232
241
215
211
140
161
199
142
182
175
165
100
49
74
79
43
57
87
116
156
133
136
111
31
130
106
91
49
41
66
32
52
123
12
41
36
59
99
95
58
58
69
84
74
80
72
0
16
0
2
20
11
86
117
73
103
0
15
37
48
118
14
26
44
86
111
48
24
63
0
27
57
28
0
52
61
197
111
116
110
21
45
148
155
38
107
11
7
82
107
81
92
161
84
35
48
94
90
146
57
0
39
150
182
184
53
26
88
45
50
128
92
45
143
99
62
52
148
134
124
95
30
30
65
4
15
64
155
30
118
128
85
107
40
116
32
48
10
50
0
97
63
71
126
85
88
136
111
89
214
118
43
45
100
61
55
27
3
10
56
103
149
82
51
60
129
96
104
101
24
0
33
123
85
17
72
85
96
84
0
84
121
133
152
162
153
197
157
136
190
177
117
109
164
152
169
120
110
163
109
117
173
177
130
130
176
187
189
139
136
188
147
141
194
115
150
183
118
201
157
193
219
155
218
221
158
163
186
172
220
219
160
209
209
157
214
207
175
226
230
172
208
182
205
236
178
211
187
181
255
211
218
138
122
197
174
122
108
173
150
147
91
114
113
119
99
73
64
153
177
121
175
147
103
150
170
151
145
207
124
149
220
220
222
245
184
251
255
219
211
212
255
255
255
216
186
212
250
238
233
237
152
161
139
180
150
201
185
183
126
106
40
49
32
44
20
89
130
168
68
55
66
72
86
75
121
74
142
75
89
61
129
124
54
53
96
35
64
62
0
65
95
71
9
0
0
28
29
74
51
174
97
99
74
74
42
9
33
27
32
58
0
198
54
41
0
7
50
26
0
0
114
0
41
44
187
80
58
102
62
11
0
132
4
119
76
0
159
130
104
175
127
30
0
40
0
139
76
86
0
168
198
142
147
173
133
12
87
81
30
105
41
99
54
83
78
91
0
117
29
69
10
90
75
0
0
137
137
158
33
0
80
64
84
79
28
0
97
96
50
69
27
114
89
98
120
91
143
96
47
46
11
96
65
93
84
58
52
35
140
52
90
99
66
105
112
81
105
43
0
16
69
85
73
57
73
23
77
42
96
194
200
200
147
130
163
182
185
181
162
164
159
162
145
153
158
105
159
158
163
164
165
116
120
171
177
180
180
126
186
138
131
193
119
187
188
122
138
200
192
151
157
170
220
210
160
182
168
216
215
208
205
204
207
210
153
167
220
223
174
198
178
164
224
240
255
230
236
216
162
167
181
117
143
183
131
105
176
151
157
124
107
98
113
100
51
92
140
171
119
172
91
96
141
124
189
110
150
144
187
155
215
211
226
231
234
254
255
255
206
209
255
255
255
241
250
198
238
225
227
203
171
153
177
164
160
182
188
137
136
71
35
80
81
27
112
143
143
110
48
64
46
90
73
100
3
76
78
132
84
148
104
25
77
77
69
68
5
62
33
73
7
44
0
33
46
0
81
91
77
120
166
134
166
59
43
98
149
0
40
0
131
0
9
0
35
42
83
47
39
96
45
35
35
103
154
31
172
100
24
58
164
61
49
83
58
68
83
189
88
62
28
92
121
57
67
101
34
0
30
116
111
136
110
110
26
71
33
0
46
15
8
38
75
0
26
122
66
4
139
150
0
0
15
73
119
25
10
29
0
51
151
101
123
79
32
108
133
84
72
92
125
46
31
117
90
111
120
90
45
62
107
108
0
0
0
88
84
10
35
0
50
120
27
77
73
55
86
66
113
111
46
15
40
101
90
128
161
156
148
133
123
111
172
104
117
160
160
153
149
144
149
148
143
145
145
146
152
103
102
155
148
154
166
159
112
164
114
118
168
135
188
190
123
127
177
132
120
194
121
146
174
165
217
219
164
163
210
207
202
198
198
205
204
157
158
160
159
183
181
172
180
205
255
255
233
220
206
159
129
222
141
145
187
188
142
161
142
125
153
96
99
98
94
76
95
146
135
56
122
64
111
94
110
96
122
115
129
133
115
178
178
180
210
157
187
201
255
249
240
247
255
255
255
234
180
177
172
188
217
167
162
143
159
159
149
139
140
120
109
172
160
106
79
116
115
185
139
77
23
50
122
36
45
68
46
17
125
0
65
60
60
0
83
181
31
147
103
42
58
35
26
0
21
19
86
68
145
111
96
54
28
28
113
26
81
96
79
0
0
45
24
107
30
0
35
72
104
43
114
67
66
107
59
6
120
78
138
142
133
67
135
35
30
90
100
127
50
62
112
92
54
7
35
109
21
112
143
111
91
97
100
57
54
124
0
63
0
0
21
0
28
40
78
75
54
91
107
174
104
46
45
91
116
77
111
0
59
87
94
155
43
31
28
16
58
52
128
142
120
63
61
39
52
66
110
101
43
89
77
85
50
78
19
6
74
69
18
82
48
115
32
7
0
60
61
88
67
52
51
52
103
104
116
197
135
171
134
133
176
170
96
101
71
153
132
170
138
145
137
140
141
146
144
138
140
96
99
149
150
139
145
104
150
106
155
154
115
163
120
121
120
119
175
174
128
119
178
181
166
200
157
210
205
157
209
202
200
145
145
197
204
152
156
154
158
151
186
189
179
250
223
255
255
246
250
248
208
117
216
191
146
208
181
143
175
131
141
89
127
89
118
84
92
98
127
117
65
151
43
102
105
98
106
155
147
114
131
126
124
181
183
155
200
228
245
255
241
237
243
249
246
206
176
166
174
222
241
223
158
154
154
132
141
158
143
156
132
128
156
103
106
142
99
86
173
139
83
25
75
146
62
66
120
89
33
150
12
44
30
85
57
86
123
34
82
60
28
43
21
39
11
0
63
48
27
84
128
127
99
132
54
89
72
22
86
136
0
22
16
13
48
83
30
0
0
155
29
150
102
121
116
35
19
54
93
65
112
109
27
86
118
3
161
147
38
54
97
169
10
44
93
107
98
78
51
120
120
63
129
88
104
97
177
11
127
9
0
0
12
13
31
18
0
93
134
44
107
39
88
86
43
78
53
78
45
65
78
122
105
110
33
115
26
23
116
132
36
84
67
83
48
52
18
69
34
14
24
122
99
65
31
51
43
27
115
41
41
58
128
15
16
14
46
64
90
70
129
63
101
130
115
143
176
150
202
171
184
150
156
142
152
122
68
154
139
146
149
84
135
133
95
145
135
135
147
147
148
97
133
140
146
92
103
98
145
148
149
159
132
119
167
177
175
175
121
109
192
140
175
149
148
190
154
204
196
195
195
197
198
203
153
153
203
158
144
187
198
187
192
179
255
223
227
180
174
212
114
198
185
185
208
187
173
152
163
140
154
127
55
117
110
77
129
122
116
81
41
24
94
146
139
101
110
156
117
154
111
117
121
123
139
192
217
185
212
234
236
239
236
237
204
170
154
179
218
234
208
219
162
152
136
147
163
134
159
142
145
165
93
86
129
68
87
133
54
103
36
81
132
80
71
111
145
60
150
82
77
3
32
110
135
103
31
46
61
60
44
23
34
12
32
55
71
98
152
103
99
140
54
26
0
137
89
21
0
95
53
111
45
1
65
84
71
17
147
79
52
35
142
68
125
115
85
63
82
74
93
57
118
174
51
105
81
74
83
102
57
71
111
146
111
72
128
165
167
172
146
119
154
74
111
136
0
112
70
29
38
4
0
79
23
102
66
112
128
27
131
120
136
143
129
136
136
38
148
102
97
57
112
103
71
71
41
125
22
74
134
54
116
24
9
158
31
26
3
146
81
106
74
19
10
57
29
0
67
38
121
122
64
75
37
6
21
99
106
168
116
143
132
133
134
134
148
189
111
159
191
142
137
144
150
137
120
150
136
130
86
90
77
121
142
88
78
133
137
148
83
91
134
146
77
97
88
82
99
141
153
111
107
162
116
121
120
118
112
122
171
147
195
138
184
146
145
187
134
139
144
149
148
178
176
161
233
149
188
193
191
205
183
178
254
229
145
198
232
137
194
173
188
192
166
135
156
171
126
151
91
135
121
126
126
86
135
137
98
53
110
89
91
88
97
99
152
102
104
99
118
116
112
122
187
195
196
196
245
199
187
184
163
213
176
152
171
221
223
215
214
218
151
112
178
203
117
159
114
138
166
121
85
163
52
111
61
57
126
81
93
132
51
103
140
125
40
146
38
30
0
69
0
175
106
54
130
71
58
58
31
25
6
64
15
21
27
135
13
60
93
60
0
31
0
35
13
15
114
88
158
58
45
24
83
107
111
60
171
0
64
65
63
145
116
76
33
101
96
55
139
145
71
175
118
0
50
65
76
86
0
125
134
122
134
126
125
65
84
118
143
92
77
62
82
29
146
69
80
17
24
20
34
99
5
36
45
62
165
39
78
39
103
66
163
111
55
25
17
77
0
43
109
53
82
68
30
64
135
76
141
78
125
59
168
114
103
79
96
151
121
40
13
4
36
52
0
54
54
134
124
109
57
30
50
113
139
183
185
148
132
146
147
149
109
118
145
175
89
170
157
143
135
145
152
136
136
72
79
131
88
91
133
129
138
122
122
90
94
141
130
129
91
77
92
90
135
96
87
99
107
102
157
114
118
120
115
164
104
176
161
129
128
176
187
136
187
186
140
145
150
147
211
150
193
248
203
255
195
199
213
190
169
255
255
202
255
165
122
173
175
169
176
157
106
177
171
130
150
132
147
139
116
127
107
143
124
116
86
60
87
101
95
100
96
97
153
102
101
113
112
110
117
177
180
173
228
186
165
172
225
176
198
169
139
175
156
219
229
216
207
200
177
201
192
167
209
134
147
170
135
112
103
80
122
163
51
68
131
151
120
69
151
186
98
103
154
76
144
29
93
32
78
49
45
87
57
104
74
57
53
21
48
33
0
0
48
4
17
0
9
0
21
44
114
0
39
82
108
84
73
68
92
58
144
72
31
14
92
68
107
84
69
134
133
117
24
56
78
97
59
109
160
136
38
1
105
172
41
31
138
140
97
68
165
121
81
111
105
123
148
30
47
55
27
98
101
75
108
57
102
91
20
0
50
0
34
100
26
68
93
26
116
138
0
65
73
78
25
80
54
100
76
78
9
54
124
113
46
157
109
58
34
16
58
41
73
64
0
82
26
3
93
17
0
107
109
125
96
93
111
41
123
98
192
204
187
151
148
120
145
162
127
122
117
137
167
89
122
153
151
144
134
127
140
133
129
77
66
70
84
88
90
129
135
78
72
131
137
131
128
84
81
130
84
68
136
129
142
146
145
147
104
105
112
110
162
140
170
178
160
118
117
172
127
126
179
184
137
193
207
127
152
218
244
230
255
255
255
255
198
178
196
204
148
177
175
98
125
132
181
192
196
156
195
192
154
145
83
141
115
90
59
115
143
92
125
51
86
87
89
78
93
88
89
152
148
102
154
158
158
162
162
104
175
181
206
136
158
212
196
191
153
147
193
210
220
228
235
204
188
139
188
204
202
188
191
146
153
136
156
136
121
102
136
128
167
174
187
153
97
202
178
108
196
180
128
144
108
99
58
145
104
34
193
113
122
13
35
13
7
18
35
48
58
43
35
71
0
1
0
140
111
33
9
148
70
114
113
104
107
109
83
35
84
68
83
85
51
18
22
79
86
44
56
30
57
96
50
70
170
108
40
56
49
51
89
96
63
137
133
140
170
168
103
223
238
125
163
99
69
37
59
95
75
175
134
76
90
84
14
36
27
40
68
88
42
67
61
56
78
46
97
21
35
113
0
10
71
40
33
117
133
10
52
62
113
0
129
98
85
35
98
80
8
26
0
6
18
65
31
49
65
72
31
44
37
78
65
80
89
142
183
187
128
127
115
152
111
154
172
164
102
157
120
121
102
71
141
150
95
81
76
89
125
121
75
125
69
70
79
85
83
86
135
116
126
126
90
73
124
79
130
136
116
132
74
136
140
141
92
150
150
103
109
106
153
157
168
156
166
167
170
124
123
125
183
187
191
202
133
187
193
216
251
255
247
255
255
236
188
179
182
152
169
163
104
138
201
184
194
200
186
216
187
144
159
105
147
101
89
71
124
54
98
128
15
75
87
92
81
100
93
91
150
146
151
153
156
158
161
162
159
166
116
133
170
191
201
237
185
149
169
193
224
226
224
235
206
186
158
179
186
204
134
182
201
150
147
183
162
126
127
136
154
196
192
200
159
150
237
217
175
215
207
157
145
128
120
95
95
63
0
184
16
126
90
27
28
75
84
29
78
61
43
84
70
11
0
76
75
68
20
5
34
153
167
66
88
64
77
85
46
69
55
0
76
6
56
27
77
158
33
78
16
80
91
75
35
179
166
76
123
54
116
126
107
117
137
141
143
180
117
97
228
189
131
93
79
78
74
45
82
5
91
87
112
166
203
86
143
92
32
58
77
141
65
85
86
80
19
127
0
17
49
52
50
38
0
117
37
134
38
59
108
52
66
107
119
71
112
36
60
21
0
65
0
59
41
39
43
47
122
25
70
78
107
82
91
124
169
171
164
132
123
149
151
142
142
162
170
146
140
97
80
154
137
82
93
137
127
75
72
83
97
124
133
76
71
74
63
84
127
131
118
130
70
89
124
112
125
79
136
121
130
70
131
133
137
139
143
143
146
103
100
106
94
154
152
157
160
164
118
123
124
132
133
137
191
193
179
184
231
255
239
255
255
254
220
188
165
162
157
169
135
115
143
212
178
131
181
197
201
185
147
117
89
59
50
96
40
113
19
45
60
39
46
76
93
90
98
103
99
150
149
96
154
103
104
107
111
161
160
110
169
171
165
187
212
171
154
185
185
229
233
229
224
208
197
182
188
191
199
128
171
138
134
149
186
167
132
201
208
196
221
205
219
190
176
221
216
167
221
207
164
179
104
156
149
162
67
83
150
45
161
92
100
74
97
81
62
48
57
92
118
101
15
0
101
70
86
15
0
35
103
130
92
58
84
107
140
141
50
12
5
46
0
47
48
9
64
51
96
68
88
34
0
120
150
87
134
113
37
53
129
62
114
132
146
153
132
43
149
222
216
147
152
138
32
104
50
128
82
110
154
181
87
76
93
78
61
33
0
34
164
76
29
0
82
0
41
29
0
38
123
37
41
52
27
66
94
39
88
38
0
110
127
58
46
63
58
57
39
16
0
28
52
48
22
12
30
71
75
36
86
100
96
140
161
165
174
171
149
159
144
158
142
132
130
187
137
151
93
72
100
95
75
80
130
90
81
109
124
89
75
134
134
125
124
57
74
123
129
74
79
73
75
129
114
121
130
80
125
128
65
71
126
133
135
85
141
144
144
94
100
92
146
151
150
155
109
113
170
172
128
181
185
184
192
167
210
246
250
239
184
255
246
217
180
166
155
148
156
129
122
155
152
141
137
121
187
156
132
121
149
59
38
67
81
71
27
4
63
64
51
106
126
146
155
150
116
112
151
157
150
103
99
153
105
108
106
151
157
156
170
163
184
181
165
169
190
180
225
244
235
215
217
218
193
212
217
195
176
122
124
111
140
160
155
190
205
214
191
232
205
229
215
210
193
211
166
204
199
167
186
187
191
191
183
164
153
115
73
141
91
5
73
149
65
101
87
88
56
48
32
65
83
77
82
165
91
135
106
63
42
86
57
79
91
127
125
44
9
31
0
15
0
0
0
28
140
88
124
5
0
30
55
71
129
119
144
148
71
55
119
120
136
154
163
97
134
148
186
149
198
98
54
143
138
70
145
194
9
106
69
137
147
163
180
76
43
26
31
119
98
109
13
56
33
0
37
8
57
26
51
43
63
54
81
0
50
67
73
94
74
123
43
82
76
62
59
37
92
9
72
10
55
96
51
0
95
56
0
96
73
105
202
191
157
145
149
143
144
136
153
157
125
51
140
167
111
103
124
100
97
66
69
78
77
127
73
73
72
78
129
134
124
125
69
58
130
84
78
78
77
63
86
72
122
127
74
123
126
114
120
123
77
79
82
87
143
83
91
140
94
91
153
95
153
160
111
164
165
174
175
179
185
135
99
242
255
240
239
230
255
246
221
225
173
158
133
135
145
123
170
136
169
158
132
122
120
135
131
156
72
73
90
42
58
0
15
68
53
51
149
145
157
121
110
126
121
102
109
150
154
150
98
103
106
154
143
101
151
159
175
190
160
170
185
190
180
222
255
235
213
178
237
204
235
229
190
182
192
122
101
136
138
143
192
196
198
203
224
190
221
216
221
226
207
183
200
193
163
182
195
187
163
145
159
147
116
71
66
61
27
88
105
84
77
108
64
72
89
86
82
83
105
144
153
84
159
130
15
11
57
144
145
99
112
33
84
34
17
25
14
13
5
0
0
2
103
46
85
32
89
51
82
45
65
108
105
124
67
76
107
125
141
142
207
194
159
148
206
166
77
105
130
100
73
56
137
0
79
56
173
156
165
186
82
171
136
61
67
30
28
141
125
141
107
89
143
35
13
33
8
10
57
57
49
75
43
115
50
82
82
103
80
94
42
132
130
100
39
3
0
72
46
51
42
14
96
57
36
151
175
122
188
135
89
144
136
137
140
142
153
153
94
74
118
113
87
64
102
77
139
81
89
78
132
83
71
73
78
133
128
134
122
121
126
115
110
108
116
68
69
65
68
76
70
74
68
115
117
111
68
77
121
79
72
124
149
94
90
88
84
140
139
80
144
111
133
112
125
180
169
162
132
175
255
255
207
210
187
175
253
204
218
203
120
114
127
155
142
147
199
167
135
159
111
112
97
73
113
71
80
84
45
10
125
45
119
125
179
219
167
153
218
126
160
123
103
122
108
106
152
157
103
103
98
151
150
103
156
103
106
106
121
139
189
207
229
238
186
170
184
197
158
242
198
184
206
193
104
149
130
108
152
127
179
182
116
181
128
148
216
215
240
237
234
235
193
175
180
202
169
193
168
126
147
134
134
131
63
7
98
74
113
104
138
81
64
38
101
80
103
167
186
26
68
76
157
0
0
50
66
97
89
100
49
113
70
37
85
58
18
0
77
89
124
0
35
68
31
90
43
42
88
26
42
133
124
44
22
114
105
92
93
132
120
164
134
139
105
177
24
92
68
195
130
155
112
95
129
85
55
102
166
125
109
105
107
26
38
138
0
0
0
19
0
22
22
93
125
41
52
75
100
6
75
4
127
125
101
52
89
139
95
69
121
90
112
102
31
0
26
45
40
68
70
54
79
67
176
128
124
184
136
82
86
91
142
135
129
93
86
133
89
93
103
98
60
134
139
131
136
136
134
81
85
75
62
129
139
129
134
135
75
73
122
62
112
113
114
118
121
57
127
122
76
124
114
112
110
65
69
114
76
71
110
139
87
92
91
89
88
92
84
85
101
122
118
171
188
117
111
182
132
255
255
222
211
192
172
223
191
152
152
125
121
154
193
227
157
197
179
136
216
109
129
106
63
120
110
86
148
53
77
112
86
205
166
169
205
119
204
188
156
176
139
171
129
120
111
105
109
155
102
96
97
96
154
106
96
104
104
103
121
170
142
168
174
188
162
184
187
170
189
186
177
189
207
123
140
127
124
163
125
187
179
154
156
110
125
160
204
231
237
236
239
171
197
208
211
177
202
180
146
153
159
132
100
64
79
121
85
175
93
167
99
71
56
0
127
65
186
29
79
66
24
57
50
81
0
108
147
79
54
88
29
119
151
84
114
25
66
20
20
98
54
144
97
117
87
123
161
95
110
78
82
53
53
67
129
55
73
144
149
142
113
178
148
60
159
94
64
183
221
169
154
146
49
106
82
69
90
96
62
104
105
160
102
54
27
28
25
69
0
0
14
99
32
44
74
55
88
93
3
26
99
112
177
2
138
118
121
63
78
99
44
0
48
93
32
20
90
93
96
81
78
66
167
140
112
156
138
80
133
88
106
148
164
150
147
147
83
100
137
141
106
76
59
154
138
134
135
142
140
73
79
57
137
141
131
128
130
72
72
127
71
67
65
116
116
120
53
118
124
120
125
108
108
63
65
60
107
67
121
104
124
130
94
92
94
96
100
93
89
90
108
107
177
174
124
134
197
135
176
252
255
195
184
154
140
194
202
196
191
121
127
153
140
221
156
189
144
196
114
132
106
90
135
108
68
51
110
149
86
146
154
145
185
183
139
169
238
221
179
147
183
187
130
168
110
113
104
103
96
96
96
102
101
95
101
101
148
161
157
184
159
162
180
159
185
179
185
219
201
176
185
167
158
169
162
194
207
184
200
181
110
95
103
114
137
189
207
219
218
226
237
163
185
221
190
216
132
193
137
141
171
166
73
46
71
49
85
54
103
99
58
26
106
127
63
36
64
124
97
70
42
117
81
15
158
49
32
23
116
74
115
150
138
85
34
69
26
18
66
40
123
146
56
18
18
158
59
129
40
28
66
8
28
139
64
68
90
145
148
158
170
112
125
122
166
93
184
224
109
169
151
0
173
10
71
117
79
163
39
95
31
118
229
200
95
40
0
50
48
0
0
118
0
29
60
90
111
10
86
84
99
151
15
125
121
71
80
71
109
49
3
82
95
100
80
98
50
122
64
86
66
172
201
132
148
102
160
102
90
111
141
165
161
142
149
84
147
148
137
157
90
63
98
101
86
134
140
135
74
83
132
144
141
133
127
124
72
69
124
124
67
66
66
65
63
57
108
128
111
125
114
107
60
64
107
106
58
67
106
65
123
143
141
91
98
153
151
155
142
108
100
177
162
175
154
136
203
164
241
254
179
179
141
200
209
209
187
133
143
179
167
144
183
138
152
167
148
153
196
112
115
99
88
51
32
143
170
74
126
119
166
218
174
166
194
244
207
224
148
138
143
140
172
114
116
104
105
99
99
97
154
145
149
96
98
98
155
149
172
146
144
175
162
236
169
177
201
211
176
202
201
177
138
125
191
191
194
153
126
121
100
104
114
113
181
142
205
202
215
224
162
186
168
204
231
191
179
124
114
134
120
138
40
0
113
165
42
53
100
68
4
48
74
26
61
114
137
118
110
83
140
27
2
115
7
7
37
29
110
127
59
91
79
196
53
31
154
30
0
0
73
73
26
40
0
33
4
22
2
78
87
58
104
132
136
97
114
125
155
178
160
128
137
105
64
178
215
171
162
80
23
91
59
87
66
127
113
112
101
94
57
142
124
134
11
50
48
51
27
84
89
80
50
8
65
117
5
141
99
73
67
36
99
110
37
101
88
133
30
0
56
64
104
73
84
41
65
80
53
114
164
129
104
156
87
132
107
90
101
146
86
150
136
87
137
133
110
94
96
142
85
83
105
92
85
78
75
85
87
165
140
137
138
79
73
76
71
120
122
113
115
116
115
61
59
53
127
109
121
75
63
52
60
107
107
51
60
58
62
66
85
81
83
143
145
148
166
154
110
153
158
110
163
201
117
223
177
184
239
168
177
132
148
144
146
130
186
206
149
161
174
175
147
149
160
163
220
204
190
130
80
130
79
33
128
156
109
92
102
171
222
172
167
237
185
228
217
199
195
148
194
176
115
168
103
105
101
102
150
101
138
151
146
95
154
101
144
158
126
123
170
164
171
211
201
200
148
181
222
142
158
165
157
140
132
145
198
117
117
105
105
113
106
129
130
141
134
147
155
157
166
165
222
229
202
175
129
162
203
140
145
69
111
92
79
68
94
34
1
79
39
86
115
175
142
157
122
40
133
76
13
1
15
8
12
34
52
133
38
68
84
55
79
84
89
38
45
98
107
28
33
15
35
17
101
74
44
0
64
39
81
130
130
145
160
106
184
141
107
147
57
134
51
92
146
164
90
216
152
0
95
43
87
46
35
73
157
74
96
51
88
64
92
31
57
82
83
77
58
58
105
79
66
63
109
179
121
89
116
81
23
127
44
49
50
42
74
110
17
0
5
104
100
89
31
64
84
60
115
158
170
133
146
148
91
143
99
93
151
143
150
150
150
99
85
118
107
86
88
90
86
97
143
139
138
132
85
149
166
133
86
88
83
77
80
75
123
124
118
118
117
116
115
110
107
122
65
114
133
80
105
107
55
58
101
103
55
54
56
76
78
82
139
139
140
161
164
149
151
85
161
157
186
192
167
238
174
163
150
217
166
137
134
138
127
165
127
135
164
138
152
180
197
125
165
179
190
210
185
178
169
83
72
91
97
57
51
125
179
185
221
226
241
221
215
158
196
190
146
132
127
115
115
154
103
101
155
99
99
138
149
143
95
153
155
92
93
108
103
155
152
145
201
190
200
187
202
171
157
138
154
168
190
191
138
136
113
104
162
106
106
169
131
123
135
124
130
133
149
145
156
215
205
204
171
184
120
199
141
155
86
82
139
91
5
87
24
10
21
53
55
131
126
148
114
35
74
103
89
130
8
48
20
43
32
50
89
60
86
70
87
51
109
67
51
98
146
169
26
68
95
93
55
55
85
44
0
32
25
106
153
142
147
123
112
103
102
109
98
44
80
31
37
113
185
135
255
88
0
0
6
76
98
113
143
26
162
40
165
84
100
55
165
22
70
58
89
36
108
0
69
109
26
127
112
128
160
66
0
103
40
42
75
0
100
101
43
33
101
50
101
64
66
57
10
63
56
94
148
148
133
124
103
91
126
152
121
128
97
150
80
106
108
90
124
125
96
70
138
137
140
132
136
161
138
61
118
157
78
78
82
140
77
77
79
132
129
74
71
122
120
122
118
114
114
108
120
117
88
57
92
53
49
109
106
96
102
95
46
133
138
80
92
98
89
104
134
131
101
165
141
134
255
158
255
195
241
148
151
134
215
203
224
194
235
190
203
172
231
163
195
193
131
200
202
238
198
170
133
125
183
130
86
107
132
58
98
178
209
131
219
148
206
216
154
120
125
141
134
133
110
124
118
109
156
153
97
150
145
148
137
140
96
147
97
91
82
80
101
98
114
182
184
189
191
212
217
240
125
128
149
136
186
175
134
125
106
113
152
165
159
170
121
124
176
117
121
130
127
170
168
175
172
179
156
126
190
108
121
149
110
108
101
145
130
12
31
101
4
62
79
113
72
55
99
63
89
71
97
26
149
76
106
45
100
64
54
53
0
108
118
34
133
100
112
118
105
161
24
70
53
186
19
9
0
185
0
110
125
137
143
174
113
179
93
81
74
76
67
141
0
26
168
160
101
79
0
86
98
69
75
111
68
167
94
83
147
73
69
76
122
60
8
16
145
112
92
0
0
15
117
146
79
33
96
154
59
24
44
100
76
9
45
35
59
72
97
42
51
99
102
43
59
73
73
50
92
102
127
84
82
141
93
97
90
169
107
77
85
113
92
140
163
84
87
146
137
121
136
101
92
136
149
145
149
129
159
82
83
81
139
132
80
79
133
132
81
75
74
74
129
114
66
73
121
117
101
85
81
67
96
50
47
101
48
50
100
88
104
124
75
84
88
91
104
147
137
55
159
164
141
255
178
244
188
217
200
152
137
144
173
195
227
255
198
208
169
222
240
198
153
149
159
255
221
183
183
178
77
127
162
147
148
126
111
155
171
192
127
133
188
132
141
201
143
110
132
114
129
111
175
150
106
156
101
96
97
93
146
138
139
94
97
95
89
79
77
93
83
95
110
172
176
186
220
225
224
127
146
146
143
183
172
122
111
103
99
108
157
156
173
174
167
116
127
184
129
163
116
117
113
168
170
162
175
180
170
143
120
178
116
152
85
83
59
63
66
64
49
163
104
0
2
151
0
45
193
89
100
70
29
54
93
68
29
16
31
51
50
55
127
104
32
95
164
150
49
0
0
45
135
68
140
40
118
87
71
74
75
112
106
166
142
138
94
115
105
120
0
0
100
132
93
195
31
92
92
0
62
50
114
15
139
100
91
96
129
132
157
145
110
49
0
173
82
88
4
23
21
1
99
116
116
56
131
77
6
71
165
111
78
55
52
111
112
160
41
96
100
26
46
53
35
51
77
46
130
110
120
145
142
103
104
90
139
105
98
87
96
102
144
147
117
90
150
77
143
137
144
139
135
137
150
183
142
157
86
85
131
136
136
82
80
135
135
83
78
76
128
133
117
70
75
78
72
108
66
115
142
104
49
41
44
51
37
95
93
92
105
69
75
76
141
150
96
78
70
99
173
207
255
238
178
201
161
150
155
194
238
120
139
165
254
202
189
185
237
254
176
234
203
199
238
203
179
194
150
140
115
106
87
135
132
102
127
145
122
124
104
127
111
117
125
136
158
126
117
116
115
170
138
155
156
152
96
95
93
92
142
142
142
95
143
141
84
80
82
122
130
97
163
109
129
224
227
210
177
207
186
197
178
171
163
102
101
99
103
157
171
170
118
108
162
183
187
178
155
116
116
161
169
159
168
167
163
171
206
189
191
114
114
150
137
55
89
72
1
38
136
83
50
25
29
45
88
97
127
34
5
56
23
51
46
0
23
21
63
15
40
117
48
106
89
127
37
0
0
0
0
156
22
123
71
45
162
48
104
129
56
130
104
116
140
131
142
127
178
120
144
152
198
73
203
66
65
94
138
75
96
61
55
112
87
16
26
108
142
99
127
104
38
0
112
92
95
87
81
24
51
88
111
127
73
90
110
69
122
105
151
118
38
80
38
109
97
76
129
47
52
95
108
37
61
49
25
16
108
93
139
150
96
138
136
91
87
109
101
71
107
157
146
123
93
91
96
103
85
136
138
132
137
146
186
152
144
88
83
132
131
137
82
80
134
136
132
130
129
127
128
71
123
117
73
82
85
101
178
146
78
53
47
47
98
89
90
44
44
44
60
75
74
135
139
81
61
82
104
116
225
227
225
223
204
170
151
226
213
215
170
199
161
255
230
185
166
232
255
237
223
159
216
228
194
176
187
155
151
144
100
106
148
136
106
52
80
100
107
90
114
98
97
113
112
114
100
118
94
120
104
145
151
157
101
96
94
93
91
96
94
145
144
92
92
90
89
76
68
74
94
157
97
126
218
217
202
175
200
176
187
169
170
163
107
99
109
91
162
188
158
113
107
162
178
176
171
161
118
111
116
124
155
171
156
152
157
187
178
195
198
128
188
122
75
76
86
0
50
37
78
114
57
38
76
76
59
98
101
93
27
51
0
47
57
27
26
76
50
53
139
91
17
64
76
37
0
35
23
0
55
2
87
78
51
176
53
100
155
51
113
65
128
152
132
82
69
139
88
78
149
174
96
109
112
53
107
102
38
15
87
0
39
68
72
0
85
82
77
97
95
0
88
79
47
51
99
7
17
68
78
47
139
132
89
77
95
175
65
96
68
95
67
118
51
38
61
85
105
81
20
68
81
87
16
51
81
108
97
139
117
104
86
95
101
82
81
155
91
138
147
145
148
154
101
104
81
81
92
99
80
144
137
160
156
127
87
79
136
77
84
133
130
133
134
129
131
131
129
126
122
127
114
117
133
97
61
101
100
101
115
112
56
94
97
39
36
38
96
98
123
127
131
132
68
58
79
117
124
182
202
213
222
126
171
151
244
224
105
165
204
225
255
219
184
179
207
248
200
223
241
181
214
182
162
175
186
152
125
127
137
183
133
131
61
93
80
79
89
94
93
83
125
112
164
120
96
131
122
82
157
148
108
102
97
94
95
143
100
96
97
92
97
93
91
93
81
70
74
143
148
87
123
151
199
189
179
198
182
171
158
165
170
167
149
98
98
105
173
99
115
106
160
120
167
170
114
117
112
124
177
157
170
153
152
140
152
155
188
201
198
159
137
131
123
99
60
108
50
53
147
54
108
113
85
105
102
194
170
76
39
75
94
126
86
54
155
107
91
61
124
53
103
33
43
53
26
170
1
15
0
190
68
113
172
75
137
120
25
84
93
155
142
144
95
177
3
3
33
163
37
148
134
129
138
88
151
26
38
107
31
0
151
78
64
66
88
142
30
150
118
166
53
36
70
98
46
41
39
82
30
103
106
162
92
115
0
24
94
102
67
132
100
122
31
67
107
152
126
117
124
108
86
30
71
84
54
36
100
132
99
93
81
147
142
156
141
139
148
142
109
121
75
90
85
107
90
127
145
142
139
139
120
171
54
89
128
144
129
132
79
80
82
134
140
86
83
82
136
128
72
81
122
128
71
95
134
201
169
160
86
137
67
49
46
48
85
82
82
96
120
75
121
82
74
80
118
144
156
194
210
162
112
164
155
169
206
203
158
218
210
244
227
184
225
172
208
189
188
187
208
177
165
117
196
139
162
206
75
150
115
146
126
114
147
106
136
111
96
124
130
114
143
151
151
143
163
123
76
121
146
113
106
101
96
100
146
144
80
88
95
89
88
89
86
89
80
82
131
136
127
157
152
165
180
187
219
187
164
168
160
194
160
170
156
118
110
157
166
172
156
109
106
168
168
107
115
120
121
107
165
150
159
145
139
136
139
159
168
159
110
127
117
205
233
107
63
105
54
120
48
70
130
134
161
125
163
111
174
100
97
77
97
168
66
134
152
115
31
63
26
26
83
35
51
54
0
128
59
71
70
128
132
125
106
116
122
75
55
120
127
120
127
133
156
57
100
101
189
107
211
87
106
40
7
42
157
168
3
48
72
56
66
50
119
24
87
140
92
0
166
3
15
49
0
55
45
149
83
137
122
106
129
193
157
110
32
131
136
123
122
33
119
66
130
56
72
80
120
114
58
31
22
72
87
73
72
111
128
142
92
92
142
139
127
147
146
147
144
90
155
136
70
53
87
91
140
156
148
131
96
122
179
55
92
131
146
131
133
80
83
84
135
144
134
78
80
139
142
64
83
127
84
74
78
111
161
176
126
88
145
137
139
60
32
90
87
90
84
114
72
59
86
70
98
102
125
138
136
204
155
101
190
148
175
237
183
158
209
212
255
235
188
158
119
186
174
181
185
186
214
118
117
151
152
175
183
142
195
191
144
131
141
159
118
141
105
147
178
145
169
203
155
156
136
186
127
91
130
94
115
108
103
96
103
95
137
121
81
142
77
87
145
88
88
84
88
134
140
130
98
132
152
192
184
220
170
116
133
165
153
153
187
196
101
183
191
119
112
160
166
146
112
113
109
119
119
123
99
114
137
156
134
147
147
144
146
108
99
97
114
119
106
177
114
60
80
60
74
26
113
149
55
222
30
38
142
104
108
141
173
58
151
29
129
53
4
68
83
62
73
59
26
48
66
0
76
50
131
110
151
151
132
209
167
128
9
62
106
67
84
153
166
84
141
120
45
182
109
39
138
0
0
66
126
106
80
57
82
54
13
78
93
115
93
114
20
95
33
82
48
45
62
87
89
62
68
101
149
170
106
103
227
186
172
70
109
178
146
121
92
87
7
72
121
116
120
105
59
18
0
43
52
29
57
100
125
85
100
140
94
93
137
137
137
91
148
98
94
85
104
76
87
66
102
103
172
140
132
93
77
100
65
63
81
119
132
86
129
135
127
131
82
86
76
122
122
131
147
127
101
85
82
80
106
129
131
206
164
91
86
146
122
76
77
30
91
98
84
151
128
140
90
119
88
142
196
106
203
222
143
114
164
250
224
211
121
114
210
255
164
111
152
144
218
154
195
158
174
158
106
136
105
190
178
178
153
202
146
182
115
157
184
197
162
138
162
193
157
157
141
184
185
168
184
129
186
128
106
103
107
99
83
96
99
128
71
146
60
34
78
148
98
95
92
91
146
137
138
71
89
156
163
213
183
161
135
118
151
80
161
215
179
119
150
121
119
160
162
99
147
106
102
104
112
114
109
114
113
163
153
142
99
147
133
130
138
78
85
102
90
90
97
100
145
96
98
166
35
103
125
54
96
49
58
100
39
122
66
29
0
88
0
105
98
159
84
131
152
98
62
42
31
50
7
9
149
140
161
200
214
163
190
146
84
22
6
73
50
160
85
93
65
106
122
70
22
61
0
63
85
23
136
59
139
140
36
77
65
33
73
92
96
99
32
75
87
73
53
23
10
0
174
95
95
90
96
168
92
132
98
87
139
40
7
91
154
119
108
75
70
94
40
110
114
46
73
109
88
9
37
14
9
0
56
84
49
82
90
93
140
84
88
89
97
97
92
71
76
69
100
65
69
94
147
165
139
77
89
81
99
69
68
91
80
129
139
130
131
135
83
86
80
76
128
81
78
92
81
102
72
105
117
114
142
131
140
115
101
101
90
147
79
94
76
79
85
48
86
72
86
86
173
118
142
116
111
144
130
109
200
225
160
168
183
157
133
210
244
182
194
184
150
176
134
142
153
145
149
94
135
132
142
217
166
188
192
123
136
129
161
198
187
175
153
115
196
161
123
209
173
191
180
164
220
151
137
124
112
109
90
142
158
149
148
147
139
76
123
141
145
94
95
90
144
147
83
138
74
86
149
104
178
203
162
153
143
158
121
153
184
168
160
175
123
173
140
112
99
101
105
101
101
106
105
161
166
165
164
155
109
111
140
156
222
71
70
128
90
83
83
87
90
140
153
118
124
103
95
103
63
16
38
103
0
0
0
0
2
41
46
67
127
156
112
174
145
77
22
16
59
47
35
0
89
133
188
181
229
190
202
150
143
99
72
36
124
110
165
120
51
98
77
101
95
71
159
0
112
146
75
143
73
113
113
148
77
82
79
41
61
136
126
23
40
108
81
60
0
0
88
51
86
52
159
161
146
79
82
40
23
9
40
37
60
114
141
121
94
62
92
80
122
81
14
98
39
60
29
19
20
21
33
70
17
33
83
133
140
136
140
96
93
89
94
96
73
84
81
70
154
130
85
139
155
137
74
81
86
98
78
84
95
140
85
142
134
74
86
86
144
131
79
80
143
80
85
84
101
120
175
200
173
203
133
124
112
161
106
98
101
90
100
87
27
16
117
137
67
90
82
122
145
136
109
183
200
174
157
192
206
145
173
133
117
148
178
183
165
153
182
163
168
165
153
186
144
125
105
123
97
174
198
172
174
150
119
147
158
153
187
170
182
169
163
189
164
130
224
175
197
171
146
190
203
192
141
127
124
142
149
108
94
157
155
143
60
143
86
147
152
93
92
144
147
80
138
132
135
86
89
173
160
199
184
149
167
151
184
90
163
171
145
153
167
131
105
160
139
149
96
98
101
152
159
164
164
164
157
105
93
140
139
196
120
70
121
76
71
72
74
76
78
152
123
86
152
160
104
11
0
0
78
44
0
0
0
33
0
186
194
108
84
184
165
26
82
72
13
40
115
106
0
187
135
126
200
229
152
255
164
183
92
86
132
128
129
155
134
85
136
103
111
149
39
159
32
20
49
52
51
75
153
99
157
119
87
0
66
71
101
128
73
114
141
63
64
64
17
76
64
36
144
49
49
120
135
60
57
110
188
21
32
48
80
111
105
49
92
87
122
75
62
27
33
18
76
55
43
80
33
69
24
41
46
52
81
85
89
133
116
122
142
92
137
96
96
65
130
111
141
77
128
134
135
78
71
85
92
94
154
138
146
151
135
87
75
72
80
138
146
96
81
153
143
74
65
136
167
117
122
123
116
117
169
151
98
89
115
86
129
76
91
23
86
116
158
159
121
88
126
141
196
173
179
130
204
190
112
139
222
191
188
134
102
187
211
134
158
158
160
167
212
152
135
196
164
157
117
122
200
224
170
135
123
198
108
157
142
176
189
137
150
108
179
149
183
181
206
180
182
156
177
121
147
185
181
136
121
166
123
163
159
151
156
93
136
162
145
80
91
93
94
95
85
144
147
134
127
150
142
149
124
162
118
125
171
151
164
142
139
157
124
113
109
110
162
99
141
100
102
148
154
151
154
155
103
152
156
97
143
171
135
141
133
125
117
55
60
64
59
62
120
122
130
64
28
42
52
38
68
90
123
120
33
70
29
82
26
155
146
144
140
73
111
99
57
38
61
39
97
236
181
185
207
218
179
183
192
243
189
115
141
188
245
228
184
168
158
160
212
187
109
112
92
35
196
90
121
13
69
158
97
64
99
123
26
60
43
0
108
145
0
85
76
65
13
3
0
0
7
26
123
18
113
179
87
90
161
109
0
15
30
22
90
61
55
99
41
97
60
90
15
60
19
130
48
30
15
35
18
60
77
34
92
54
127
90
101
151
150
148
152
101
83
107
147
126
130
86
128
127
124
130
83
73
84
85
93
144
140
98
86
77
82
77
69
130
76
93
95
89
106
149
81
65
129
182
163
163
177
150
155
167
145
144
137
150
155
137
87
72
62
98
111
147
132
123
96
127
130
210
173
174
179
147
153
121
216
210
138
199
124
88
153
167
148
165
224
112
164
169
137
202
179
179
103
109
113
140
168
142
148
222
180
169
155
131
161
139
181
200
163
177
152
123
200
214
158
202
152
144
111
160
174
169
119
124
175
143
177
185
174
155
94
93
116
154
136
89
92
147
94
90
94
150
84
129
128
90
86
98
106
111
167
162
121
157
140
136
119
122
126
87
109
113
157
155
163
154
147
153
149
151
151
151
97
139
84
124
146
154
141
132
129
121
110
62
64
57
111
128
77
126
54
9
0
46
111
88
26
54
100
31
11
59
0
68
31
68
28
37
29
58
129
47
85
88
47
61
206
201
206
197
255
236
247
216
146
131
128
95
142
189
210
200
191
253
251
199
142
175
145
61
53
112
45
105
133
137
112
68
53
134
109
44
5
78
26
104
133
30
0
10
3
30
6
0
73
67
22
84
116
128
182
115
111
69
72
33
5
93
22
90
28
11
129
76
48
112
91
0
58
54
63
48
111
40
92
52
65
2
4
63
80
108
123
153
148
141
125
128
132
155
69
153
148
151
138
136
80
68
76
89
80
83
129
84
92
79
91
81
86
84
83
66
123
127
88
88
96
153
155
143
75
77
174
154
168
177
150
146
159
140
138
133
135
155
135
109
85
77
89
58
88
124
165
101
117
170
207
133
190
202
157
157
110
156
142
159
185
144
101
182
142
141
163
217
103
203
222
188
184
171
137
180
99
113
151
166
163
175
244
91
104
168
71
108
141
179
197
178
186
146
143
221
213
163
142
115
134
180
198
165
171
167
125
124
139
184
195
183
177
103
108
160
174
90
139
144
146
94
93
146
150
137
131
93
106
74
74
98
108
166
137
110
129
142
141
109
111
92
104
110
109
120
114
166
145
151
153
149
149
149
148
95
132
73
126
113
136
139
136
132
122
119
68
114
108
58
59
139
126
66
22
8
75
1
47
34
56
112
84
34
52
17
0
36
123
27
72
0
104
137
151
97
21
77
113
199
255
229
204
195
255
245
236
145
105
149
123
224
255
215
223
255
255
204
191
194
192
171
0
46
43
110
64
138
115
121
77
0
0
0
23
16
10
123
148
15
0
0
0
0
72
83
91
82
144
76
71
159
131
187
140
59
18
83
71
56
97
69
78
128
78
73
71
84
0
131
24
80
81
26
121
134
86
88
26
12
9
5
52
86
96
97
120
139
140
148
140
131
126
130
129
146
163
140
144
88
71
80
92
85
136
122
77
102
64
75
85
99
90
86
63
64
82
85
78
99
145
156
101
86
77
158
142
174
176
159
142
153
136
134
126
129
137
79
125
65
106
73
111
89
100
154
103
104
106
143
144
204
222
172
194
121
150
201
190
179
186
122
229
140
147
185
171
160
218
189
181
182
178
130
181
107
94
151
156
161
150
229
120
105
157
93
156
145
190
205
150
155
150
152
153
205
136
126
145
146
212
165
156
131
175
127
170
172
185
185
176
206
162
122
167
184
74
138
144
146
93
147
147
149
84
81
131
145
125
60
82
112
129
157
127
177
169
178
116
86
117
122
109
107
142
118
161
137
157
156
149
97
97
146
94
105
96
86
140
138
142
92
135
120
127
123
111
107
110
61
112
68
78
12
0
117
44
140
90
123
74
96
96
95
62
7
103
91
0
51
43
26
26
86
71
56
124
90
209
255
210
225
188
208
221
236
150
146
172
217
253
249
241
255
255
254
184
218
211
171
146
0
62
113
32
91
169
86
78
114
0
70
22
0
49
18
4
144
175
114
126
108
65
58
106
50
33
75
134
146
104
177
80
55
54
0
83
124
159
162
133
128
115
113
94
124
104
49
111
31
111
14
25
70
80
104
104
34
95
60
7
14
28
42
52
75
136
83
135
137
85
156
126
73
115
125
161
82
90
127
129
143
138
80
128
126
131
150
128
90
103
101
68
80
67
67
143
130
92
150
164
75
105
81
143
76
95
103
113
140
149
132
134
130
130
128
88
59
72
122
141
6
67
89
169
113
86
172
129
143
227
145
150
182
128
127
197
146
190
169
125
172
125
144
175
197
225
135
179
153
176
188
123
106
118
83
109
227
207
141
187
162
190
169
156
118
178
126
127
183
180
172
166
181
197
175
130
153
125
188
126
157
178
175
130
132
167
131
190
166
189
176
141
132
185
173
134
147
145
155
90
151
143
95
88
65
126
110
119
98
106
112
156
156
169
164
157
147
150
94
109
118
86
145
149
161
168
139
156
150
97
99
92
95
95
111
79
79
81
140
89
86
79
135
126
115
107
108
107
64
68
123
68
44
16
76
119
58
15
8
64
32
2
0
6
0
15
63
6
94
61
63
64
159
56
82
158
147
190
208
221
159
199
211
197
138
127
187
255
245
140
223
255
255
255
212
214
223
168
85
69
38
139
105
207
189
140
184
107
0
36
0
56
88
51
73
126
95
108
135
157
162
175
95
128
0
77
119
73
47
165
56
119
31
19
182
108
106
68
124
119
140
169
74
109
43
45
64
8
77
33
34
87
63
159
80
98
46
61
60
61
5
26
26
81
77
76
78
90
97
87
146
84
90
71
113
126
87
101
148
136
136
132
133
137
130
136
129
91
92
110
94
124
73
65
139
137
84
161
152
108
127
88
69
107
91
91
82
72
125
137
133
116
110
110
80
69
120
158
91
139
146
123
106
107
92
97
79
114
193
214
95
106
210
148
133
222
224
210
202
151
166
138
153
124
151
184
109
139
129
111
135
145
105
77
136
133
220
234
163
214
216
183
147
135
94
164
179
142
255
184
172
241
169
173
164
174
204
110
129
190
177
181
165
117
167
171
106
193
141
187
197
136
172
233
255
236
176
255
162
120
120
90
96
93
88
143
112
63
112
131
80
92
150
105
158
115
103
111
104
97
90
136
157
154
138
161
163
143
142
95
93
96
94
142
97
85
142
87
140
88
83
128
125
122
111
108
112
65
120
124
124
123
112
56
50
83
43
0
45
105
90
0
48
28
35
56
0
70
117
113
164
83
149
142
199
159
209
230
232
194
183
206
154
147
149
168
142
221
253
255
203
188
175
182
208
124
91
36
81
175
75
40
64
0
46
74
20
69
0
76
5
55
120
131
55
110
17
60
126
62
61
128
122
131
81
141
104
95
122
123
145
26
12
163
138
121
52
108
123
106
149
96
95
49
56
77
54
45
14
32
60
0
161
152
92
42
45
57
7
18
62
64
22
44
51
74
88
89
91
144
86
91
88
84
69
59
72
82
143
144
132
130
133
139
137
133
85
81
103
105
126
130
72
137
139
82
155
161
97
85
86
140
115
100
94
136
82
58
73
75
67
64
64
71
72
77
152
106
106
160
101
96
99
107
115
91
100
141
229
111
136
224
169
178
186
194
152
232
135
162
144
151
114
112
164
95
159
129
61
101
93
82
79
188
139
187
217
231
196
219
218
77
129
48
92
178
97
234
219
157
178
213
138
180
175
178
196
214
188
185
189
167
171
160
157
105
200
151
157
211
131
227
250
255
217
255
255
208
182
159
107
103
101
92
83
115
74
62
84
71
84
95
101
110
132
105
112
107
104
142
207
167
143
146
158
161
146
143
148
148
97
85
125
147
140
143
140
140
140
137
131
130
125
116
112
112
115
118
123
124
65
133
127
48
74
100
86
0
155
41
12
8
62
0
54
17
23
88
83
139
145
196
240
220
193
209
181
210
204
231
160
163
191
213
200
217
255
213
208
205
179
210
215
144
65
62
27
158
98
133
106
0
0
74
105
210
43
72
211
12
69
43
105
141
86
0
116
24
74
112
52
102
112
137
45
74
26
34
52
74
11
56
109
139
101
95
81
132
49
31
89
92
46
43
0
66
13
72
62
74
111
168
130
57
85
46
59
88
89
9
28
18
23
31
58
75
78
137
144
154
95
92
147
79
127
68
70
143
145
132
128
131
141
143
85
83
72
89
159
136
136
137
135
87
83
143
167
141
95
90
98
99
97
84
81
87
58
46
104
122
115
120
122
125
82
103
162
158
103
92
114
93
88
114
82
92
149
158
137
199
146
175
239
164
190
143
184
113
159
97
151
147
155
122
134
124
86
67
85
63
56
80
195
217
187
144
202
163
208
176
101
111
97
61
110
153
235
218
182
164
252
179
169
188
124
199
188
187
172
114
121
167
109
98
168
191
123
175
186
158
238
255
255
255
255
206
211
221
200
155
167
90
106
102
79
121
69
86
116
75
94
89
154
129
100
152
108
166
144
240
155
138
146
149
169
150
144
149
96
95
76
90
140
142
141
141
89
87
85
137
136
127
121
118
111
114
117
121
123
74
55
156
154
130
88
85
52
106
3
7
83
16
86
0
28
106
93
114
97
197
255
247
209
224
190
183
192
228
197
194
224
253
217
249
225
206
151
165
151
241
255
192
71
15
0
57
63
66
106
138
89
66
79
72
141
218
157
89
173
90
58
49
155
98
26
157
1
149
156
33
0
27
116
95
52
35
33
32
14
59
91
41
66
126
90
68
144
90
138
0
11
9
80
35
83
49
88
59
23
41
107
170
66
76
56
81
102
99
1
16
5
25
23
31
56
121
82
81
146
88
155
146
140
146
85
145
138
139
135
132
134
140
95
92
90
72
78
153
145
90
91
85
87
88
85
158
146
89
149
142
138
93
132
133
141
121
31
79
117
103
117
124
131
134
170
154
153
143
108
98
81
85
117
86
102
172
139
128
178
135
187
215
117
227
198
226
156
225
120
151
148
88
152
149
93
72
74
55
56
121
143
198
197
155
162
217
239
204
93
180
30
64
81
55
125
146
193
233
190
255
172
178
158
140
230
121
138
151
137
123
163
169
154
127
175
136
171
193
244
198
219
255
255
225
223
211
225
201
196
200
155
166
111
89
110
73
78
115
68
139
86
95
117
160
153
156
164
145
254
132
146
135
142
191
98
91
95
95
92
79
69
139
143
140
141
88
87
86
88
88
78
125
123
110
115
118
122
123
120
125
67
74
185
201
182
166
111
23
29
91
77
85
39
5
56
93
140
130
236
255
213
198
229
165
217
180
249
202
213
252
219
217
255
216
222
183
210
243
238
135
131
26
27
24
78
102
114
19
107
112
134
160
119
164
71
185
172
57
16
91
88
59
21
119
157
112
145
51
11
70
10
72
80
29
109
108
138
43
41
79
49
111
75
19
38
135
67
84
13
45
22
133
164
138
112
104
85
51
67
131
158
77
55
78
107
77
45
19
10
15
5
11
31
43
45
66
117
69
77
148
152
146
85
87
144
140
89
143
142
142
143
92
95
95
82
128
146
151
97
88
90
90
146
91
145
150
135
147
139
138
89
133
129
133
126
97
72
105
45
111
124
141
138
110
97
150
95
118
105
99
91
95
80
128
155
133
158
156
179
201
112
107
250
201
218
147
214
174
141
163
111
116
176
80
71
79
60
70
154
164
195
191
224
205
154
176
163
123
185
0
44
53
56
66
47
139
203
183
232
177
166
113
194
196
121
135
113
142
168
120
175
166
182
166
183
162
182
255
255
255
228
222
226
224
223
255
255
254
186
222
183
101
109
79
139
124
126
72
127
137
137
148
178
166
153
149
146
236
128
154
134
134
160
93
86
92
94
91
141
125
146
143
139
143
90
86
85
138
89
82
128
123
111
118
122
125
123
116
139
131
128
88
177
146
216
132
55
157
76
154
7
69
33
62
64
169
222
242
188
209
180
209
166
156
132
176
181
255
255
210
229
236
243
245
243
243
228
166
128
95
44
71
99
70
172
43
52
0
44
91
116
185
137
211
37
77
18
52
46
1
65
52
128
169
156
122
156
163
95
111
64
112
26
106
117
81
64
0
140
52
100
52
51
86
161
85
33
0
21
86
38
131
90
116
160
121
79
134
151
175
118
137
81
124
121
32
44
17
91
14
11
62
75
33
83
112
112
73
118
114
133
79
147
143
149
97
152
98
148
149
89
94
148
144
130
142
152
101
83
95
92
99
100
84
145
136
88
95
138
80
128
116
65
120
120
27
43
49
112
119
152
147
137
153
147
161
162
112
107
90
99
112
158
114
143
246
170
226
157
105
143
186
139
158
79
127
153
133
154
123
143
133
60
41
74
140
118
168
179
193
189
255
202
199
191
93
184
126
21
51
42
48
35
51
127
188
181
169
203
120
121
185
134
160
179
148
171
160
186
123
122
183
164
174
220
227
255
255
255
255
255
229
223
225
219
255
245
253
249
183
147
211
70
105
74
88
81
67
129
120
122
183
170
154
82
146
207
141
154
144
124
170
89
82
89
94
92
154
140
154
142
140
143
142
139
84
134
88
85
129
122
60
120
125
127
124
84
77
74
86
138
144
133
132
134
117
240
133
146
162
63
95
131
113
202
251
133
142
178
187
220
167
119
125
180
199
189
207
255
206
229
255
204
245
175
171
126
100
108
115
141
166
109
128
25
123
1
60
71
179
155
120
152
36
33
78
55
24
58
22
50
65
56
132
179
109
82
114
82
80
100
60
121
125
68
57
80
138
148
113
120
81
30
84
74
168
221
150
67
60
124
134
108
61
43
71
63
89
125
157
113
173
146
175
206
132
58
119
135
70
39
59
65
43
68
3
89
91
97
132
134
127
134
123
127
134
132
128
98
92
91
143
139
141
145
140
84
88
83
136
84
84
131
130
138
79
83
132
80
77
68
64
56
48
46
35
117
122
122
127
139
146
169
166
172
148
151
110
115
146
76
191
156
149
216
214
198
183
141
158
129
143
129
152
122
139
148
101
133
128
118
72
120
75
64
134
176
92
214
181
223
138
169
143
101
192
51
68
76
12
5
36
64
59
36
125
197
186
194
146
158
126
160
161
111
202
172
185
188
177
149
104
180
179
190
253
255
255
218
255
255
255
228
229
228
223
255
255
214
209
178
166
178
157
151
138
60
85
135
88
164
203
100
147
185
118
143
153
82
85
91
94
85
93
81
72
130
129
138
154
143
136
136
131
136
133
82
82
128
124
119
121
122
73
75
75
74
72
126
74
84
134
130
89
138
145
158
176
160
172
124
147
204
142
143
140
93
102
148
156
82
121
131
124
152
138
255
226
215
167
184
164
146
35
56
122
161
184
255
225
224
93
57
52
59
59
13
0
2
57
134
56
74
92
60
125
56
37
27
5
7
56
57
26
35
54
90
6
16
59
161
60
73
33
112
90
82
149
102
49
97
116
111
95
137
39
56
32
60
58
97
150
114
141
41
97
65
110
114
158
128
107
80
160
112
166
129
85
118
69
55
16
17
49
1
0
16
51
82
108
109
134
120
116
115
130
138
136
138
88
148
146
145
141
87
87
89
131
133
83
129
135
130
83
81
117
125
71
67
59
55
53
40
45
49
124
72
81
119
130
140
114
112
119
93
155
154
123
116
143
194
204
137
170
249
174
134
169
164
119
146
139
215
157
123
170
154
147
121
101
99
117
65
74
141
125
145
187
206
212
198
150
105
74
160
45
62
52
64
21
0
0
32
71
35
162
122
162
88
157
111
201
138
167
205
183
198
203
206
109
142
206
163
181
212
255
255
255
221
222
225
229
229
226
225
227
224
218
218
206
197
201
179
202
255
139
132
172
84
156
166
127
150
157
142
136
150
86
100
75
123
76
98
88
79
132
69
137
148
141
135
137
134
137
133
81
81
76
73
124
73
74
75
76
73
73
73
127
126
80
80
77
134
129
138
137
152
141
151
140
178
131
121
100
103
112
106
155
102
93
99
111
143
122
167
205
209
225
158
153
108
96
116
122
128
229
229
219
205
183
88
50
87
0
86
92
112
100
35
10
45
75
78
99
99
114
70
41
62
57
58
34
0
53
3
40
0
62
75
54
53
54
72
49
126
44
106
129
50
65
55
90
120
57
0
54
0
98
47
61
73
69
81
52
115
117
137
114
104
179
62
46
98
102
125
119
145
135
146
87
35
0
70
45
6
0
59
44
63
15
82
98
113
124
123
72
128
132
82
86
93
90
83
82
84
130
128
130
130
122
130
127
77
81
65
122
119
59
100
43
45
36
36
50
60
69
141
129
80
89
103
110
106
89
153
146
182
166
195
161
228
158
179
236
174
150
215
245
189
185
132
154
181
180
185
193
89
72
81
123
119
80
94
141
147
202
166
233
224
149
157
94
85
130
33
51
59
47
7
3
50
74
73
73
145
125
148
144
98
126
200
156
215
185
117
200
177
179
132
193
150
205
177
220
221
255
255
255
219
255
225
225
225
226
228
224
255
217
255
255
255
254
207
214
255
215
201
226
226
155
224
235
203
240
221
192
139
143
132
168
150
106
97
84
126
72
90
141
142
136
138
135
85
80
81
80
77
74
76
76
76
76
76
72
73
128
128
127
129
78
79
84
82
90
131
140
137
133
116
151
94
103
138
99
117
148
191
139
143
157
176
161
130
152
196
229
255
197
210
193
223
169
162
229
229
224
208
184
140
66
31
0
33
110
132
130
134
150
172
97
75
83
47
88
49
165
98
53
0
97
54
99
45
3
0
0
24
166
31
60
57
157
96
101
138
147
69
98
101
70
93
147
101
31
23
0
96
102
144
86
103
118
108
146
71
102
97
73
167
41
48
98
72
125
103
121
112
82
89
100
73
58
31
21
1
6
0
57
53
0
74
90
104
110
113
82
82
79
72
75
79
88
81
125
119
130
132
126
123
67
70
67
77
77
123
120
62
51
47
35
29
31
44
49
67
134
145
145
92
143
110
95
95
76
140
189
145
197
146
222
185
225
176
174
209
192
254
121
209
202
155
201
165
152
206
168
167
151
186
110
101
99
93
158
255
186
230
216
147
163
119
117
179
33
84
65
57
5
19
55
0
63
75
120
156
109
98
147
221
213
184
129
116
106
179
165
117
170
188
216
222
237
214
224
228
255
255
255
255
255
220
224
224
225
228
255
255
255
255
218
226
255
255
255
222
218
255
219
255
255
214
226
255
255
255
199
190
211
214
156
187
171
85
116
83
96
86
94
136
141
137
138
133
81
80
78
76
78
77
77
76
75
71
73
129
128
75
77
78
77
83
83
76
71
127
141
135
66
134
76
92
79
96
143
159
128
114
127
146
105
131
195
208
246
203
228
255
211
235
255
218
218
209
208
217
189
152
121
45
24
35
2
5
26
26
53
132
95
133
79
70
0
79
0
72
48
17
0
124
115
67
0
18
0
8
36
90
131
51
88
60
109
120
148
137
19
73
123
92
27
114
124
45
52
28
125
122
118
120
135
122
112
96
61
115
96
96
162
107
26
128
34
84
99
91
90
73
108
60
40
105
106
45
0
0
0
1
54
8
10
59
58
87
100
115
74
76
81
74
75
76
73
72
65
78
129
123
73
76
71
54
55
112
111
60
61
53
49
31
23
34
45
51
68
124
147
151
90
135
105
95
106
66
134
174
143
165
156
163
150
133
192
132
210
136
191
183
223
184
136
167
143
178
171
208
185
168
181
161
104
75
124
181
243
202
204
196
168
149
125
162
137
60
75
23
64
60
8
2
0
58
0
96
140
103
145
121
158
114
186
150
124
200
240
179
149
208
172
218
166
241
214
225
228
222
218
255
255
255
255
255
222
222
229
228
229
255
227
223
226
255
255
255
255
225
225
226
255
255
255
255
226
228
219
217
208
255
218
201
176
168
123
111
92
149
80
87
138
143
137
86
132
80
80
78
78
77
77
76
75
75
73
76
129
128
126
79
128
126
77
78
77
71
120
135
136
123
119
125
73
47
70
118
129
100
106
128
86
81
141
157
134
238
248
255
221
255
255
255
128
117
153
161
166
170
119
109
10
0
0
26
155
0
59
69
162
91
52
90
106
55
58
25
0
43
78
0
50
127
68
122
56
45
23
91
50
81
46
111
102
102
128
0
28
72
86
0
73
110
141
108
37
67
116
26
95
145
116
114
115
118
75
76
32
33
95
132
165
51
0
83
127
86
134
129
98
71
110
91
137
89
41
106
26
67
12
25
1
0
47
42
54
8
12
79
34
59
70
70
69
122
71
70
107
100
56
58
44
37
47
97
105
57
61
117
54
48
100
86
86
115
112
120
143
124
124
134
85
131
97
93
132
149
186
164
169
186
135
186
152
115
183
145
188
173
255
203
143
123
109
174
203
241
178
149
181
176
163
161
176
184
255
244
221
180
137
153
155
146
40
96
0
0
18
63
63
24
67
39
72
36
99
70
61
104
147
156
160
188
108
147
192
149
184
185
224
180
217
222
229
210
222
255
255
255
255
255
255
217
255
218
223
255
225
225
221
225
222
255
229
228
255
255
255
255
255
255
223
228
227
255
255
228
228
226
255
255
255
219
212
198
245
154
179
155
82
141
93
82
86
80
79
79
79
79
78
78
78
78
129
127
130
130
128
73
70
127
136
131
79
68
68
122
133
123
141
112
132
71
61
117
58
105
111
93
136
127
134
129
132
170
165
255
255
255
249
193
167
118
86
195
178
126
125
88
75
52
0
25
120
76
242
90
96
92
100
80
93
146
10
25
49
0
36
23
89
30
39
42
26
0
26
8
74
66
156
164
91
27
66
122
0
30
108
7
0
52
109
120
106
113
38
79
25
110
138
197
255
129
159
46
102
157
159
108
126
179
47
78
109
121
109
152
125
78
45
55
102
125
49
100
94
19
87
42
34
0
0
0
41
62
0
6
0
1
7
49
50
66
65
63
115
111
115
112
52
67
57
100
101
49
52
45
84
42
37
104
93
95
110
133
130
149
125
123
141
117
127
122
98
94
193
166
192
171
108
131
143
181
194
131
158
164
217
246
152
200
201
129
192
218
212
180
202
198
195
146
241
197
254
255
241
240
202
149
203
144
125
24
99
58
0
2
59
87
16
65
49
77
61
72
68
136
138
200
199
175
137
159
150
153
162
253
181
164
193
205
255
229
166
222
228
222
227
255
255
255
208
255
207
207
255
255
255
255
224
255
255
255
255
227
228
255
255
255
228
228
255
228
228
227
227
227
226
224
226
223
222
218
205
253
232
221
152
93
122
141
85
89
82
80
81
83
81
76
78
79
79
76
76
79
78
75
71
127
132
130
131
133
117
124
133
130
125
129
124
125
76
51
123
109
111
108
107
111
123
124
66
133
147
155
222
255
255
203
209
187
150
155
157
152
111
78
42
42
68
115
146
53
82
99
70
85
66
128
42
145
98
56
5
17
33
76
45
121
78
98
58
54
0
132
21
47
94
30
34
63
0
41
113
76
133
107
0
0
0
118
0
63
110
72
51
11
0
53
179
96
108
106
66
120
97
142
64
144
148
116
45
199
39
80
53
184
77
78
11
97
113
106
129
66
96
82
26
7
21
33
31
31
50
65
4
0
0
0
37
88
97
102
56
131
120
62
113
114
62
63
70
72
62
52
101
47
58
104
72
33
92
114
116
118
146
87
84
144
143
109
133
153
146
169
198
102
165
148
160
115
152
191
148
207
211
229
226
220
245
146
214
181
224
195
220
221
204
189
151
251
255
255
254
255
251
221
184
143
141
125
34
129
0
15
30
99
73
12
16
0
37
31
65
72
119
172
207
151
147
75
193
211
188
251
204
213
183
183
247
196
213
169
220
255
225
229
224
219
211
255
216
207
215
224
228
222
255
255
255
255
255
255
227
228
228
228
255
228
228
228
228
228
228
228
226
225
225
226
223
220
217
208
248
244
255
249
190
134
124
144
127
86
83
81
83
82
75
77
77
77
76
76
79
78
78
73
75
129
131
131
132
128
126
124
115
119
123
122
123
72
107
113
101
101
104
119
103
47
55
123
132
134
112
181
196
182
200
213
176
132
161
152
138
152
136
25
0
11
0
26
6
92
107
120
82
35
165
126
65
75
29
0
7
53
42
120
50
120
97
56
50
0
115
67
102
0
70
26
66
2
0
23
110
114
138
47
82
0
166
64
100
137
131
139
53
16
40
75
132
118
149
143
150
135
98
81
118
87
95
31
129
32
63
70
91
95
44
60
83
109
87
112
88
107
30
31
67
86
120
73
42
18
13
10
10
11
16
57
57
67
78
36
109
71
69
122
113
60
55
107
104
33
90
88
41
49
42
50
33
27
51
125
75
88
84
78
149
130
124
122
141
168
131
138
95
161
167
160
145
216
180
108
132
166
162
251
213
184
136
151
204
222
190
145
184
207
193
239
255
255
215
241
255
255
255
200
135
133
119
129
118
9
11
41
73
55
76
22
0
0
9
103
100
155
223
222
118
130
169
169
157
189
206
240
228
209
196
219
226
195
195
229
255
255
227
224
222
255
255
200
215
222
205
229
229
255
255
255
255
255
226
255
255
229
229
229
229
229
229
229
229
228
228
226
223
222
223
223
218
255
255
201
247
204
255
205
119
118
135
67
86
84
82
83
82
76
75
74
74
127
128
78
80
78
75
126
126
131
131
129
125
127
121
121
118
120
121
118
61
123
52
92
93
112
94
51
57
114
124
74
126
136
144
161
224
172
179
150
123
141
144
125
130
92
58
0
3
28
105
82
153
65
89
130
88
98
142
123
56
50
45
34
24
28
94
80
117
105
62
85
2
0
85
159
35
88
28
1
13
63
80
63
119
172
97
197
2
51
115
58
93
103
167
69
0
102
26
96
68
88
88
88
115
85
64
82
35
44
0
148
19
115
44
13
100
68
73
179
47
46
119
23
40
16
26
94
17
103
90
37
14
4
62
24
65
19
54
55
58
4
59
69
47
102
115
58
111
102
87
82
71
76
71
72
24
17
85
99
44
40
78
82
78
73
72
129
115
137
121
52
79
108
113
80
131
165
203
128
130
230
107
155
122
170
244
128
143
226
251
159
170
208
135
191
217
221
242
255
255
255
250
255
255
255
228
186
170
120
68
71
147
61
51
41
5
30
15
0
0
71
55
115
151
238
182
151
162
193
107
200
226
185
182
194
224
247
213
173
232
255
255
255
255
222
220
255
255
219
186
255
221
193
255
255
255
255
255
228
227
227
227
229
229
229
229
229
229
229
229
229
229
255
226
223
255
223
223
218
255
255
255
251
183
195
167
207
188
94
72
81
133
134
134
80
78
127
74
74
76
126
128
130
129
128
126
126
79
130
128
125
128
123
76
70
68
66
58
104
97
45
50
38
32
34
118
129
125
122
73
127
128
152
160
213
155
145
103
133
125
102
87
77
64
246
118
31
73
153
137
78
84
85
143
153
128
102
108
129
129
65
7
12
57
69
78
83
97
25
19
63
55
0
114
110
94
138
47
30
30
72
41
89
158
190
107
108
73
45
42
98
110
166
66
116
47
40
44
84
48
29
61
115
68
58
38
153
55
57
57
76
32
32
50
76
41
98
25
64
54
53
59
76
52
59
132
5
64
44
112
21
15
52
68
83
73
29
78
69
25
78
65
61
58
60
69
84
104
51
45
36
14
60
56
62
13
28
33
43
63
45
53
77
73
120
136
145
125
134
96
115
134
110
139
153
178
151
255
214
160
182
145
153
132
175
190
170
199
231
242
206
246
210
233
237
199
255
255
255
255
255
234
255
250
228
224
126
73
99
99
78
0
12
21
5
6
0
0
0
19
50
132
168
179
164
136
200
185
197
174
152
223
174
254
210
255
119
226
244
255
255
255
255
223
223
255
255
216
255
255
219
227
255
255
255
255
228
226
226
226
226
229
229
229
229
229
255
255
229
229
229
255
255
225
255
225
223
220
255
255
206
212
238
203
198
172
204
172
168
135
136
81
126
124
74
124
123
70
70
71
123
122
122
121
127
125
124
125
124
68
66
66
66
62
60
61
104
104
98
42
42
87
42
44
104
101
52
69
57
60
63
111
58
82
201
189
130
46
40
14
42
39
14
110
0
142
67
0
40
0
55
94
56
96
64
66
125
60
121
111
37
51
112
78
92
61
115
78
126
131
84
34
13
90
54
0
17
27
52
82
71
61
124
236
128
111
87
64
5
42
94
130
67
106
21
28
3
40
83
0
85
55
0
142
87
76
56
123
49
46
14
0
0
26
56
150
95
99
43
57
29
24
90
130
128
46
84
55
70
54
70
103
50
35
10
15
17
81
49
44
31
76
28
11
2
72
82
32
76
1
1
0
0
6
11
9
43
105
58
65
59
74
67
56
134
125
133
72
146
59
103
146
63
202
133
155
178
200
129
160
152
94
164
183
182
186
198
164
170
179
201
222
244
246
251
255
210
209
214
223
206
255
255
238
245
104
71
82
126
24
7
0
0
0
54
53
46
0
30
80
93
155
114
126
151
178
198
199
243
172
137
217
218
204
225
228
255
255
255
255
255
255
223
255
255
255
223
255
255
255
224
222
255
255
255
226
226
225
255
255
229
229
229
229
229
255
255
255
229
229
229
255
255
255
255
255
255
255
255
207
209
239
199
181
242
160
190
186
153
150
134
122
123
121
121
120
118
116
69
119
117
117
116
125
123
119
118
119
111
116
64
67
57
110
115
98
98
101
84
71
70
43
30
45
52
54
64
50
109
120
130
136
143
127
164
125
122
93
63
36
56
52
109
45
56
0
58
76
27
36
22
19
35
116
105
184
83
103
67
56
155
128
152
132
25
70
61
97
106
129
72
48
0
10
56
87
22
32
71
132
41
86
174
108
98
52
43
22
110
175
131
140
73
103
0
14
105
96
0
50
19
19
120
0
120
84
142
36
37
0
87
68
32
17
1
114
12
71
39
79
74
26
146
151
30
160
64
107
52
107
108
47
50
13
30
37
107
109
86
56
30
85
69
19
69
64
76
76
54
50
53
1
57
64
25
53
58
68
131
57
62
120
62
84
116
118
142
75
193
58
141
107
154
138
217
163
112
175
81
232
140
146
112
157
192
178
194
168
241
184
214
208
255
255
255
255
209
214
208
229
255
255
240
248
213
161
53
107
102
28
2
0
52
44
47
60
31
100
87
96
171
204
132
159
175
170
193
169
183
170
218
239
223
211
255
255
255
255
255
255
225
221
255
255
208
255
255
255
255
228
218
255
255
255
255
226
225
255
255
255
229
229
229
229
255
255
255
229
229
229
255
255
255
255
255
255
255
255
215
212
202
219
202
208
182
208
133
117
110
134
120
72
117
118
118
115
112
119
117
114
114
113
123
122
114
112
115
72
69
61
107
109
112
119
92
89
110
108
43
88
50
56
53
44
44
52
106
117
64
67
75
133
86
79
130
100
72
58
38
95
39
116
126
136
41
13
0
6
24
33
66
46
53
121
87
107
95
87
61
113
151
162
62
0
0
26
78
90
81
88
84
115
0
70
19
0
91
83
84
72
0
135
133
65
117
65
65
127
144
80
103
90
61
30
61
60
108
66
77
0
71
45
63
80
83
156
65
104
70
38
68
41
82
67
106
105
118
31
116
106
103
126
135
7
96
108
175
88
50
84
100
39
75
42
51
76
103
108
101
92
95
27
76
66
69
67
63
0
0
0
0
57
62
67
101
74
118
124
79
68
81
73
71
74
126
114
56
126
88
124
171
81
250
151
207
104
220
126
195
209
129
169
189
235
232
255
253
181
252
201
207
255
255
255
214
210
255
211
255
213
255
241
238
226
194
136
119
113
101
75
37
10
16
58
97
76
150
80
120
127
210
226
164
207
201
173
200
178
171
158
210
212
248
251
255
220
224
223
229
255
255
255
211
219
255
255
229
255
228
255
255
255
228
229
229
229
255
255
255
255
255
229
255
255
255
255
229
229
255
255
255
255
255
255
229
255
255
255
255
218
225
204
238
185
191
169
137
154
90
80
93
121
106
125
126
74
60
64
107
115
63
109
109
56
122
122
65
68
74
119
62
116
105
100
98
100
105
56
86
75
37
31
33
91
58
62
63
53
52
55
65
54
51
94
69
92
38
3
30
4
64
73
63
49
11
3
18
26
106
47
50
95
140
45
168
85
94
59
117
165
169
26
31
0
2
102
115
79
75
73
111
85
73
72
100
81
88
55
51
81
61
107
109
90
90
105
129
54
83
120
53
56
131
69
62
102
112
42
0
27
0
48
42
40
138
74
108
91
36
57
150
154
155
119
116
86
100
55
41
113
120
36
27
26
43
220
118
30
63
99
48
89
24
96
95
52
45
88
106
89
64
82
23
25
22
68
3
49
47
44
51
55
77
33
32
49
57
68
65
76
73
48
64
71
142
66
83
110
80
169
137
134
153
193
199
139
168
123
255
212
234
165
255
248
252
209
173
212
255
255
215
255
239
255
217
251
255
255
255
250
251
228
232
212
167
147
136
123
128
135
86
76
92
86
142
121
83
118
138
151
223
212
136
213
185
154
171
156
215
214
191
255
238
255
255
225
224
229
222
255
255
170
229
218
148
229
229
228
255
255
255
255
255
229
229
255
255
255
255
255
255
255
255
255
255
229
229
255
255
255
255
255
226
225
255
255
212
217
255
212
255
255
189
205
224
137
152
119
87
86
74
62
58
120
168
102
107
106
110
60
46
46
53
63
64
65
71
77
71
114
64
105
103
53
117
99
44
35
90
38
48
63
70
85
69
61
43
52
60
60
44
40
29
14
0
0
18
0
53
55
31
0
1
0
0
7
86
151
76
81
122
105
103
113
112
63
26
52
73
47
0
73
6
35
35
0
61
92
95
107
82
67
90
53
45
71
141
77
90
68
109
110
106
100
8
27
88
86
70
103
98
64
34
83
122
92
101
92
106
35
44
8
42
101
62
138
99
144
67
117
132
74
113
104
138
45
94
24
74
119
48
13
90
56
109
92
132
88
118
88
78
40
51
84
87
50
121
105
107
120
69
71
63
65
64
62
56
52
48
56
61
30
53
49
45
58
61
56
58
61
76
65
59
110
153
111
84
183
107
135
150
202
208
207
210
178
190
190
212
241
201
241
194
234
186
184
250
255
211
213
217
255
255
230
255
255
255
246
254
251
255
234
213
196
167
156
131
129
149
120
95
141
146
83
128
152
134
88
125
137
175
177
150
235
186
205
201
208
193
246
233
255
255
223
226
226
226
255
213
151
193
229
229
229
195
224
229
255
255
255
255
255
255
255
255
255
255
255
229
255
229
229
255
255
255
255
255
228
255
255
255
226
219
255
255
255
211
255
255
249
255
222
248
200
150
158
127
155
107
75
53
53
46
99
99
94
101
95
97
36
40
56
102
54
52
111
56
51
55
55
50
51
105
102
32
33
42
85
31
31
37
43
60
52
57
56
46
44
47
22
66
2
53
48
55
17
72
18
0
0
0
0
0
79
8
0
53
48
113
48
47
95
138
178
26
66
89
0
34
24
43
52
12
0
0
28
151
127
57
3
11
66
83
57
64
81
153
154
81
96
140
86
17
101
70
43
142
73
106
67
24
86
86
151
106
34
91
64
0
37
12
70
69
145
108
48
163
141
156
104
128
108
78
97
52
29
68
65
103
55
35
122
57
111
84
123
92
128
75
89
14
91
72
83
88
141
150
153
96
58
69
56
57
58
65
60
55
49
58
62
70
41
42
36
60
52
45
48
51
55
72
78
62
78
126
81
103
144
104
226
173
199
156
201
208
185
235
200
208
255
189
193
179
182
186
241
255
201
255
210
211
203
218
232
250
217
235
255
255
255
245
221
189
136
137
147
110
109
113
117
102
108
93
100
103
173
213
144
168
161
187
209
238
191
194
197
204
171
234
242
250
220
228
224
226
227
229
163
170
227
226
220
228
226
255
255
255
255
255
255
255
255
255
255
255
255
255
229
229
229
229
229
255
255
255
228
255
255
228
223
228
222
255
255
255
255
250
255
232
243
193
252
225
162
138
122
172
102
76
52
92
63
117
110
94
95
87
85
39
45
55
47
49
48
106
105
104
107
51
51
105
44
39
35
92
101
86
39
38
39
94
106
54
50
43
47
50
33
10
55
44
53
68
53
59
60
0
0
0
0
76
19
33
23
4
166
121
113
129
129
65
129
146
151
68
38
36
156
0
36
0
66
0
20
0
91
124
101
7
0
42
0
57
57
84
128
157
55
76
56
179
71
106
27
0
104
119
27
50
66
65
85
80
75
70
42
11
62
84
33
70
76
89
36
0
113
138
171
90
183
162
122
53
55
86
29
66
101
100
61
13
111
159
87
61
79
148
78
29
57
58
99
76
101
165
114
108
32
98
77
58
2
0
56
61
56
47
55
8
14
37
56
29
47
36
91
93
95
90
110
125
86
82
115
103
156
130
110
204
196
141
213
232
174
204
194
212
226
211
218
247
162
170
197
181
252
210
209
213
255
255
194
118
158
189
207
204
212
189
206
241
213
183
167
148
139
145
133
104
129
149
90
76
117
166
135
163
182
154
159
236
204
176
175
168
201
200
139
215
183
255
255
255
255
228
229
255
208
228
226
229
229
229
255
229
229
255
255
255
255
255
229
255
255
255
255
255
229
229
229
229
229
255
255
255
255
226
226
222
226
222
255
255
254
255
235
244
230
238
193
244
247
177
120
183
201
143
111
76
101
140
90
103
83
92
29
32
42
50
101
45
45
103
109
57
61
57
51
52
48
90
83
31
83
90
33
78
36
42
93
94
100
97
37
32
31
66
0
45
39
59
54
86
124
81
40
0
11
22
0
16
69
17
13
96
55
94
79
135
107
119
142
62
70
46
2
13
0
20
67
16
0
0
0
127
39
80
0
17
8
109
51
127
67
98
73
0
50
67
110
94
39
120
42
102
62
8
0
68
58
91
29
30
77
33
32
0
18
51
90
108
72
92
107
25
52
113
115
133
189
123
71
23
63
0
103
130
119
59
50
177
144
26
139
89
134
10
51
51
50
42
108
62
61
101
122
142
70
61
38
74
7
0
6
55
51
63
69
88
58
56
84
86
80
98
90
91
107
98
103
134
109
113
142
113
125
138
163
210
187
203
255
255
255
243
115
255
228
157
180
216
234
169
193
255
198
255
214
211
255
255
207
107
148
210
202
211
186
254
240
223
187
165
146
72
76
136
148
97
98
72
104
134
143
101
156
214
203
131
139
126
149
168
162
99
207
152
215
255
255
255
255
229
229
226
229
255
255
229
229
229
255
255
229
229
255
229
229
229
229
229
229
255
255
255
229
229
255
229
229
229
229
255
255
226
226
255
255
218
220
254
255
255
251
237
239
185
192
217
195
233
193
191
192
171
156
84
184
165
152
110
75
7
41
24
40
97
56
45
49
46
56
55
109
113
52
101
103
35
29
90
94
88
35
39
82
90
41
89
87
27
80
76
60
54
51
0
0
0
52
52
39
116
26
74
28
105
32
0
54
81
46
127
77
34
74
146
190
133
97
87
101
124
128
43
22
39
67
24
26
137
26
36
11
0
64
76
122
11
99
44
135
61
70
24
0
33
70
38
82
82
87
82
83
74
76
11
42
59
125
97
35
55
20
98
123
13
0
65
87
91
72
57
61
114
18
157
146
191
63
107
60
5
87
81
108
101
102
97
55
92
86
128
59
95
0
56
76
65
48
70
81
102
170
161
142
143
109
84
108
32
11
56
53
57
25
32
52
89
47
49
82
82
110
37
88
125
101
50
62
171
60
145
215
94
146
200
202
205
180
191
249
228
223
213
193
173
193
195
229
166
223
186
198
211
255
255
212
255
255
245
134
195
190
205
203
199
241
171
138
195
121
92
91
100
105
62
90
133
92
138
147
184
57
150
216
139
150
108
217
156
171
164
121
114
178
230
255
222
228
255
229
228
255
229
225
255
255
229
228
255
255
255
255
229
229
229
229
229
229
229
255
255
229
229
229
229
255
255
229
229
255
255
255
255
226
226
210
217
199
215
255
224
251
198
192
140
187
145
190
209
178
141
102
184
92
155
155
200
226
101
69
87
0
0
101
63
45
108
103
111
51
102
102
96
96
96
22
22
26
37
80
70
24
32
27
18
65
67
62
55
47
49
49
45
0
0
0
0
40
31
48
37
86
92
98
124
0
19
97
114
59
119
74
72
78
79
178
143
26
161
123
30
62
60
0
0
0
81
50
135
108
30
0
117
26
46
68
2
32
124
63
71
81
11
98
0
67
104
103
108
62
80
28
45
22
12
90
115
58
53
46
5
72
35
34
46
19
131
0
7
71
33
98
24
98
124
101
59
46
127
8
70
109
27
0
165
115
0
90
88
94
49
93
70
114
52
113
43
127
165
140
181
182
102
151
167
116
76
24
5
2
59
72
16
15
12
31
40
49
114
107
45
57
50
56
120
115
80
161
92
69
142
212
178
206
135
150
212
156
200
154
182
184
159
217
231
139
245
174
227
238
187
206
204
199
238
255
255
255
201
203
204
190
206
255
235
170
170
191
186
80
108
51
67
16
111
54
127
147
105
72
101
133
253
243
148
130
202
165
140
114
155
214
229
218
204
225
255
255
255
229
255
229
229
255
255
255
255
255
255
255
229
229
255
229
229
229
229
229
255
229
229
229
229
229
255
255
255
229
255
255
255
255
218
210
255
255
226
172
230
160
150
113
52
51
47
0
128
166
122
173
148
201
83
104
139
131
138
178
93
79
49
116
58
124
93
66
86
107
118
95
87
95
103
83
11
26
23
74
60
67
68
13
1
5
54
49
39
40
41
49
52
0
0
0
0
0
48
37
0
0
49
54
26
85
71
63
74
77
150
58
42
21
7
53
114
33
66
122
48
76
140
0
0
14
74
76
81
38
89
64
76
117
26
78
89
94
46
143
103
94
7
57
132
90
29
100
129
95
96
37
20
118
0
85
11
63
72
60
80
107
110
85
15
32
72
137
183
196
151
104
155
76
24
83
124
109
127
42
120
40
21
76
81
35
7
31
104
100
123
116
67
31
48
61
92
35
142
99
131
116
165
102
109
98
131
39
21
63
61
66
31
91
31
34
41
94
100
105
41
19
41
45
50
105
113
57
107
110
135
144
89
96
94
138
156
198
72
174
163
128
146
175
222
220
236
212
248
161
166
188
194
203
253
252
251
236
250
255
208
209
224
217
160
186
175
137
168
173
168
98
116
57
99
123
98
147
132
74
82
128
137
67
191
195
89
87
72
181
153
135
132
255
255
255
255
255
255
255
255
229
229
229
255
255
255
255
255
255
255
229
229
255
255
229
229
229
255
255
229
229
229
229
229
255
255
255
226
225
255
255
255
255
255
255
225
223
181
109
57
129
101
103
119
38
104
21
8
18
105
113
135
105
86
95
200
123
145
23
59
103
255
172
143
74
118
147
81
67
75
77
53
38
45
65
32
29
59
56
31
38
37
36
39
38
40
38
0
0
45
48
0
0
46
0
44
46
50
0
44
46
91
94
81
94
8
69
43
169
135
120
50
47
78
33
53
18
0
26
159
0
14
13
0
98
41
104
68
86
191
0
76
137
109
112
142
79
86
145
123
2
60
125
50
91
117
106
116
27
53
41
54
34
15
84
91
66
72
128
128
75
96
19
0
0
30
61
102
125
47
25
125
0
0
165
131
105
69
59
77
68
23
79
85
151
100
116
115
96
79
71
41
36
23
108
94
167
186
142
147
147
130
112
114
83
35
15
65
68
75
28
73
5
9
93
41
25
69
32
51
39
33
42
43
55
62
64
110
98
192
185
149
135
87
117
228
207
122
133
190
156
182
233
239
191
224
211
179
162
159
249
247
196
185
225
239
253
255
206
215
195
213
188
165
237
208
186
114
167
162
80
69
56
137
46
118
93
52
115
100
137
123
139
217
155
124
87
154
255
203
122
233
255
255
228
255
255
255
229
255
229
229
255
255
255
229
229
229
255
255
229
229
255
255
229
229
255
255
255
229
229
229
229
255
255
255
224
228
255
255
255
254
255
255
239
181
117
118
25
21
109
29
92
42
98
36
40
22
71
80
61
141
95
94
165
176
185
178
80
48
255
222
153
106
75
80
117
86
18
24
22
30
56
60
45
84
46
38
44
40
44
43
0
0
0
0
44
0
0
0
0
0
43
47
51
53
59
1
49
30
55
81
52
67
53
46
84
100
105
138
113
99
56
59
39
0
7
54
40
47
105
24
24
108
109
99
103
102
194
121
14
73
81
80
104
62
86
137
39
63
45
26
16
36
57
92
53
62
27
87
0
83
63
51
42
51
83
140
130
79
28
70
7
85
116
0
84
95
123
77
100
81
51
151
128
147
59
84
113
61
64
29
86
111
86
94
125
69
73
70
40
39
49
99
116
107
124
144
87
85
103
114
100
53
7
0
10
15
14
20
96
95
42
26
18
24
85
75
23
57
105
44
54
57
79
68
110
169
198
167
162
167
173
123
183
211
152
193
202
192
119
234
243
228
170
174
133
176
177
177
182
241
190
195
219
201
244
196
213
210
203
232
136
156
224
181
176
151
155
147
113
132
120
120
101
100
81
58
137
163
110
141
124
104
188
195
167
167
207
116
154
184
225
229
229
229
229
229
255
229
229
229
229
255
229
255
229
229
229
229
255
255
255
229
229
255
255
255
229
229
229
229
228
229
255
255
227
223
255
245
247
253
159
155
161
85
140
113
37
95
40
28
38
32
28
25
17
19
39
0
136
101
87
96
177
168
159
181
24
196
140
119
131
64
37
66
65
41
58
6
64
47
43
36
93
41
33
52
0
0
0
0
0
39
46
45
0
0
0
0
0
0
42
0
0
0
0
44
2
46
29
79
26
39
57
143
99
122
145
206
52
44
46
11
59
75
108
88
75
37
46
24
78
2
21
76
112
0
79
122
27
138
0
80
45
45
100
62
31
49
16
0
89
55
53
82
79
60
53
56
30
27
10
59
74
122
109
62
71
87
41
0
86
88
60
48
158
101
123
55
123
170
107
0
69
93
73
63
0
0
5
41
61
108
26
12
21
80
106
66
20
29
29
101
128
149
167
138
140
125
82
126
54
28
75
65
11
80
103
109
109
104
51
95
80
18
22
72
76
30
36
57
47
78
100
98
161
208
158
135
147
170
181
216
216
198
215
167
136
99
185
232
241
224
228
151
143
135
182
188
235
249
208
227
189
195
200
195
199
235
195
110
141
182
132
175
148
140
124
73
141
112
79
122
83
116
146
177
163
139
181
88
162
172
222
183
164
169
130
152
170
255
255
255
229
229
229
255
255
229
229
255
255
229
229
255
255
255
255
255
255
255
255
255
255
255
255
229
229
229
229
255
229
229
255
223
228
254
227
248
237
203
195
140
92
136
104
52
99
96
49
29
28
38
14
65
43
0
41
65
153
138
144
90
121
144
150
172
163
141
132
117
93
129
91
86
25
53
2
76
64
46
57
42
53
47
0
0
0
0
0
40
46
43
42
0
0
0
0
0
0
0
0
0
0
0
42
51
46
0
0
57
98
4
152
151
138
153
149
43
69
0
0
42
35
63
117
73
47
159
44
53
41
24
30
98
40
10
96
40
158
60
130
48
85
86
7
9
39
6
72
75
48
85
80
62
107
97
69
19
28
145
115
136
66
38
15
62
98
78
66
22
152
85
0
216
95
97
70
143
174
68
45
98
52
98
8
0
0
0
88
65
40
97
39
94
42
31
49
80
43
40
88
168
164
181
152
207
208
174
169
151
64
124
119
92
87
80
43
61
97
94
92
90
57
48
67
4
55
48
33
41
67
86
104
109
119
166
218
157
167
159
163
184
209
130
175
203
169
141
228
212
121
148
218
158
147
188
231
226
188
236
246
199
157
158
200
204
241
234
183
195
173
154
153
138
62
129
98
105
95
118
154
68
164
209
150
180
148
79
116
166
187
213
174
184
191
196
209
225
255
229
229
229
228
255
255
229
229
255
255
255
229
229
229
229
255
255
255
255
255
255
229
229
255
255
255
255
229
255
255
255
229
228
225
229
214
246
255
255
195
217
156
94
82
15
42
66
98
107
83
89
20
3
59
44
9
52
38
106
125
136
124
87
100
121
136
138
126
119
113
98
72
87
110
16
17
108
54
75
74
111
58
49
32
47
35
58
0
39
47
51
0
0
0
45
0
0
0
0
40
47
47
46
0
0
26
49
43
40
1
32
26
55
132
124
148
83
9
164
0
9
98
60
52
137
50
55
100
156
63
160
105
104
43
44
51
91
167
107
126
79
79
78
61
17
12
8
53
53
80
27
91
119
67
95
91
95
35
70
82
38
129
32
34
59
98
47
140
175
134
30
127
23
85
62
54
22
112
84
73
41
54
71
85
85
66
0
49
38
97
99
131
105
149
90
78
42
86
30
55
111
95
100
140
204
218
203
180
181
164
137
130
132
114
130
82
97
43
86
75
48
109
50
66
54
50
51
47
37
11
69
94
128
130
129
130
123
135
115
153
159
163
145
190
215
210
169
193
109
142
135
178
179
173
190
242
161
182
219
200
221
178
175
168
187
210
246
227
206
169
149
108
110
149
63
58
114
127
60
122
69
85
135
171
103
85
89
90
91
106
154
206
195
255
170
208
255
255
255
229
229
255
229
255
255
255
229
255
255
229
255
255
229
229
255
255
229
224
255
255
229
229
229
255
255
255
229
255
255
255
255
225
255
229
227
255
255
255
255
217
109
138
96
61
73
100
115
111
36
7
82
54
51
50
0
48
50
49
50
76
67
79
70
89
95
157
163
111
111
102
88
21
23
79
90
60
74
81
61
27
72
63
128
56
0
3
0
33
55
41
44
0
44
45
45
0
0
0
43
34
55
46
46
46
56
47
47
0
0
0
0
86
105
155
34
64
59
90
0
82
88
89
190
158
69
63
155
114
164
70
161
149
31
174
3
76
90
92
170
108
39
34
52
64
5
32
62
64
123
120
96
120
99
84
91
51
104
60
75
30
108
39
54
19
5
0
114
115
125
2
79
77
36
37
22
78
79
67
87
39
129
0
86
34
122
29
0
110
146
167
113
151
141
116
57
0
131
100
127
88
128
170
152
166
180
174
164
160
164
146
138
147
110
110
98
104
89
111
117
123
113
121
117
62
90
44
41
107
81
41
77
133
135
142
157
131
125
126
160
142
155
190
189
176
188
250
254
237
186
150
144
192
206
183
172
189
216
198
187
177
202
189
194
170
177
238
155
151
146
101
124
109
143
65
54
143
52
44
98
57
87
67
103
122
97
152
158
114
180
250
255
242
255
191
255
255
255
255
255
255
255
229
255
255
229
229
229
255
255
255
228
229
255
255
255
229
227
227
228
229
229
229
255
255
255
229
228
255
255
255
226
229
229
228
225
225
228
255
232
238
112
97
92
108
123
70
72
65
2
63
56
52
48
45
46
54
50
54
100
71
81
68
80
82
143
94
93
95
92
133
143
44
10
0
0
50
85
82
29
4
41
58
73
36
27
35
2
73
50
47
0
46
0
0
40
0
45
39
33
51
44
44
44
46
43
46
0
0
50
48
56
106
59
76
140
50
17
72
107
147
108
143
122
26
38
56
62
132
187
81
73
36
91
28
86
156
34
106
123
47
0
28
11
5
78
130
126
101
97
93
56
119
78
52
48
76
98
66
24
28
126
2
29
0
0
145
127
87
18
100
140
82
58
44
14
51
52
119
49
125
0
63
121
96
48
0
117
136
81
120
138
85
84
105
67
130
86
113
130
163
160
188
176
172
164
178
112
156
167
105
131
140
135
119
112
149
141
135
146
131
111
115
139
70
72
87
54
63
66
68
89
70
125
166
197
156
223
142
154
151
199
164
193
157
122
220
193
196
212
207
104
177
169
165
189
187
156
188
168
199
193
132
165
165
173
147
205
202
118
106
140
138
94
46
54
103
68
52
58
81
55
57
129
152
142
156
119
107
130
193
229
255
255
255
255
228
255
255
255
255
255
255
255
229
229
255
229
229
255
255
255
255
255
255
255
255
255
228
229
229
229
255
255
255
226
226
228
255
255
255
229
229
228
255
255
255
229
255
226
110
109
60
60
67
120
96
58
25
27
59
1
46
42
44
5
0
55
13
76
81
117
121
123
78
79
77
79
130
121
130
124
112
23
4
0
73
71
80
37
36
0
25
33
55
8
49
47
43
47
0
0
0
0
0
0
42
39
33
47
42
0
42
0
0
44
42
0
0
51
0
87
16
144
201
107
0
44
210
145
76
26
142
78
89
84
84
109
50
62
76
65
66
0
118
62
80
129
126
54
67
125
79
55
52
26
25
57
102
82
2
130
80
61
52
59
135
57
32
0
136
32
57
103
179
118
139
26
134
157
128
79
24
87
101
130
104
141
49
111
29
111
63
47
90
77
85
50
43
111
64
90
50
80
110
137
42
65
148
170
195
214
215
212
190
134
91
88
75
65
129
119
131
131
45
70
83
85
111
106
87
100
104
55
55
69
87
85
108
164
91
57
70
87
128
239
224
226
144
146
215
207
215
231
212
160
199
206
163
153
207
150
119
134
105
114
139
162
173
187
115
114
142
160
168
172
104
177
180
135
132
119
83
81
62
38
58
56
65
50
44
72
108
32
78
173
101
158
163
218
206
237
250
255
254
214
255
255
255
255
255
255
255
229
229
229
229
255
255
255
255
255
255
255
255
229
255
255
255
255
255
255
255
255
255
255
228
228
228
255
255
229
229
228
226
255
228
229
197
144
143
79
103
42
61
71
23
100
0
9
2
0
0
42
56
0
52
0
75
76
62
112
118
74
74
73
71
66
109
108
135
170
139
62
7
54
57
0
67
55
47
44
0
0
0
46
59
36
44
41
0
41
40
38
41
0
42
36
44
0
0
0
0
44
0
0
40
41
0
0
3
3
70
115
74
50
77
132
65
153
105
115
78
71
58
81
21
123
51
60
183
97
18
83
20
50
73
176
34
31
123
115
43
82
60
44
38
30
0
39
86
88
100
92
79
128
65
0
6
56
108
54
163
79
176
198
59
85
56
49
135
50
96
145
99
127
112
88
64
77
150
72
58
72
70
44
24
65
96
51
139
94
65
76
54
102
112
96
80
98
111
161
158
101
114
144
78
58
55
46
29
85
50
56
66
123
153
153
123
115
108
75
87
45
52
57
80
81
81
197
145
93
81
102
136
209
214
162
142
134
197
217
221
216
209
155
103
166
137
172
134
135
150
135
68
112
96
91
120
90
90
100
182
109
145
78
158
128
77
128
40
44
88
48
50
33
48
19
7
18
45
115
157
173
202
114
216
190
220
228
244
190
207
201
217
224
228
255
255
255
255
255
229
255
229
229
255
255
255
255
228
255
255
255
229
229
229
255
255
255
255
255
255
227
255
228
228
228
228
255
255
255
255
227
229
255
255
255
147
145
50
48
62
54
35
33
77
39
10
54
0
0
0
1
0
0
0
63
73
61
105
110
65
69
70
72
115
107
67
103
81
110
0
62
47
75
12
17
42
50
0
26
25
0
32
0
34
0
41
41
0
0
37
41
43
0
42
44
0
0
0
0
0
0
0
44
40
0
0
0
58
58
104
5
60
91
38
112
152
68
70
82
66
74
34
108
100
62
56
138
6
136
45
64
82
50
77
40
72
92
95
7
72
40
46
20
0
40
86
32
115
52
26
109
95
35
48
35
76
27
76
26
129
36
50
10
0
19
116
132
80
48
104
0
0
80
92
54
104
117
112
84
31
35
40
63
97
127
100
79
64
74
67
64
77
61
127
186
180
114
117
116
115
111
80
77
84
84
112
83
35
53
52
67
112
148
145
134
179
164
161
60
45
34
80
77
87
98
117
130
216
195
206
203
194
168
155
130
163
178
198
182
76
106
136
116
139
88
116
148
56
56
85
29
74
95
121
119
141
184
67
56
94
115
89
100
111
26
15
34
23
82
121
84
69
128
154
164
63
150
152
175
141
183
177
160
181
171
212
198
233
144
220
223
228
222
255
227
255
255
229
229
229
229
228
228
255
255
255
255
224
225
229
227
255
255
227
226
255
255
255
255
255
228
226
227
255
255
255
255
228
227
255
220
229
255
189
114
135
98
41
115
50
68
99
37
3
60
53
43
38
0
0
56
51
8
21
122
64
104
107
59
62
63
119
67
68
53
112
119
139
56
0
2
13
29
56
53
0
11
0
23
0
65
57
26
0
0
0
0
0
0
0
42
43
50
41
0
0
0
0
0
0
50
0
0
0
0
1
0
47
41
7
0
72
109
119
91
20
107
81
28
25
69
22
91
41
110
194
145
43
1
116
49
75
84
58
129
39
48
10
96
57
29
50
29
13
96
52
65
63
77
128
144
103
71
56
64
52
39
99
26
69
41
42
9
23
57
134
32
63
188
0
36
83
83
41
84
98
89
56
42
50
58
30
65
124
126
76
97
75
12
61
69
123
162
170
124
157
111
114
173
165
92
70
47
57
70
88
82
55
58
96
135
97
118
115
92
109
137
142
96
123
86
120
72
112
162
133
112
103
148
163
148
90
91
114
114
133
194
181
156
112
169
180
103
151
129
96
143
153
141
106
111
73
62
55
51
93
107
123
37
34
97
113
59
29
52
27
43
110
63
52
41
130
143
113
120
157
150
188
205
144
168
142
176
186
185
210
157
153
173
200
212
220
255
226
255
255
255
255
255
229
255
255
255
255
255
255
223
225
229
224
228
255
255
255
225
255
255
228
224
229
226
227
255
255
255
255
229
228
227
229
219
255
217
121
103
92
126
150
99
90
14
23
103
59
53
44
38
0
0
62
57
63
59
120
120
59
65
71
70
66
65
68
72
89
115
40
109
62
48
61
2
11
64
56
0
8
0
12
0
0
60
14
0
0
0
0
0
0
0
46
46
51
40
0
0
0
41
0
0
0
0
0
0
0
0
0
0
31
36
56
58
102
113
136
132
130
26
102
21
26
52
67
55
81
127
56
139
25
73
26
65
101
34
129
103
58
21
60
112
114
115
66
15
63
143
118
70
59
11
61
51
91
130
81
70
64
61
50
119
58
135
0
49
120
100
58
42
126
2
0
50
98
43
66
32
31
77
81
40
24
86
43
89
86
28
41
92
81
86
119
57
127
130
112
164
112
118
168
174
149
53
82
80
31
17
21
27
39
33
15
7
78
90
104
72
75
43
91
142
144
146
123
127
133
141
132
164
209
198
208
207
128
86
81
103
186
117
121
143
83
100
105
122
145
156
139
173
160
142
142
121
71
29
0
49
115
136
75
20
9
20
20
61
0
0
0
0
70
160
81
84
151
180
162
185
187
197
135
174
196
130
106
123
97
177
139
203
196
210
222
223
255
255
255
255
255
255
255
228
255
255
255
255
255
255
227
219
229
255
255
224
221
221
222
255
217
219
227
225
226
255
255
226
229
255
255
255
255
255
229
228
208
188
166
103
120
60
67
23
69
68
36
0
48
47
43
42
0
5
52
60
64
96
71
49
50
55
112
62
64
118
120
101
109
66
96
75
55
79
64
73
0
0
52
2
0
78
21
12
12
86
3
0
0
0
0
0
0
48
43
38
41
42
38
0
0
40
0
0
0
0
0
0
0
0
0
0
50
0
26
107
50
106
20
68
51
142
8
50
58
50
119
182
150
0
20
71
47
60
99
121
64
156
54
97
70
88
126
99
114
90
88
119
174
78
96
103
16
77
98
149
126
139
0
93
54
8
101
79
88
71
139
144
90
86
60
32
133
0
44
120
81
110
110
0
68
79
42
116
104
109
83
116
36
117
63
26
49
93
93
158
180
179
185
190
120
175
161
151
154
50
41
23
60
39
25
80
47
70
87
130
109
112
35
81
97
93
24
48
77
97
104
129
91
165
196
181
218
226
212
218
212
184
168
196
183
117
222
223
104
62
67
78
80
145
154
155
134
103
100
65
66
57
26
61
71
66
0
0
7
40
109
46
86
40
90
74
111
142
61
99
173
96
163
145
131
187
171
104
107
132
141
169
184
196
225
212
222
229
255
255
255
255
255
255
255
255
255
255
229
226
213
255
255
255
220
255
227
228
255
255
224
225
255
255
222
229
229
228
226
228
227
229
228
255
255
255
255
226
227
217
159
168
115
106
66
136
116
101
49
66
64
57
48
38
35
44
0
0
62
62
80
67
47
51
55
110
112
60
115
118
47
64
74
145
109
82
79
8
63
27
0
0
0
0
82
63
1
0
31
0
6
0
68
0
43
49
49
0
39
38
40
0
0
0
43
0
0
0
0
0
0
0
0
0
0
0
0
37
37
81
95
67
131
74
56
83
7
105
152
16
62
39
77
62
103
26
0
143
55
128
46
30
46
67
107
135
103
100
69
79
33
152
74
72
101
62
55
88
43
90
122
0
103
95
20
39
63
0
109
163
73
126
49
88
78
107
0
49
159
116
142
191
202
48
121
184
83
93
92
91
100
73
106
127
89
55
35
71
146
175
188
162
185
177
167
81
125
63
67
82
88
73
101
77
37
26
60
73
81
157
126
78
77
125
113
132
96
82
113
136
154
168
126
175
194
163
168
156
114
130
135
166
159
164
120
169
178
190
198
113
77
70
110
136
157
143
109
113
73
55
15
19
90
112
78
29
27
12
19
25
26
63
54
96
105
101
101
80
52
37
40
161
168
155
108
74
87
66
128
162
163
175
171
205
255
255
255
255
255
255
255
229
229
255
255
228
225
255
255
213
221
221
255
255
255
255
228
227
226
255
255
255
255
255
229
229
229
226
226
255
229
229
255
255
255
255
229
255
237
191
127
79
112
120
92
135
92
62
47
57
49
45
0
49
45
0
0
63
61
66
68
48
50
105
106
106
55
114
118
55
67
130
146
182
104
21
8
7
20
0
0
0
0
0
0
1
0
14
48
15
66
59
39
47
50
49
0
40
37
39
0
46
50
0
40
0
0
0
2
17
0
3
0
0
0
0
5
0
3
5
43
75
78
0
0
0
82
152
87
107
56
0
57
0
29
12
25
34
78
14
39
47
25
91
78
156
97
83
63
31
96
55
74
100
70
65
46
30
131
110
37
101
59
52
5
48
42
5
41
101
146
126
54
53
131
153
133
83
118
92
24
54
70
56
40
23
34
67
72
86
0
111
58
83
169
37
26
107
153
203
201
163
108
84
105
159
151
146
61
108
81
84
19
22
13
27
111
36
58
118
35
38
60
147
170
174
178
191
191
189
198
183
187
178
199
211
188
118
110
141
150
167
174
156
175
183
161
164
113
97
167
156
174
170
167
162
92
84
85
75
78
81
70
86
18
49
30
14
28
8
18
54
101
55
5
2
77
28
88
138
110
112
88
209
147
139
158
159
218
191
241
229
229
255
255
255
197
177
229
229
225
255
255
255
227
215
217
255
255
228
215
223
221
255
226
255
255
227
227
226
255
255
255
226
224
229
229
255
255
255
255
255
255
255
255
255
255
201
221
137
93
130
131
130
218
16
86
7
26
15
55
55
0
0
1
0
7
72
65
131
46
49
96
99
47
47
56
112
105
84
91
61
141
109
49
6
59
37
17
64
50
47
60
0
0
0
0
0
1
0
29
74
51
45
0
0
0
0
0
0
0
0
0
41
47
46
0
0
0
0
0
0
0
0
0
39
0
56
38
31
21
0
18
8
159
118
134
100
24
61
0
0
22
7
30
0
30
98
15
0
58
44
55
133
134
132
21
30
135
105
45
130
75
30
30
23
53
107
48
42
138
30
64
45
47
80
61
85
132
169
160
85
0
139
194
156
121
87
86
76
125
32
58
63
19
68
67
48
91
88
79
106
135
79
73
118
185
124
134
112
176
127
131
129
169
162
70
66
67
22
87
8
18
26
17
17
25
78
79
35
93
122
77
79
137
169
143
150
112
125
159
191
200
113
182
205
190
182
172
166
162
177
186
173
185
199
182
161
189
189
196
167
189
179
145
81
89
109
88
102
89
124
97
91
68
4
21
12
14
52
109
150
83
163
128
134
116
116
70
87
161
134
166
127
156
189
190
215
255
255
221
210
229
229
224
176
147
228
229
229
228
228
227
227
199
255
222
220
224
219
222
255
255
226
225
255
226
226
224
255
255
229
228
255
229
229
255
222
255
255
255
229
255
229
229
255
169
185
113
93
105
91
100
143
59
45
42
16
9
6
64
11
2
7
6
7
72
10
76
42
101
99
101
99
96
100
103
57
31
87
105
136
131
44
52
49
100
16
57
43
39
45
0
0
0
0
0
0
1
17
16
0
42
0
0
0
0
0
0
0
0
41
42
44
41
0
0
0
0
35
43
38
0
44
55
53
42
0
26
46
44
0
0
85
109
190
55
51
45
32
151
71
0
0
43
123
131
15
5
89
51
44
101
43
202
48
32
144
121
117
139
59
44
2
94
86
93
52
126
77
29
112
86
17
49
94
111
54
110
117
110
154
168
143
138
137
82
69
123
166
63
104
91
42
123
89
52
33
8
72
76
122
86
107
93
57
131
129
142
181
124
124
136
202
164
80
88
66
67
95
57
61
36
78
104
117
132
112
140
104
110
86
134
155
182
192
153
119
126
198
202
131
156
230
213
202
153
195
158
168
144
142
199
189
177
208
203
150
217
207
205
197
185
108
92
155
105
94
80
55
101
135
119
108
122
116
28
95
91
120
109
37
97
122
115
155
101
76
87
134
219
172
125
147
226
218
255
189
198
194
209
255
225
229
218
174
229
229
225
228
227
255
226
206
216
223
221
225
227
222
221
255
255
255
255
255
226
223
229
255
255
255
229
229
228
228
205
255
255
255
229
255
255
223
255
160
162
158
120
62
92
118
117
86
11
46
26
72
12
4
1
9
8
8
9
14
10
120
85
97
95
98
98
96
98
101
64
29
83
108
146
107
43
55
46
88
56
51
49
47
46
0
0
0
37
0
0
9
41
0
0
0
0
0
41
0
0
0
41
47
41
40
41
41
0
48
48
0
0
47
39
39
46
58
60
36
0
0
4
35
47
28
23
0
131
46
125
115
151
88
151
72
64
92
89
111
53
85
90
114
110
34
9
218
94
102
149
139
108
107
116
55
70
143
40
35
71
129
48
71
144
106
80
14
87
103
109
107
75
111
140
95
148
136
125
90
111
90
16
65
108
62
55
61
52
84
33
97
27
20
0
82
120
136
167
152
115
107
138
102
78
96
154
156
101
136
60
25
34
47
9
42
7
60
77
32
59
39
59
114
137
155
159
131
178
132
145
149
140
165
167
206
200
152
230
165
171
186
190
187
161
165
217
226
228
230
222
158
157
145
183
125
194
163
160
91
115
127
99
135
99
137
90
117
160
150
148
80
98
160
73
70
134
95
96
115
107
123
90
168
252
253
200
255
232
252
242
199
217
227
228
229
219
229
185
229
229
226
255
255
255
226
255
225
222
229
229
229
223
223
225
229
228
229
228
255
255
225
210
212
225
229
227
226
223
190
223
225
255
255
229
224
221
255
169
102
94
79
137
170
108
69
56
50
88
12
10
11
61
9
14
58
8
64
8
11
62
25
40
90
39
42
46
52
54
114
64
65
54
155
124
0
63
51
90
64
64
63
53
45
33
0
0
0
9
35
0
10
0
53
41
0
0
0
36
36
42
40
48
39
36
41
46
44
46
47
0
53
52
43
43
51
48
31
6
0
0
0
0
0
18
0
66
131
133
91
138
95
0
57
126
51
44
75
138
41
103
83
191
92
127
33
84
55
34
115
171
97
67
113
83
103
142
0
101
135
56
9
44
77
92
38
34
5
67
45
78
131
41
116
57
82
117
110
100
80
109
102
67
96
111
88
65
52
28
33
68
1
28
27
51
44
96
74
138
135
93
155
151
74
94
157
90
64
69
56
74
72
47
77
24
54
71
70
18
28
36
54
87
108
173
176
175
108
115
138
146
167
241
252
251
250
188
183
239
186
179
194
199
237
174
176
182
173
222
234
226
166
148
211
198
200
188
121
113
93
107
109
162
166
174
120
127
132
163
175
116
103
96
106
166
199
159
165
161
141
129
165
209
224
255
223
255
205
207
255
209
182
255
229
227
229
255
228
228
228
228
229
255
229
228
229
227
229
223
225
218
229
226
229
255
229
228
229
229
255
255
255
210
228
223
255
255
255
255
225
226
255
255
223
223
227
208
94
88
133
159
160
125
50
113
51
77
68
90
73
5
61
58
8
7
61
57
4
7
58
38
42
91
41
41
42
44
97
109
72
60
83
142
138
56
35
62
111
68
55
38
50
50
42
0
0
0
0
33
41
0
0
3
0
0
0
0
43
0
0
40
48
42
39
49
35
40
42
44
40
46
0
0
0
45
39
35
0
0
0
0
0
39
41
60
91
87
39
0
137
26
74
37
186
47
128
76
119
22
70
85
122
78
46
9
97
58
121
66
114
127
131
91
57
56
57
62
140
117
63
113
119
39
57
33
0
46
161
137
43
103
98
67
69
51
81
107
43
116
79
70
126
109
41
59
54
47
14
30
42
33
0
32
82
50
55
68
139
147
144
190
199
95
92
142
49
25
23
80
24
72
31
40
92
115
65
46
93
99
90
97
129
159
209
182
170
184
196
167
225
242
255
255
215
255
255
206
200
202
206
255
213
255
232
185
205
234
252
243
236
235
223
164
205
194
194
202
189
137
126
152
157
160
171
177
164
159
126
129
233
122
157
187
189
244
255
210
214
255
255
255
255
220
255
255
229
228
224
255
255
255
255
226
255
255
255
255
255
255
255
229
255
229
255
229
229
229
255
255
228
255
245
255
255
229
255
255
251
133
209
255
255
255
217
190
209
255
226
229
229
222
222
224
255
255
255
120
163
143
147
128
112
91
57
127
40
45
21
69
65
59
59
11
8
9
54
1
9
60
41
45
45
46
99
50
54
107
105
12
13
63
132
83
1
5
56
82
50
0
0
0
0
0
0
0
40
45
0
44
42
48
0
0
42
0
0
43
38
0
44
46
47
44
0
0
44
41
0
41
45
39
39
0
41
46
0
1
0
0
0
0
0
44
48
40
0
72
61
34
32
130
145
148
144
2
35
109
51
69
89
110
81
27
22
127
49
37
10
9
40
134
102
58
35
0
0
143
89
35
137
95
133
47
104
10
0
138
78
52
115
86
83
82
119
39
142
82
79
64
53
82
85
0
56
50
40
24
52
2
40
6
59
95
97
74
122
145
150
144
116
153
156
122
133
114
56
28
70
40
41
35
79
26
39
75
36
102
94
51
86
79
101
122
181
169
188
225
160
178
240
255
223
221
255
255
255
255
255
255
255
255
255
252
203
205
255
255
255
236
180
187
181
223
205
197
206
208
200
202
179
166
147
164
163
188
154
175
176
204
134
146
197
195
230
239
233
176
217
210
218
255
255
255
255
226
228
226
225
255
255
255
255
255
255
255
255
255
255
228
227
224
255
255
229
229
229
228
226
223
212
255
197
255
255
255
255
237
222
255
215
227
223
219
248
211
229
224
229
229
224
222
224
226
255
255
146
160
150
135
104
166
70
78
61
40
60
29
76
65
7
6
63
8
9
57
58
63
122
106
57
55
106
106
110
114
115
122
8
59
120
128
134
45
0
0
86
52
50
0
0
0
0
41
0
0
48
0
45
44
49
45
0
42
36
0
0
37
40
42
40
44
42
38
0
0
41
38
41
44
0
38
0
0
46
0
2
0
0
0
50
48
0
0
57
56
45
42
42
66
85
136
8
62
34
0
63
73
60
129
47
35
35
44
41
43
36
49
39
0
60
57
48
62
39
5
111
64
72
118
0
98
103
95
54
0
88
86
96
38
117
139
35
39
84
151
120
57
54
53
108
58
0
65
36
47
44
14
88
44
11
16
86
148
119
139
138
135
121
112
90
138
148
135
156
60
66
66
104
70
47
60
5
68
90
61
56
105
59
85
72
91
90
165
160
119
127
142
166
243
203
207
209
255
255
255
255
255
255
249
247
243
247
250
240
252
191
243
181
178
175
177
177
222
198
195
215
199
176
104
68
113
169
179
190
196
212
233
233
243
194
200
187
139
224
248
245
226
217
225
223
255
255
255
255
255
255
227
229
227
225
229
229
255
255
255
255
228
228
219
213
255
228
229
228
226
229
227
222
255
237
188
255
255
255
247
255
253
255
255
255
255
229
255
255
255
229
229
229
228
255
255
255
255
255
131
160
163
144
115
98
119
63
64
138
93
87
78
61
11
10
9
8
62
10
66
53
119
52
56
53
102
103
107
111
113
104
14
14
69
155
90
43
51
51
88
1
52
48
0
43
0
37
47
0
0
45
45
45
49
44
0
0
0
39
40
41
42
42
39
43
43
37
43
0
0
38
42
43
0
0
0
0
0
0
2
0
41
0
0
46
44
0
0
60
0
0
52
60
57
44
42
0
10
26
83
64
74
84
37
90
97
0
86
133
51
88
72
58
78
90
58
0
0
2
78
59
152
28
10
74
104
59
2
48
55
71
100
58
71
112
96
64
61
106
78
86
50
46
93
18
35
110
40
49
28
0
10
52
0
28
89
133
56
120
126
157
181
120
121
148
135
91
122
128
74
143
94
158
131
63
69
104
96
87
109
56
38
40
75
100
112
147
143
125
110
139
145
226
249
195
255
255
255
255
255
254
247
234
228
231
219
182
193
187
176
178
196
198
178
163
161
157
211
204
201
185
177
156
162
130
142
143
123
190
168
215
248
175
163
181
166
200
184
189
193
229
220
217
225
199
255
255
255
224
255
255
229
229
227
229
227
255
255
228
228
228
228
255
210
229
227
226
225
221
228
228
229
255
255
221
227
229
252
255
255
223
255
255
255
255
229
229
229
229
255
227
228
228
225
255
255
255
229
98
146
130
162
123
91
136
74
85
48
60
83
23
5
66
67
8
7
10
12
18
52
119
51
54
54
55
55
58
61
62
111
67
66
50
139
66
0
14
46
28
0
49
49
54
50
48
37
49
50
0
46
43
44
47
48
49
52
0
43
44
46
46
45
43
45
46
40
46
0
0
38
43
41
0
0
0
0
0
0
0
0
42
42
0
0
44
42
42
51
41
42
35
49
50
0
59
39
1
37
89
41
98
107
35
23
13
39
143
59
29
26
49
49
41
27
144
0
13
88
15
19
159
65
66
84
75
90
29
15
184
183
45
19
58
17
68
69
71
88
114
91
23
26
125
66
92
87
24
110
30
0
87
108
26
23
66
77
124
128
123
148
130
121
126
147
181
156
160
159
99
61
45
40
29
46
59
98
117
125
111
101
98
75
95
83
141
156
154
185
167
151
155
222
198
200
251
252
255
255
252
251
205
179
162
159
212
156
116
131
134
133
136
141
150
172
167
146
204
192
206
199
179
183
128
96
107
97
102
154
149
206
131
144
129
160
185
252
205
177
184
192
202
255
255
218
204
251
255
255
255
255
255
255
255
255
255
255
228
228
228
228
255
255
219
226
223
224
222
216
228
229
229
255
255
255
223
255
255
251
255
255
255
253
255
255
229
225
226
228
228
255
255
255
255
255
228
229
255
79
144
159
121
141
188
116
94
82
44
56
23
21
58
62
11
8
58
61
62
68
64
122
101
105
112
111
111
61
116
117
47
76
89
125
88
48
8
17
0
20
48
48
45
52
46
49
37
49
0
0
45
41
42
45
48
46
0
42
45
45
43
43
43
45
43
0
0
0
0
0
0
45
40
0
0
0
0
0
0
0
0
42
0
0
0
44
39
38
35
44
44
47
32
0
0
0
0
37
22
84
109
117
111
41
17
88
63
158
73
24
16
105
25
88
43
24
16
6
0
6
99
169
50
90
47
58
73
16
144
87
24
108
26
56
84
106
84
91
81
147
109
69
94
190
50
73
102
89
70
20
17
0
45
21
27
84
66
69
114
82
156
83
103
166
157
149
168
150
96
118
65
48
101
66
75
76
58
70
120
115
134
126
63
79
81
158
150
148
100
63
136
166
222
173
177
227
246
243
248
253
254
206
154
173
128
109
124
137
140
136
131
94
97
153
159
178
168
212
187
192
172
153
174
182
171
217
116
158
28
72
54
18
84
52
67
92
78
117
160
88
129
184
160
194
221
251
254
255
230
235
255
255
255
228
255
255
255
228
228
228
228
255
217
229
225
218
222
255
212
227
255
226
222
220
255
222
255
255
255
207
202
255
247
255
226
229
226
229
255
255
255
255
255
255
229
229
217
197
128
167
167
171
105
124
150
118
9
99
48
19
23
62
54
3
9
57
59
60
65
68
120
92
97
110
53
105
105
108
109
42
57
133
140
121
50
61
0
4
71
52
51
41
45
37
0
35
47
0
46
45
39
41
43
0
40
0
33
0
0
36
37
39
43
39
0
0
0
0
0
0
0
0
44
45
0
0
0
0
0
0
41
0
0
0
45
0
0
42
55
0
48
56
47
0
44
49
34
47
49
27
99
23
52
106
96
53
31
92
43
109
53
37
62
131
146
33
4
0
50
118
70
105
63
169
55
46
77
69
89
106
97
88
128
63
28
94
84
182
148
97
54
102
47
67
155
98
88
84
102
63
59
103
23
34
0
73
88
79
97
100
127
194
191
145
137
72
130
103
85
98
74
52
118
121
92
70
109
158
179
171
100
147
104
156
79
132
127
177
135
115
139
156
147
197
198
204
193
169
125
127
118
88
180
134
156
187
134
116
132
122
167
144
104
124
124
112
137
125
158
204
194
191
132
91
67
46
0
38
67
105
127
129
119
106
115
169
93
81
46
110
235
183
109
129
171
152
161
165
176
234
207
218
219
215
255
229
229
228
225
222
215
229
210
255
255
202
184
223
199
255
255
255
255
255
255
255
227
255
255
255
219
219
224
226
225
229
225
220
203
217
227
179
221
225
229
222
164
143
145
107
96
118
67
91
77
60
17
62
13
6
0
0
0
0
43
0
0
5
23
118
95
101
105
112
61
56
112
113
84
98
120
130
72
3
8
0
70
55
0
0
0
0
0
0
39
45
49
44
44
44
41
40
49
41
39
46
42
47
0
0
47
41
37
0
45
0
0
0
0
0
1
0
41
41
0
0
0
0
0
43
40
0
0
0
0
0
47
49
51
54
48
0
0
44
46
43
50
101
145
96
119
15
3
44
46
58
58
114
32
0
49
95
10
33
28
71
4
119
202
62
3
41
75
64
22
60
53
117
101
64
164
120
59
92
97
102
166
130
151
77
107
88
56
68
35
63
29
124
78
57
88
12
0
26
28
50
61
80
80
109
142
102
163
147
125
64
93
69
47
55
60
124
100
59
89
105
148
172
98
97
74
56
67
155
191
169
95
104
161
160
168
226
208
198
118
168
137
95
130
195
135
173
67
103
107
152
146
148
159
187
126
143
87
92
108
152
151
170
135
124
158
49
81
35
62
38
104
39
20
51
26
64
18
35
59
115
126
136
62
99
106
109
135
170
150
136
162
136
194
201
224
229
192
255
215
228
229
229
229
224
226
216
198
197
255
202
220
171
180
255
255
255
255
255
255
255
255
255
228
255
255
219
225
229
224
219
216
212
220
229
189
223
226
255
226
255
137
110
73
107
78
74
69
23
64
93
26
2
0
0
48
45
39
48
0
0
4
46
112
97
105
101
111
60
57
61
114
73
90
102
141
54
33
6
60
98
0
0
50
0
0
0
51
44
0
0
41
42
43
42
42
45
45
41
43
43
43
43
5
0
41
36
40
44
0
0
0
0
0
0
0
0
44
0
0
47
0
0
0
37
43
0
0
43
50
46
46
47
49
0
0
0
45
47
44
49
168
113
145
144
24
11
66
53
73
27
162
72
0
109
112
79
98
52
44
106
6
128
138
56
85
87
57
20
91
84
46
95
79
148
141
69
67
126
131
147
36
119
38
22
61
91
77
78
13
38
38
77
74
42
56
22
77
31
62
54
66
77
107
162
164
155
134
128
95
75
85
55
84
106
76
156
91
146
144
109
86
100
109
119
96
83
98
106
117
99
85
118
106
134
221
211
149
127
130
210
168
107
153
166
177
183
157
107
110
187
179
155
206
194
145
114
149
86
86
102
144
115
98
95
27
76
74
95
35
57
30
97
57
85
58
75
43
32
78
84
114
116
157
218
133
89
124
151
143
92
110
129
181
121
243
203
209
229
224
229
229
220
255
255
255
249
199
191
205
211
187
197
229
255
255
255
255
255
255
221
255
228
227
226
255
221
229
211
218
255
255
255
255
201
255
255
255
229
229
142
114
77
131
61
55
37
22
60
37
0
51
48
46
48
45
34
50
0
57
4
115
109
98
105
105
112
61
59
61
112
86
109
114
140
27
34
53
70
97
1
0
0
0
0
46
52
0
0
0
43
43
43
0
0
42
0
0
42
0
39
42
1
0
43
0
40
44
46
0
0
0
0
0
0
0
0
0
0
0
41
44
42
38
42
45
0
44
49
41
47
0
0
0
0
42
39
41
44
46
133
47
190
129
23
23
136
52
58
40
225
82
12
74
85
135
109
107
51
91
70
89
134
137
75
43
101
39
98
87
15
55
72
66
172
139
25
38
144
63
21
4
43
108
33
155
123
122
111
120
58
41
181
82
40
3
44
54
60
47
70
150
190
116
123
111
85
145
102
103
112
74
117
129
84
145
80
85
125
95
101
177
179
114
88
97
99
144
109
130
201
162
147
149
175
112
178
157
152
212
147
89
120
198
115
97
139
164
134
157
133
156
189
131
100
103
114
118
74
129
117
133
153
104
84
112
121
80
59
47
36
53
87
105
89
77
59
65
72
110
94
85
119
110
151
200
158
101
144
177
184
109
188
253
173
222
255
255
255
255
255
226
255
255
255
255
212
201
229
222
212
200
227
255
255
255
232
255
255
255
255
228
226
255
255
225
225
255
255
255
255
255
255
255
255
255
255
255
199
96
140
120
115
73
25
26
25
24
117
37
51
49
46
45
42
0
55
1
10
56
124
108
98
103
112
116
65
62
113
109
96
88
94
48
45
54
47
67
12
13
0
0
39
52
50
49
0
0
0
0
47
44
0
0
0
0
0
0
0
41
0
44
0
0
0
0
0
0
0
0
0
36
0
44
0
0
0
0
0
39
42
40
42
41
40
0
47
46
37
52
2
0
0
0
44
39
39
45
46
88
136
160
138
33
52
55
8
47
68
224
29
72
60
101
77
0
76
81
142
116
63
136
158
53
0
118
52
50
23
55
89
52
1
41
102
30
0
100
41
8
39
118
139
13
106
151
74
110
48
82
130
114
55
54
24
42
108
97
78
72
64
126
111
118
124
98
97
76
82
73
93
131
119
135
126
108
109
179
118
213
203
178
164
153
147
123
184
163
110
135
198
197
163
145
148
99
144
145
134
163
170
136
94
80
102
146
133
133
115
142
182
202
179
119
79
72
66
62
126
160
146
142
138
154
154
153
132
127
84
75
95
31
125
87
120
70
79
52
73
96
108
80
79
148
175
166
125
118
138
163
209
150
199
167
242
194
255
255
255
255
255
255
255
255
255
223
207
229
217
229
255
255
255
255
203
233
255
255
255
255
229
225
255
255
229
255
255
255
255
255
255
227
255
255
255
255
200
211
116
147
86
87
84
71
45
13
73
93
60
49
47
43
40
0
0
59
4
7
65
128
103
101
105
118
69
71
118
107
101
34
81
104
13
44
51
0
14
0
1
0
0
0
47
53
43
0
0
0
1
0
44
40
0
0
0
0
0
0
46
0
39
41
0
0
0
0
0
0
0
0
0
0
0
0
42
0
0
0
37
41
39
45
41
0
45
47
0
36
49
0
0
0
0
43
40
39
44
47
155
130
74
59
59
54
13
42
15
130
72
102
101
89
65
91
72
61
76
31
119
115
83
111
46
5
41
0
0
30
56
62
26
63
62
0
31
21
89
75
128
73
73
22
32
94
107
109
78
84
77
77
69
64
30
87
69
3
90
56
117
177
148
153
149
113
151
70
83
53
58
90
55
96
110
96
120
75
161
100
114
119
173
147
84
60
112
117
115
145
151
184
189
144
221
170
176
150
124
154
154
208
131
146
126
131
122
103
167
138
133
205
193
188
162
110
162
188
135
127
187
212
207
170
221
239
207
207
209
163
164
101
95
122
26
55
87
41
76
125
113
77
74
76
109
160
199
184
197
232
182
116
80
152
193
187
196
230
157
193
255
248
255
255
255
255
255
215
218
255
255
255
255
255
255
249
255
217
223
213
207
228
255
255
255
255
255
255
255
255
255
214
211
213
209
209
219
255
150
69
119
135
100
26
58
22
6
6
0
48
48
47
43
41
41
44
56
51
0
60
128
89
60
64
71
74
128
118
96
83
72
92
128
0
0
50
26
4
7
3
0
0
0
61
51
0
0
0
48
0
47
41
0
0
0
0
0
40
47
0
37
0
44
42
0
0
0
40
0
0
0
0
0
0
0
41
0
1
0
39
43
40
44
0
0
48
39
0
0
0
0
2
0
0
39
37
33
40
52
133
51
117
99
86
0
40
17
75
175
35
3
62
113
58
90
82
119
79
32
74
106
124
58
106
68
0
110
19
26
55
58
23
56
64
9
51
47
87
32
121
106
117
80
14
31
89
70
27
127
29
92
99
40
61
87
148
38
78
69
91
150
188
171
154
145
135
79
92
117
88
76
91
81
108
117
83
144
146
187
122
119
131
127
210
199
139
111
115
213
196
134
146
220
197
143
140
79
169
193
207
205
152
130
146
145
156
153
134
127
144
204
218
201
143
155
210
193
207
203
214
234
174
229
168
221
219
226
215
174
133
119
129
79
136
95
94
79
61
55
79
99
95
108
50
114
103
167
100
153
122
148
179
172
97
224
154
248
206
255
255
255
255
255
255
229
211
213
255
255
255
255
245
255
247
255
255
222
221
213
200
217
248
252
225
220
255
255
255
255
252
214
216
217
255
255
192
126
54
131
99
116
64
8
0
0
13
8
18
0
47
47
44
40
39
48
42
59
45
92
66
48
53
55
71
125
85
47
31
22
102
24
18
0
0
72
0
0
0
5
0
0
0
57
0
0
0
0
44
46
46
0
0
0
0
42
41
37
50
0
0
0
0
43
0
0
0
41
0
0
48
43
0
0
0
43
47
0
0
0
40
42
40
47
0
0
0
0
0
0
0
0
0
0
34
47
46
51
41
159
130
77
116
147
50
0
84
64
47
98
64
101
97
154
84
66
93
24
50
73
147
89
95
140
81
88
143
86
93
191
106
69
36
23
110
132
96
42
90
117
134
90
103
26
61
78
19
81
51
86
91
88
14
12
0
106
102
96
22
79
102
117
160
145
126
161
165
147
168
121
62
83
70
114
73
72
68
122
103
89
196
180
220
219
151
115
121
139
182
156
208
170
208
146
154
144
135
210
225
251
245
134
152
138
146
155
147
126
142
173
177
174
237
163
218
214
208
216
222
230
182
175
183
183
181
234
236
181
178
154
135
130
104
147
128
160
132
131
61
13
72
114
92
96
112
122
75
117
105
94
102
141
137
255
127
175
159
229
214
255
210
210
255
255
207
223
225
203
255
255
254
255
255
255
255
225
229
211
255
255
205
193
193
229
186
229
193
233
249
218
241
213
229
201
206
147
136
118
154
77
86
2
0
14
56
64
2
14
47
46
46
44
41
41
0
56
6
59
85
65
48
65
61
125
73
60
71
106
12
22
0
42
5
9
23
2
0
0
0
0
0
0
53
0
0
0
0
0
0
0
0
0
0
0
39
41
44
46
0
0
38
47
0
0
0
0
0
0
0
45
42
42
40
0
41
44
0
0
43
43
41
39
0
0
0
0
0
0
0
0
0
0
0
37
50
50
46
38
119
132
86
109
130
142
55
37
181
80
67
135
69
99
147
49
60
24
31
78
93
148
82
98
81
76
110
123
85
50
156
95
83
123
108
106
150
177
67
126
116
182
171
122
49
38
21
0
50
56
79
118
61
32
120
74
72
66
0
28
70
78
103
142
91
89
162
142
144
136
74
106
159
168
146
88
117
105
93
119
123
190
182
227
136
144
123
148
140
189
221
142
121
228
209
133
211
249
224
230
237
197
235
221
161
131
203
205
196
186
194
130
142
171
198
212
216
238
211
166
188
244
188
193
248
192
197
191
250
229
219
194
111
99
158
150
149
127
148
79
60
100
86
101
104
106
151
142
117
97
90
126
82
83
214
195
181
255
255
255
191
170
255
255
255
196
255
228
210
204
255
217
255
255
255
255
255
217
225
217
214
255
251
213
214
241
254
255
235
255
254
239
249
255
220
197
195
163
116
93
94
64
0
3
68
0
9
47
60
48
47
45
43
0
42
40
56
0
40
77
58
34
61
105
125
137
73
95
58
0
0
48
54
27
13
19
1
1
0
0
0
40
45
49
0
0
0
0
0
0
41
0
0
0
0
38
40
47
41
0
0
38
43
40
0
0
0
38
43
0
39
40
44
44
0
43
43
0
45
44
46
41
38
0
0
0
43
43
0
0
0
0
0
0
37
49
51
42
39
127
63
75
99
108
75
85
52
162
155
85
99
46
94
147
70
107
26
55
0
160
70
163
71
60
145
104
92
74
91
130
110
26
113
84
56
105
130
128
73
52
189
180
140
72
42
26
13
0
93
64
33
63
19
20
90
51
84
21
46
51
69
94
95
81
152
94
155
109
154
165
164
150
96
112
105
119
102
139
204
197
177
155
176
160
138
143
161
142
158
187
139
149
241
191
184
172
210
123
209
171
127
172
125
166
217
166
218
182
206
134
120
110
117
222
238
235
197
180
186
187
255
207
202
199
192
204
242
252
188
146
164
95
113
109
148
160
162
133
131
80
83
80
88
89
88
104
141
119
135
190
182
102
118
217
211
199
233
204
229
135
226
210
255
255
211
229
220
209
217
178
255
252
255
255
255
223
205
223
201
187
215
220
255
201
250
234
237
229
183
166
241
188
255
229
191
207
191
109
150
127
39
9
62
53
0
5
47
54
0
45
46
0
0
42
44
41
32
69
70
61
29
106
97
132
151
164
96
22
0
0
1
50
97
57
59
0
4
1
0
0
0
44
47
0
0
0
0
0
0
46
43
41
0
0
0
40
42
40
0
0
41
42
0
0
0
0
0
39
0
36
39
42
46
0
46
46
47
46
43
49
45
38
0
0
40
45
37
0
0
0
0
0
0
35
44
46
41
44
80
107
6
97
75
45
53
124
74
112
43
111
71
165
85
56
31
0
42
12
15
36
34
30
79
146
82
59
105
54
88
139
60
102
36
71
130
87
100
100
72
113
129
105
154
92
107
0
11
30
35
100
59
125
72
111
42
77
43
76
90
101
71
158
166
193
100
75
77
111
124
125
103
88
106
74
83
113
138
208
201
249
216
207
129
200
218
149
174
162
138
176
201
203
131
174
197
172
179
213
214
129
101
116
99
200
168
173
181
151
130
152
192
170
255
242
182
183
153
214
251
255
206
203
195
250
200
237
226
168
118
166
117
76
137
130
142
166
153
159
149
119
113
80
42
102
80
113
116
183
85
213
203
177
206
191
205
217
150
173
173
184
223
211
226
223
199
225
191
208
217
217
255
251
255
248
255
255
197
200
185
222
165
235
240
235
251
201
202
211
221
255
255
213
217
200
146
101
121
153
97
65
79
55
7
7
51
55
50
0
47
46
45
0
0
0
25
123
69
50
106
106
101
96
133
162
135
99
0
76
34
62
10
52
47
46
36
42
0
2
0
0
40
48
42
43
0
0
0
0
0
44
41
39
33
39
40
38
0
0
43
46
42
42
0
0
42
0
0
39
47
50
47
38
0
0
43
49
47
0
0
49
40
45
0
42
0
0
0
0
0
0
0
0
44
45
43
40
43
62
158
33
133
20
4
79
135
90
148
72
107
37
151
61
94
154
8
105
8
26
47
23
41
203
178
6
5
33
0
92
105
30
80
23
20
75
126
125
72
74
38
149
96
71
82
52
9
0
47
86
127
50
96
108
122
87
87
89
52
132
144
167
187
195
162
113
123
139
59
71
77
65
101
139
115
110
150
148
214
176
135
143
246
226
192
212
179
130
127
151
184
159
125
123
183
183
162
173
157
163
78
168
122
149
219
190
175
186
193
148
193
170
178
168
178
186
243
186
237
255
204
201
254
249
255
189
185
158
229
100
85
87
53
107
152
149
161
127
148
158
163
163
107
104
74
143
65
112
131
102
159
200
198
198
208
248
255
229
211
222
175
98
255
255
255
205
208
203
175
149
104
229
194
255
251
247
244
203
183
176
207
217
211
189
222
220
229
242
252
255
218
210
204
213
205
168
118
165
143
56
47
76
51
9
43
51
1
0
0
0
47
46
0
0
6
61
81
113
40
52
60
78
83
132
156
137
116
62
35
6
0
54
0
49
45
39
43
48
0
0
0
40
47
44
41
47
47
40
41
0
43
43
41
35
0
37
38
37
44
39
43
38
40
0
0
41
38
44
44
47
46
45
40
41
43
41
0
0
42
0
0
39
46
0
0
0
0
0
0
0
43
0
0
0
46
42
44
42
72
20
49
141
65
5
0
47
103
50
86
127
95
62
22
57
47
87
65
52
72
43
38
137
211
153
42
69
88
49
91
60
20
205
88
114
114
140
79
41
107
69
38
20
75
116
160
41
45
136
64
58
0
55
37
87
22
95
90
102
126
143
170
171
164
167
132
134
131
77
95
64
97
105
74
170
128
120
157
212
227
255
206
136
160
149
141
197
138
181
168
109
134
94
177
143
73
65
112
169
207
189
142
185
241
161
176
170
224
239
182
151
237
248
236
205
207
245
255
255
255
209
205
203
201
255
233
182
147
126
98
104
91
23
92
128
128
166
127
109
157
92
103
100
89
55
113
54
54
81
96
122
143
216
189
214
252
245
255
152
182
94
116
204
213
189
220
210
211
215
153
156
202
205
211
252
239
249
179
177
190
157
218
233
246
177
164
229
239
239
255
250
215
209
177
196
177
202
166
144
114
94
76
0
3
7
0
0
0
1
0
48
0
0
0
34
76
53
116
34
118
119
63
26
146
135
158
60
1
17
11
0
35
47
48
43
43
50
51
0
1
1
0
0
0
0
0
48
37
0
38
45
47
45
42
36
0
0
34
41
34
39
34
0
0
0
0
37
0
47
42
39
41
46
46
47
0
0
0
0
0
0
38
45
0
0
0
0
0
0
44
47
0
0
42
44
38
51
44
46
97
61
25
42
6
47
110
113
50
41
92
78
19
60
63
62
68
32
59
67
92
66
114
173
102
88
65
145
0
95
35
125
159
111
108
152
132
130
84
98
72
41
10
25
140
102
62
124
97
31
53
17
15
113
83
121
20
135
89
101
91
128
161
148
103
119
108
78
40
81
90
80
83
83
112
116
147
179
252
231
110
160
148
131
192
214
159
159
163
143
128
148
156
150
134
136
133
158
143
114
148
133
191
225
134
160
212
204
170
121
170
186
221
255
200
196
200
244
237
255
214
207
200
200
246
242
174
208
94
98
89
82
22
48
52
115
152
134
85
171
146
74
103
38
133
60
105
71
93
124
128
238
204
211
255
232
255
255
253
172
141
189
211
222
205
227
214
211
221
176
175
176
197
196
175
162
222
159
170
166
218
174
179
181
188
182
234
237
248
255
250
252
199
176
185
178
163
208
149
125
129
22
0
0
0
0
0
0
0
0
0
0
0
17
71
120
117
108
101
69
78
50
102
125
164
108
60
38
0
45
45
46
0
39
39
44
53
45
0
46
0
0
0
3
0
0
0
0
0
42
40
50
45
40
38
0
0
42
43
46
41
43
0
35
0
0
36
43
0
40
48
52
41
44
0
0
0
0
0
0
0
41
45
42
0
0
0
0
0
0
44
0
44
50
0
43
46
37
106
50
105
20
83
0
3
92
99
63
73
44
97
7
27
91
78
48
56
72
52
97
101
113
99
140
26
22
112
52
7
45
56
170
104
130
76
55
83
121
125
11
130
0
0
134
37
116
75
52
31
93
67
12
96
85
103
66
44
118
127
73
183
118
113
153
133
126
108
120
109
84
88
51
79
95
114
158
164
216
202
249
255
222
255
231
181
149
165
154
132
148
159
181
153
158
185
187
176
125
198
229
140
143
136
186
222
255
129
138
214
160
164
188
192
194
248
203
209
211
222
197
241
189
198
197
248
225
210
175
104
94
70
33
14
101
71
112
88
85
95
106
192
133
77
100
87
82
87
14
69
120
198
179
248
188
208
255
179
178
163
199
213
230
242
217
201
220
201
173
196
189
154
152
206
161
150
151
217
142
137
166
155
191
178
179
181
190
194
245
247
243
227
217
191
198
170
191
202
146
125
128
13
1
0
0
0
43
0
0
51
0
6
36
110
61
118
70
105
75
14
0
0
89
115
27
26
56
47
42
44
44
0
0
0
0
50
52
47
48
0
0
0
38
3
0
37
43
46
42
42
41
48
42
42
0
43
41
47
46
0
44
44
42
36
0
0
36
34
43
45
39
38
42
44
42
0
0
0
0
0
0
38
38
35
36
41
0
44
41
0
0
40
40
46
0
0
0
41
61
180
55
69
61
89
113
156
100
79
73
120
134
116
58
116
114
101
38
42
38
92
127
81
22
48
87
14
70
20
6
0
83
140
107
66
149
95
37
72
45
54
57
7
53
150
57
151
108
69
158
26
0
53
116
59
104
109
110
95
89
78
147
142
118
132
147
166
137
126
117
90
85
38
64
89
129
133
162
203
186
222
204
145
181
142
164
172
111
143
135
186
134
161
188
185
192
180
148
194
183
144
89
206
182
123
165
168
169
167
177
227
205
184
188
207
202
255
255
205
210
209
210
202
198
196
233
188
167
121
67
75
96
32
57
37
12
68
119
85
94
22
51
109
90
84
63
81
59
58
61
78
111
154
128
167
246
155
188
209
183
245
142
202
160
159
180
204
174
161
183
222
183
170
164
159
144
209
226
178
175
161
172
156
187
243
206
186
200
200
205
169
219
255
241
182
238
182
176
148
143
70
21
55
0
0
0
33
46
44
0
22
66
50
104
115
109
34
0
8
4
47
41
0
0
0
33
37
7
0
0
47
53
44
0
0
0
0
47
46
0
0
0
41
0
1
38
42
49
40
42
44
0
37
37
0
39
41
39
36
43
4
58
45
37
0
0
0
0
46
41
45
49
44
45
43
0
0
40
46
0
0
51
41
38
45
46
47
45
0
0
40
0
38
39
40
40
43
46
90
128
55
31
22
69
53
132
58
80
27
11
34
22
72
91
58
72
50
48
109
95
141
70
62
113
0
70
29
62
37
111
109
139
155
109
64
50
70
70
123
83
103
59
49
136
167
217
134
17
108
36
48
40
135
24
121
58
90
25
53
56
94
142
122
139
177
160
129
79
109
91
128
87
88
65
96
112
136
198
216
211
125
125
160
156
144
106
59
105
159
172
117
190
207
205
197
105
145
179
204
130
128
208
136
207
195
156
175
241
152
191
165
226
255
251
204
219
255
255
255
217
209
230
192
179
148
115
149
91
58
105
80
94
10
29
14
20
22
58
65
31
112
96
128
92
109
109
69
46
27
34
25
163
97
210
134
177
208
174
150
212
225
134
131
137
148
163
200
146
142
191
192
195
154
149
99
148
161
222
180
188
200
181
206
198
235
242
238
190
202
185
254
245
252
226
221
165
165
137
125
67
44
80
81
19
61
45
0
16
50
55
108
106
111
111
98
26
0
0
8
46
46
42
50
56
74
32
56
50
0
0
0
42
47
0
0
0
43
0
0
0
0
46
38
5
0
0
0
39
42
46
0
0
36
33
34
41
36
33
40
54
5
0
0
0
0
0
0
44
39
49
55
43
0
0
0
0
45
45
0
0
0
36
33
41
42
47
43
42
0
0
0
41
40
35
32
40
45
120
54
62
57
46
42
68
86
80
76
78
129
113
56
39
29
33
75
41
85
121
143
104
64
43
63
0
72
83
1
83
96
54
97
98
122
52
49
24
35
50
50
110
96
83
167
109
107
119
9
113
64
76
129
69
100
141
53
79
25
94
138
113
106
108
143
137
143
107
50
93
114
133
84
99
76
97
124
207
217
201
188
143
193
159
147
147
94
125
148
141
175
214
172
232
213
201
121
167
108
158
158
168
57
186
200
191
234
255
208
235
213
242
192
255
255
255
210
203
218
210
255
215
255
180
170
152
164
129
102
95
100
102
61
75
5
28
41
0
46
97
44
84
29
73
125
111
133
97
82
27
0
57
116
140
172
167
176
222
160
208
140
221
121
104
102
117
173
131
120
179
167
199
178
135
118
100
100
192
198
125
133
162
166
185
195
243
170
162
177
205
188
212
163
250
214
144
178
166
135
114
118
53
43
113
118
70
73
63
62
47
57
56
50
63
116
20
5
0
43
0
2
55
47
52
62
2
0
0
64
44
0
0
0
49
45
0
0
0
0
0
45
46
0
0
6
0
0
0
0
41
47
0
0
39
36
37
43
39
36
39
46
0
0
0
0
0
0
41
44
43
45
46
0
0
0
0
0
0
0
0
0
0
0
40
45
0
0
42
43
42
0
44
42
40
33
30
38
42
45
96
45
111
110
92
87
143
98
110
12
87
82
139
9
0
43
70
64
72
22
83
135
56
100
47
46
135
179
41
120
70
79
149
16
104
82
60
120
87
13
94
48
67
95
149
81
113
149
142
127
74
107
70
58
51
142
94
14
27
143
98
124
81
88
60
146
145
127
96
100
132
157
161
119
114
105
184
189
201
227
223
176
163
157
145
127
164
153
122
184
225
156
191
218
193
117
153
94
121
148
227
134
152
241
184
210
215
196
221
205
225
237
196
241
255
255
255
247
210
212
194
192
190
162
148
127
156
133
61
89
93
80
78
83
71
0
10
77
23
10
86
82
58
36
51
77
110
101
66
21
0
47
105
118
130
128
185
207
171
172
189
197
120
98
94
109
166
193
114
167
183
120
188
187
131
123
178
215
183
198
141
173
132
181
203
160
196
144
165
203
180
206
164
227
204
165
171
94
81
61
144
123
53
53
53
57
60
54
47
101
97
101
121
110
97
56
0
1
53
35
0
36
40
45
42
0
10
0
0
43
46
45
0
0
43
37
0
0
0
0
0
0
0
43
5
0
0
0
0
0
0
0
43
40
41
42
0
0
39
39
41
0
0
0
0
0
0
41
47
47
42
41
0
0
0
0
0
0
0
0
0
0
0
0
0
5
49
42
43
41
47
0
41
39
37
35
39
40
58
100
133
131
116
105
47
70
73
138
129
70
79
114
0
116
0
80
53
148
90
121
73
40
54
69
105
131
87
34
39
41
67
162
90
69
61
69
137
39
53
23
81
71
94
68
0
34
148
181
188
103
52
137
43
151
155
102
10
44
117
47
101
127
106
100
57
95
140
119
132
90
172
114
76
53
75
111
155
216
167
155
169
157
137
150
141
134
113
183
197
130
175
210
187
120
173
73
139
147
238
223
187
217
228
231
172
192
222
163
188
231
201
248
216
202
250
255
255
255
255
177
176
177
157
146
122
139
112
52
68
91
75
67
66
58
39
0
0
53
52
64
73
47
114
32
11
120
110
86
17
24
17
69
99
86
97
167
164
184
167
169
135
172
102
105
112
147
171
147
183
130
113
166
183
191
166
179
190
197
153
133
141
138
175
123
134
195
194
158
187
150
180
215
175
179
164
163
82
97
87
83
73
76
64
64
56
104
51
108
61
58
100
112
107
51
58
59
0
0
41
40
45
59
45
48
3
0
0
0
0
42
45
42
0
0
0
0
0
0
2
0
0
44
50
56
0
0
0
0
0
0
0
45
38
44
45
40
38
0
0
41
47
0
0
0
43
35
49
51
47
0
44
0
0
44
44
0
0
0
0
0
0
0
0
47
55
52
43
43
0
0
0
39
37
41
42
40
39
21
59
153
150
64
63
31
78
41
66
88
79
101
114
87
112
97
55
51
84
110
37
71
37
6
70
70
87
103
19
46
0
107
145
131
91
106
87
63
40
30
78
21
5
49
99
127
151
168
153
164
58
63
129
128
182
33
74
0
48
103
105
48
113
132
122
143
122
114
167
163
150
99
93
66
44
68
116
151
181
166
169
176
137
148
138
113
151
161
195
151
107
240
209
205
153
133
94
202
192
197
85
233
228
188
212
106
154
220
188
137
234
187
155
240
189
242
255
254
255
236
212
153
211
174
186
163
97
64
105
27
60
86
78
73
53
45
0
51
55
59
62
22
18
74
42
88
86
108
78
4
23
5
77
72
95
110
147
211
183
196
173
151
164
102
111
107
151
162
101
108
109
182
160
157
175
168
194
190
216
164
116
174
184
184
133
116
195
141
195
239
146
155
122
176
167
90
110
150
137
136
141
127
121
64
64
60
56
57
102
58
65
118
59
40
0
53
62
52
45
0
0
1
2
50
50
0
0
0
0
0
47
43
37
37
0
0
0
0
0
0
0
0
37
45
49
4
0
0
0
0
0
42
46
37
36
42
41
38
37
41
0
0
0
0
0
0
44
51
50
42
0
0
0
0
47
46
0
50
43
0
49
46
2
0
43
0
0
0
0
0
0
0
39
38
40
36
34
43
19
56
89
106
66
31
47
51
117
71
29
93
29
120
69
117
85
70
89
100
89
44
44
69
80
27
0
27
22
89
68
29
138
97
62
115
66
21
136
98
57
84
73
99
154
86
66
155
42
94
100
63
94
69
113
136
146
53
12
42
45
30
40
108
116
153
218
194
210
161
148
89
40
40
58
54
66
92
163
167
191
126
217
191
124
127
186
175
124
123
121
167
185
210
172
130
181
172
177
123
132
159
207
197
153
182
139
173
226
193
159
169
200
203
254
226
247
255
241
161
192
217
152
124
105
170
137
142
115
99
33
80
2
1
45
46
0
0
0
43
49
0
3
49
68
63
71
95
89
55
33
73
0
66
78
72
75
91
160
165
187
166
154
153
61
126
149
96
104
99
101
100
174
152
162
170
173
172
166
191
197
194
180
180
174
137
147
140
144
202
224
148
177
172
144
144
155
94
133
134
130
76
124
126
69
117
58
56
61
109
116
112
105
24
3
56
55
59
70
93
92
28
18
5
0
0
0
33
54
0
0
0
38
38
41
0
0
0
0
0
42
39
35
46
40
0
1
2
0
48
43
53
40
0
0
39
32
42
52
50
49
42
0
0
0
40
0
41
42
47
45
0
0
41
45
45
44
0
50
40
0
0
44
49
50
0
0
0
0
0
0
0
45
45
38
40
0
0
0
0
78
68
62
50
98
116
97
74
96
50
131
110
97
114
103
87
32
20
102
141
0
57
86
72
0
54
77
22
78
83
66
157
109
105
113
102
46
84
52
5
49
117
102
160
72
49
85
107
68
105
35
84
57
143
167
63
66
75
83
98
30
74
167
169
165
224
207
157
155
154
140
81
79
82
60
63
134
174
165
144
255
151
221
219
171
132
149
119
121
87
146
186
120
117
243
145
187
222
146
137
114
158
185
157
153
150
200
154
193
226
139
171
178
169
255
250
245
230
170
160
152
112
115
91
134
130
73
86
73
64
44
53
42
0
6
55
0
0
0
0
0
49
46
58
52
11
92
89
40
35
81
68
57
69
84
83
106
142
142
170
186
190
148
121
130
140
145
97
96
96
93
160
164
164
165
171
166
170
182
178
174
163
187
140
195
149
143
196
146
210
189
165
161
84
88
89
132
71
76
128
127
120
67
63
112
110
56
113
113
112
102
102
85
24
28
19
24
25
101
52
92
89
25
24
23
16
0
9
5
40
0
39
0
36
37
38
38
0
0
38
37
37
44
0
0
0
2
0
0
44
50
42
38
43
41
0
0
47
46
49
44
45
0
41
41
0
0
0
44
0
0
0
38
42
39
38
0
0
0
41
45
0
0
0
0
38
44
46
47
46
44
0
0
37
43
0
0
0
41
74
91
55
36
189
139
90
175
152
97
94
67
122
82
67
84
59
63
50
100
53
46
61
120
39
54
78
59
59
139
105
161
66
86
48
90
54
26
102
59
17
20
74
115
80
116
122
187
31
40
51
38
48
127
129
19
68
84
25
83
111
82
202
185
160
151
157
130
151
158
151
154
90
122
108
114
145
168
167
209
154
217
169
224
176
166
113
140
78
144
74
232
141
192
165
155
145
139
116
171
94
155
96
189
151
174
209
110
167
207
158
133
170
149
147
228
238
241
245
217
206
153
149
159
107
140
44
51
52
63
65
55
45
21
29
21
11
0
0
0
50
45
43
61
74
27
16
28
33
44
80
89
63
71
91
93
102
132
130
161
169
167
147
135
135
132
78
80
89
93
90
95
164
162
150
165
163
164
166
170
184
105
156
162
115
135
138
187
131
135
121
161
94
85
141
77
75
69
68
123
122
59
58
56
59
59
111
115
112
60
49
49
45
46
99
89
46
35
48
42
34
41
87
89
95
92
76
9
14
50
42
42
39
32
35
40
0
0
0
0
39
44
0
0
36
0
1
0
0
0
43
46
42
41
43
41
0
42
42
48
44
44
47
40
37
39
0
0
40
0
41
0
0
0
0
0
0
0
0
41
41
0
47
49
48
40
42
44
45
44
42
0
43
40
0
0
0
0
6
73
22
6
0
167
102
96
148
86
106
77
101
82
89
55
46
12
72
59
31
25
26
102
116
53
49
54
37
48
25
81
109
110
92
77
42
34
82
112
94
69
0
31
10
62
82
172
145
47
39
0
7
68
119
87
88
79
92
48
77
105
145
132
108
100
136
101
164
152
157
161
133
133
115
100
103
102
165
191
184
218
219
238
198
200
121
169
130
109
97
174
82
84
193
77
109
179
136
81
163
70
228
210
153
188
204
161
177
194
123
210
117
167
153
170
182
240
212
222
232
225
221
164
159
106
144
87
93
71
67
66
29
98
98
46
85
22
55
0
0
47
43
40
65
77
84
22
73
41
53
81
95
81
86
87
96
26
52
49
96
117
166
144
135
129
123
123
71
90
150
95
105
163
169
92
170
161
167
161
162
172
155
106
108
112
120
180
124
120
116
109
160
81
85
136
126
124
66
61
62
62
52
55
109
65
61
114
116
60
62
55
50
51
52
104
102
111
100
52
46
38
49
46
44
103
97
95
75
89
62
51
47
40
36
37
0
0
0
0
0
40
46
37
0
0
0
0
0
0
0
0
47
45
40
42
0
0
0
0
49
42
0
48
36
32
0
0
0
38
0
0
0
46
44
0
0
0
0
0
0
0
0
47
48
46
42
0
0
0
39
38
47
49
45
0
0
0
0
28
80
34
62
33
72
49
119
128
142
71
80
82
32
44
75
42
11
51
78
7
40
26
72
105
53
75
36
34
67
97
95
110
88
137
178
69
109
135
118
82
104
0
38
94
106
67
129
131
29
6
11
24
76
83
60
86
28
77
50
145
125
146
101
97
120
163
143
173
180
185
158
166
152
117
110
113
72
102
158
184
206
235
215
206
176
138
127
109
88
76
129
61
125
79
163
140
228
157
117
80
167
130
131
156
168
156
107
142
155
146
195
152
156
148
148
214
204
208
208
243
184
153
218
154
164
137
88
81
14
0
59
67
103
50
97
88
31
65
0
0
47
43
43
68
62
79
90
32
42
40
47
35
88
96
86
100
29
60
48
81
99
97
87
79
126
62
70
68
88
93
140
154
105
91
156
182
160
162
146
148
151
149
117
120
119
105
171
119
123
160
111
162
132
135
127
125
61
58
60
57
60
106
59
60
118
117
116
62
59
57
110
53
107
107
106
112
109
110
58
62
104
114
61
50
45
90
94
91
99
79
67
60
50
47
0
0
41
42
0
0
0
41
39
0
0
0
0
0
0
0
0
47
44
40
40
0
0
0
0
51
0
0
45
35
33
0
0
0
39
0
0
0
45
40
0
41
43
42
0
0
41
42
0
0
41
44
40
0
0
39
40
46
0
0
46
0
0
0
86
82
32
0
46
0
42
139
81
151
56
112
39
24
20
4
140
118
35
34
106
35
74
88
125
115
23
103
25
69
93
117
66
120
118
43
0
53
208
126
91
13
56
42
106
117
71
67
38
80
230
147
91
32
60
84
115
95
116
105
63
69
79
145
151
103
160
154
164
158
155
149
135
127
55
104
105
47
36
43
133
127
211
196
178
174
138
123
79
137
82
78
92
125
72
183
170
114
89
121
108
168
73
134
187
195
138
190
221
121
225
186
178
112
122
118
161
173
225
189
186
214
143
154
162
148
74
60
109
41
17
0
12
0
0
0
31
33
30
47
45
48
42
49
73
18
22
35
42
15
12
34
31
31
89
57
50
80
68
67
67
82
137
131
128
128
62
60
56
124
72
121
143
92
84
92
144
141
140
137
131
73
84
98
136
114
114
159
124
122
113
103
86
138
134
132
70
61
114
69
67
63
65
68
120
120
112
61
66
66
62
62
114
62
116
115
116
117
120
64
118
117
110
118
113
106
99
105
103
93
85
109
95
76
65
63
54
41
36
0
0
0
40
37
0
0
0
0
0
0
2
0
0
0
0
0
0
0
42
43
0
0
42
0
0
42
39
0
0
0
0
0
0
0
0
0
34
45
46
0
0
44
43
0
0
0
0
0
0
0
0
39
39
0
0
35
0
0
0
55
82
49
5
19
25
24
72
97
122
112
35
80
2
69
35
30
80
51
0
85
86
110
17
34
18
44
67
55
75
114
107
140
104
145
58
48
58
110
135
91
0
41
66
38
95
78
32
27
77
150
51
50
77
55
39
86
105
67
74
66
124
89
121
129
162
79
137
137
85
87
132
131
129
63
47
95
99
94
48
92
226
200
172
162
169
135
95
107
130
53
99
93
96
190
173
92
130
164
104
145
141
97
91
192
166
149
206
203
179
185
124
185
97
87
144
115
143
138
108
184
158
152
141
129
128
61
80
125
78
56
16
29
0
0
0
27
31
30
45
42
43
44
51
58
75
16
43
35
71
8
31
27
43
102
108
46
61
61
61
113
72
127
132
76
77
123
55
58
134
74
122
85
87
134
140
137
140
140
86
80
76
79
92
133
101
96
143
105
103
100
95
135
139
133
132
124
119
120
72
117
66
68
118
118
64
63
63
67
67
65
65
117
65
117
116
116
117
118
63
106
114
114
119
108
110
101
51
104
96
39
105
97
40
28
77
71
8
0
37
34
37
39
38
41
41
0
0
0
1
2
0
0
45
0
0
0
0
0
41
0
0
42
0
0
0
42
0
40
39
0
0
0
0
0
48
40
40
0
0
0
41
42
51
45
50
1
0
0
0
0
42
39
0
0
0
0
0
0
115
75
59
94
56
0
87
46
37
80
107
47
98
64
62
24
88
79
60
146
78
82
112
0
0
155
16
31
37
50
146
118
121
120
97
85
91
223
142
81
20
60
35
20
54
43
64
82
42
88
40
8
35
74
141
140
130
69
59
64
95
92
100
155
148
100
110
81
75
81
87
78
77
126
116
98
92
29
42
48
107
136
112
124
129
164
220
120
155
87
97
96
114
57
204
145
110
110
172
217
124
104
115
130
133
97
186
184
182
195
166
160
153
125
126
148
101
121
96
154
157
138
84
170
134
124
106
126
69
100
66
86
72
26
0
0
26
31
31
0
42
44
50
56
44
81
13
45
25
22
59
78
33
40
108
113
57
64
67
67
68
74
75
75
72
127
77
58
63
83
71
123
78
134
129
82
129
138
137
88
83
81
79
90
134
90
82
82
89
86
88
87
132
139
131
130
127
124
74
73
116
122
122
117
63
59
63
62
66
67
67
67
67
119
120
117
116
116
64
59
105
112
114
120
113
112
103
98
106
48
31
93
39
91
88
32
26
19
62
42
0
0
40
0
40
44
44
42
0
1
0
0
0
40
0
0
0
0
45
39
0
44
0
0
0
0
45
37
44
42
0
0
38
49
40
0
42
38
38
0
0
41
43
53
49
53
55
49
45
46
0
45
40
42
42
40
0
0
0
156
81
26
107
89
0
89
93
96
61
138
83
112
44
56
37
39
27
115
125
150
62
73
26
135
117
36
43
20
95
153
126
96
140
102
102
114
118
111
51
3
24
104
9
115
50
76
131
122
74
48
12
27
138
163
77
68
51
77
86
92
92
93
97
140
86
89
81
80
88
145
86
73
65
109
101
98
40
27
103
169
112
159
88
129
171
144
167
143
114
70
84
78
59
97
126
165
168
141
176
106
76
76
104
130
159
195
154
172
186
171
157
158
159
148
107
115
113
67
108
88
119
73
90
135
114
105
119
84
40
84
72
72
63
0
5
30
37
31
0
0
48
1
55
49
28
69
88
73
74
65
75
48
95
61
65
120
72
75
75
77
129
129
71
122
125
76
73
73
75
69
73
71
129
127
130
75
134
135
86
84
84
82
141
84
139
131
136
135
130
84
86
84
86
78
131
131
128
76
125
66
123
121
65
62
60
62
61
65
65
68
68
68
120
120
117
115
63
61
107
65
60
111
119
123
110
102
92
107
105
41
52
49
94
90
32
23
74
67
5
0
47
43
41
41
45
43
43
0
0
0
51
0
0
0
0
0
0
44
0
0
0
0
0
41
43
45
36
44
0
0
0
0
53
46
47
38
0
0
0
0
0
0
0
0
0
44
48
46
45
0
0
0
40
40
42
49
39
0
129
115
0
48
72
27
73
152
146
115
88
89
118
79
111
49
5
79
123
86
105
101
32
111
90
51
96
89
52
72
92
101
124
70
63
63
159
98
132
72
46
96
84
155
37
46
131
129
110
91
82
62
130
120
112
61
103
92
81
95
67
130
133
96
96
88
80
72
83
85
86
135
121
115
104
100
101
104
36
34
130
79
93
152
127
103
107
81
111
78
83
142
55
104
114
172
154
124
165
147
144
116
93
63
120
168
163
146
165
158
160
163
138
45
83
76
104
112
71
87
94
106
90
108
136
80
62
75
90
89
112
54
84
24
21
21
90
41
77
0
0
0
52
47
69
73
77
74
32
78
79
72
56
56
117
112
63
64
71
122
125
121
69
71
74
127
74
81
76
71
70
71
66
73
75
78
78
80
80
83
81
84
84
137
134
138
133
137
134
129
141
140
139
135
78
79
81
75
124
122
121
71
70
68
66
63
60
61
63
63
67
67
119
118
66
65
62
62
59
53
69
114
112
65
69
104
100
34
106
107
102
50
96
90
42
86
75
79
76
14
57
55
49
0
42
40
37
42
57
0
35
49
0
0
0
46
44
0
0
0
0
0
0
0
0
0
0
0
0
39
41
0
0
0
50
47
0
42
39
0
0
0
0
49
45
38
0
0
0
0
42
38
0
0
0
0
47
0
0
60
5
3
88
72
80
110
89
117
125
124
100
141
73
75
32
56
121
109
126
117
104
76
47
97
80
62
69
20
80
119
90
41
123
86
22
83
76
68
54
44
113
109
99
149
91
106
87
101
99
142
69
51
84
89
108
117
97
111
144
177
117
151
91
88
124
77
83
140
136
84
128
128
74
53
96
97
87
81
18
8
41
52
137
113
110
107
102
152
78
53
105
128
55
169
105
130
159
168
156
156
134
102
101
103
157
148
120
140
123
128
155
97
91
69
93
103
125
127
92
87
106
57
59
66
92
138
200
126
52
64
66
55
56
99
44
39
31
41
40
44
0
64
58
87
72
80
87
40
92
86
92
46
41
100
118
68
79
75
72
130
124
126
126
125
73
75
68
71
75
72
70
123
72
75
75
78
76
124
74
123
125
76
74
119
66
68
70
72
118
131
123
129
130
82
77
72
72
71
70
72
76
128
127
124
121
117
114
116
64
69
69
69
69
69
71
68
67
64
58
60
116
69
117
55
101
53
30
99
48
61
34
40
97
86
84
83
36
88
76
72
72
11
2
57
44
0
46
4
0
41
0
0
37
0
0
45
0
42
43
0
44
0
0
0
0
0
47
39
40
39
41
0
36
44
44
0
0
39
48
39
0
0
44
0
42
51
0
0
0
40
42
0
0
0
0
0
0
0
87
21
19
92
45
28
30
93
45
86
83
103
108
108
0
96
56
26
24
28
103
93
63
33
33
48
88
94
39
198
0
53
67
128
149
51
45
51
41
99
109
79
71
95
92
31
34
18
113
97
137
92
91
100
124
123
150
103
102
167
144
95
96
141
94
136
148
142
133
133
135
122
136
77
46
96
104
102
65
5
78
72
125
135
162
145
109
96
137
165
82
73
141
39
86
117
157
147
141
134
131
144
153
148
208
170
124
91
151
159
129
164
147
80
55
69
51
80
83
93
74
101
92
137
88
138
148
212
95
38
80
70
47
42
50
47
88
75
26
45
48
0
77
74
29
25
75
104
29
44
28
55
96
55
57
123
64
121
73
68
127
121
72
122
118
118
125
119
124
122
69
75
127
125
126
72
76
75
122
123
67
69
76
74
65
111
114
71
70
61
68
112
68
77
85
75
119
125
126
124
123
80
79
128
73
121
120
117
66
66
72
72
70
70
70
74
71
71
68
62
119
116
119
118
117
104
57
30
44
44
48
80
95
92
93
95
101
51
51
88
83
30
16
2
69
54
0
2
4
0
42
42
1
0
0
46
43
38
44
40
41
47
0
0
0
48
46
48
42
42
40
40
42
40
41
41
0
3
0
51
42
0
0
0
42
39
0
46
46
40
40
48
0
45
43
39
35
38
39
86
17
55
55
23
134
164
21
57
73
84
94
146
118
18
87
101
74
97
91
39
70
57
43
22
34
51
46
41
168
42
105
133
144
117
71
0
67
72
67
129
107
86
85
84
97
56
75
93
98
139
119
171
166
178
129
160
137
124
123
151
159
99
145
96
98
146
141
128
141
134
136
123
127
94
50
37
17
23
31
63
134
136
130
151
148
152
175
185
108
60
130
102
115
44
69
104
167
204
136
135
157
145
118
174
131
130
77
157
79
163
149
56
47
24
30
98
40
81
118
57
128
88
100
151
129
135
108
175
77
47
122
46
113
51
59
84
55
40
45
0
7
24
43
89
35
16
48
35
49
40
43
51
107
114
119
68
73
116
116
119
118
117
69
125
125
69
131
129
72
75
78
133
132
130
73
68
71
76
121
69
123
129
76
80
130
126
129
71
79
76
60
145
104
71
140
80
79
130
128
127
125
131
127
71
69
67
68
69
67
70
71
72
72
125
125
58
67
70
59
49
115
126
122
108
49
51
35
47
98
103
37
46
92
106
103
101
94
88
31
93
36
29
0
76
16
10
9
0
0
42
50
0
0
40
46
48
47
43
42
40
39
0
0
8
58
45
43
40
43
48
34
46
0
44
0
47
0
50
0
45
39
0
0
42
36
0
44
37
44
40
48
44
44
45
42
39
44
0
50
0
94
75
75
139
87
0
66
82
64
107
89
23
99
103
87
81
48
73
87
61
32
56
68
0
7
24
89
42
139
153
132
131
1
49
62
56
96
58
65
83
64
61
83
104
60
82
90
99
122
129
121
116
110
162
158
105
161
116
114
114
102
140
144
103
128
134
128
142
137
136
126
77
49
48
35
51
33
10
26
58
95
133
121
156
133
188
72
69
101
112
62
53
48
42
101
99
115
131
150
194
126
186
100
115
109
120
96
82
82
125
146
87
52
68
74
44
36
96
71
132
93
131
57
89
63
155
135
88
41
99
67
107
129
88
49
0
50
32
0
0
49
100
44
88
64
45
50
40
60
45
60
112
125
122
126
71
68
67
66
122
124
66
124
126
74
76
75
127
127
127
77
129
129
126
71
71
76
72
121
65
70
123
126
125
124
131
127
81
77
78
101
166
127
150
131
79
78
77
128
126
131
75
72
122
69
70
71
69
71
72
73
124
126
121
115
122
69
66
69
53
102
56
68
103
50
31
44
46
47
34
43
45
43
93
91
90
89
34
105
57
12
38
33
14
4
6
47
0
0
43
0
0
44
47
47
0
0
40
41
41
0
0
3
0
0
47
40
42
49
35
44
40
0
0
44
47
46
46
48
47
0
0
0
0
0
0
38
0
0
42
44
43
0
42
0
40
0
118
45
104
55
0
80
56
67
150
142
131
133
119
21
9
51
99
71
117
50
126
42
53
52
72
35
0
39
111
1
109
100
59
45
74
34
48
17
126
90
89
25
96
97
49
53
64
101
145
160
124
130
120
162
164
168
166
120
121
138
154
106
91
141
91
99
70
73
131
146
142
136
112
121
114
57
50
98
85
40
23
20
87
106
109
136
120
140
151
178
135
97
58
57
66
52
81
102
66
94
133
189
181
171
166
112
85
35
86
55
111
56
59
71
67
99
42
53
46
73
58
45
71
72
122
152
55
127
176
64
83
110
38
31
30
50
38
0
45
39
67
10
57
103
97
40
13
44
59
37
60
53
63
60
128
124
129
70
122
118
63
124
126
70
75
129
129
126
75
79
76
125
126
127
128
127
73
72
72
72
68
60
72
127
130
131
132
133
131
135
129
154
103
178
142
105
78
130
78
77
129
75
131
128
125
124
123
124
125
71
73
74
127
126
127
119
121
74
69
125
128
117
117
65
67
56
105
32
46
51
59
38
91
36
38
34
81
85
88
28
77
89
22
37
92
63
54
7
2
0
0
38
52
50
50
46
44
42
0
0
44
41
0
0
0
0
0
44
41
42
51
39
43
0
0
41
41
47
45
44
49
50
0
0
0
0
0
45
38
41
37
43
43
43
0
0
0
0
2
64
73
133
119
32
86
137
37
179
89
84
43
126
68
77
105
48
63
60
82
53
105
64
46
41
32
0
60
73
74
77
122
98
55
62
39
62
62
81
36
27
38
102
122
57
98
169
170
180
173
173
124
113
161
150
153
134
138
84
140
137
75
75
143
136
81
76
72
95
100
95
84
61
73
70
101
96
113
26
63
82
21
46
78
117
112
144
125
106
94
96
118
50
69
63
49
50
62
92
190
93
151
173
146
141
100
68
101
81
59
47
51
57
49
37
51
29
62
43
59
16
4
46
53
73
111
155
108
90
132
88
60
96
0
0
42
37
42
46
69
77
97
96
95
86
111
93
46
42
58
36
68
59
68
114
129
59
122
121
118
66
120
121
78
128
127
75
75
75
125
71
70
78
130
129
125
122
69
55
59
61
66
68
125
127
130
133
133
133
134
128
170
68
173
191
85
130
130
78
79
79
130
130
131
130
76
129
130
130
129
129
130
130
128
129
79
124
73
126
118
66
61
118
112
61
59
54
48
56
113
107
101
104
108
103
44
21
17
23
39
76
123
46
47
95
23
20
26
19
8
52
40
50
50
49
38
0
47
43
0
0
46
46
45
0
0
0
42
45
45
55
50
0
0
0
0
0
49
49
49
0
0
0
51
38
46
43
39
0
41
42
0
41
0
0
0
0
0
0
115
71
68
120
0
60
62
147
119
7
66
24
89
99
86
100
86
53
42
74
34
40
63
34
30
18
29
103
55
30
57
55
16
44
38
37
46
34
63
35
33
110
70
89
123
108
176
121
112
158
172
113
107
97
83
142
138
97
86
79
64
118
91
79
128
135
60
72
98
95
93
81
55
71
72
110
106
101
20
42
34
88
68
91
39
67
120
108
142
48
70
40
99
106
63
79
127
82
54
161
126
181
218
147
123
149
86
113
96
60
48
48
54
35
40
76
44
52
29
62
3
0
51
40
65
84
130
102
136
136
59
27
118
30
43
42
31
43
63
59
71
81
110
90
39
115
100
48
46
62
59
66
67
80
120
132
110
71
124
74
127
71
70
128
127
128
132
77
75
123
71
124
130
129
127
121
117
119
51
54
56
71
73
128
131
132
133
133
132
132
129
153
60
105
189
129
132
132
80
80
79
131
129
132
132
78
130
131
132
130
130
131
131
128
129
81
73
71
73
115
113
54
62
56
60
54
99
52
105
108
109
102
105
107
105
97
22
14
20
23
85
110
44
52
49
90
31
83
19
57
51
39
0
50
44
0
0
0
0
42
49
0
51
42
0
2
13
0
0
46
51
53
48
43
42
0
0
0
44
49
48
0
0
49
41
49
48
41
0
0
0
0
0
0
40
0
0
0
0
106
55
150
141
82
22
41
160
130
1
62
37
69
76
29
75
24
102
88
62
95
22
58
29
60
75
41
74
101
83
89
81
4
31
114
36
8
65
83
35
46
127
102
120
105
106
110
118
175
164
159
136
138
86
93
147
80
51
113
83
73
132
90
71
72
78
50
117
145
86
87
78
51
125
125
67
63
41
50
57
21
78
29
23
35
48
28
95
65
47
71
25
46
95
102
83
128
44
125
76
130
95
166
149
123
148
146
88
59
63
22
41
103
96
97
24
54
41
25
21
0
63
100
87
128
148
108
46
66
135
115
81
98
44
30
45
50
67
82
72
80
91
56
93
44
112
44
56
56
60
69
63
72
78
126
130
121
73
127
127
128
74
73
128
127
127
132
74
126
72
124
125
73
124
122
117
112
66
106
55
54
124
132
133
137
136
134
134
133
132
81
130
122
88
113
131
135
134
133
80
79
132
129
133
82
80
79
132
133
131
130
80
79
76
77
76
74
122
69
65
112
112
72
61
55
56
93
53
104
107
118
45
45
44
49
97
82
25
83
92
65
95
114
51
102
100
90
87
75
60
53
37
0
50
38
0
0
0
0
45
49
1
0
41
43
0
11
0
0
0
44
53
49
43
43
46
41
0
0
0
48
0
0
43
42
46
47
0
0
0
37
36
37
0
0
0
40
0
0
96
136
120
123
54
0
4
103
47
110
51
37
51
126
22
42
58
100
105
21
35
79
21
44
136
155
17
31
54
209
11
12
73
78
52
34
69
79
108
96
120
75
87
108
126
114
103
105
104
144
85
67
83
150
140
127
51
57
71
65
63
88
75
73
75
68
53
111
140
131
82
77
68
140
121
109
101
59
55
90
81
81
30
29
45
61
78
88
101
61
102
48
53
88
67
86
113
29
79
58
134
97
131
102
141
132
170
119
100
106
82
39
21
92
98
33
56
33
30
33
0
69
80
19
64
62
66
109
105
86
112
32
4
60
49
62
71
37
98
101
95
68
38
45
47
54
36
67
61
57
61
116
72
64
130
125
132
128
126
126
73
125
125
82
77
128
130
126
126
75
127
127
120
120
118
114
110
66
58
57
53
122
129
128
132
130
127
83
82
81
84
115
137
77
89
85
137
83
134
132
131
81
129
133
135
133
80
133
134
132
131
80
131
128
77
121
76
71
65
122
118
109
115
55
58
62
93
105
55
57
59
34
38
99
100
46
89
91
98
109
103
96
91
88
99
102
93
90
82
17
7
38
0
0
35
50
0
0
55
0
0
0
0
42
37
40
53
0
0
43
39
0
49
44
46
44
41
46
0
0
45
0
0
38
0
41
43
0
0
42
44
44
36
34
36
0
39
0
0
37
91
105
95
93
0
0
54
40
5
44
46
33
34
67
57
39
27
96
83
111
109
38
62
25
68
97
27
21
46
66
77
86
32
77
78
111
69
91
149
145
87
117
120
123
114
159
92
81
68
84
80
105
87
64
60
61
57
77
48
136
78
64
76
65
77
54
122
77
77
80
127
76
90
92
105
99
116
99
38
49
30
45
13
95
31
103
65
46
58
29
97
99
88
85
79
153
52
80
54
50
113
105
41
120
108
140
110
111
73
83
59
31
29
32
39
30
26
46
64
65
56
90
21
40
60
58
99
90
57
61
27
0
31
39
89
48
56
56
47
58
49
56
47
55
43
60
65
62
52
46
123
74
73
70
123
125
79
128
131
76
78
74
130
77
77
128
130
129
76
126
124
123
107
110
119
97
51
60
65
119
121
130
132
132
127
126
77
83
74
132
78
79
84
86
138
80
80
80
132
132
131
131
80
132
132
133
133
133
77
78
77
77
123
74
127
120
120
62
69
62
117
60
114
108
59
47
109
108
57
55
46
46
27
90
89
86
95
52
112
115
58
50
43
87
92
51
100
84
8
57
32
0
0
0
45
50
44
0
0
47
44
0
0
42
44
0
0
0
0
45
44
50
45
41
47
43
50
44
0
0
0
42
40
0
0
44
0
44
40
0
0
0
0
0
37
0
0
0
126
61
97
68
68
49
0
0
75
8
30
65
57
66
20
28
54
79
68
103
101
51
32
80
81
64
75
70
31
38
72
70
12
36
94
111
118
66
103
108
105
97
114
98
107
104
96
80
89
97
84
146
108
88
122
119
114
119
118
59
131
71
62
76
126
69
63
112
135
83
81
72
81
148
80
60
114
112
102
46
51
47
30
34
77
68
92
96
26
67
47
89
108
105
86
81
88
90
113
66
35
99
135
109
101
122
124
74
124
106
85
72
8
27
43
31
87
82
95
93
52
72
62
99
92
145
104
97
32
45
63
38
47
34
67
49
55
62
112
99
55
52
56
53
59
49
60
57
60
105
52
74
127
125
71
71
126
132
126
76
129
81
79
78
130
77
77
129
77
76
124
121
112
104
105
62
60
47
54
118
124
129
131
131
131
132
81
81
74
120
121
83
84
85
84
134
80
80
80
80
132
132
132
80
132
132
133
134
133
78
84
80
131
128
128
121
65
68
65
62
41
52
57
58
96
102
41
59
99
46
51
40
35
36
44
33
16
27
88
106
57
54
101
90
92
79
84
39
45
71
67
41
0
0
0
0
0
43
0
50
0
44
0
43
42
0
0
0
44
40
48
0
0
45
45
48
0
52
47
43
0
43
43
43
0
0
35
0
0
0
42
44
0
40
40
38
38
0
0
0
44
78
71
56
116
30
13
80
130
72
144
126
83
126
72
109
62
98
38
45
48
31
62
106
102
81
25
5
11
65
11
33
79
88
62
139
105
100
105
109
113
112
115
101
77
73
74
112
103
122
142
138
140
119
121
118
66
43
76
67
61
53
55
76
44
117
104
130
63
114
129
89
86
96
132
113
50
58
58
55
90
102
85
87
35
31
67
0
4
50
86
102
58
81
50
43
34
86
50
17
116
107
138
122
87
87
68
61
33
22
94
17
85
35
62
41
17
10
51
60
70
78
68
89
124
34
9
7
31
38
38
66
104
107
58
57
58
97
100
98
59
52
61
55
47
45
97
61
110
119
71
120
127
126
125
126
131
129
78
78
128
127
130
80
77
78
134
131
125
62
105
97
96
93
95
58
64
55
118
126
130
133
132
131
82
135
124
69
76
87
135
135
137
139
88
82
82
82
82
82
134
133
133
133
132
135
134
133
131
136
78
78
120
119
63
61
110
54
54
65
118
99
41
43
110
103
46
36
41
38
37
22
56
29
27
42
54
52
44
103
107
114
96
87
62
0
47
53
6
59
47
48
40
46
0
0
43
0
0
45
43
0
0
0
0
0
50
40
46
41
0
0
55
0
0
36
51
51
49
43
41
0
0
0
0
0
39
0
0
0
0
41
42
43
40
39
40
43
102
66
26
46
106
87
93
33
28
86
97
140
137
101
149
90
63
59
116
63
53
40
49
49
75
86
65
84
55
15
12
63
87
104
109
129
139
140
99
97
97
100
94
87
80
58
55
59
116
92
132
129
160
133
123
126
115
54
48
73
66
63
55
49
125
49
113
104
127
110
110
125
145
123
97
135
45
49
62
57
108
112
89
108
72
21
19
2
15
0
58
101
36
46
30
66
33
30
75
93
45
101
91
130
128
68
60
93
51
47
87
88
71
13
34
68
97
18
12
40
0
80
49
105
80
41
22
7
13
40
20
21
77
99
102
53
51
48
90
100
97
108
50
56
48
44
95
51
56
55
67
71
70
76
75
126
127
78
77
77
130
129
129
132
133
78
131
85
80
67
56
47
92
90
38
43
48
73
113
121
127
129
133
82
80
77
127
135
79
77
79
84
84
85
87
88
82
134
82
82
82
82
133
132
131
131
134
133
131
79
74
124
80
68
123
62
107
94
85
47
32
40
19
63
77
107
108
46
95
45
27
41
27
101
58
47
37
87
43
42
50
108
118
103
101
26
2
0
0
0
50
44
43
37
47
0
44
43
0
0
41
0
45
45
39
39
45
48
36
2
33
49
0
54
35
0
35
47
49
48
41
0
0
39
42
0
52
44
47
0
0
0
40
41
42
40
40
36
38
96
63
62
93
86
91
109
44
103
95
121
136
137
135
165
41
101
43
64
121
113
107
136
75
50
14
14
57
80
11
18
22
43
128
127
138
102
105
168
152
91
76
60
80
90
84
83
87
83
61
117
148
160
128
133
133
107
52
61
120
68
64
63
57
124
116
61
50
124
112
58
116
142
50
56
125
42
54
64
56
60
110
47
104
84
80
80
59
64
70
48
56
81
40
37
70
34
17
16
38
99
24
127
117
115
84
38
119
41
54
82
90
95
11
9
84
100
81
81
40
34
12
0
117
82
42
13
63
19
41
12
6
24
30
42
48
44
39
40
96
45
51
51
49
95
99
47
57
50
52
65
72
75
129
77
76
77
129
73
76
82
132
134
131
130
78
77
82
74
57
49
43
36
36
40
52
52
73
68
74
78
80
82
83
81
74
72
129
131
77
82
90
89
86
84
136
135
83
135
135
135
132
132
78
129
129
133
131
129
129
78
72
129
110
110
49
85
11
43
0
0
6
5
50
61
88
92
44
106
43
27
42
88
95
57
100
46
41
49
98
52
55
116
107
106
34
8
1
0
0
0
0
39
0
0
0
0
44
0
0
40
0
46
51
45
43
43
41
37
3
0
46
1
48
31
0
38
43
45
47
43
41
48
41
40
0
51
50
49
3
49
37
0
0
41
42
0
0
45
153
58
124
158
110
88
40
12
103
81
111
151
150
75
84
44
59
73
126
102
109
112
150
56
50
47
12
60
62
20
33
91
115
142
85
127
134
87
70
77
81
146
95
84
94
91
145
158
113
116
122
157
109
133
134
131
103
62
71
114
118
107
115
68
69
126
111
53
62
52
106
55
79
79
67
47
51
58
61
55
116
100
111
90
99
91
83
60
51
80
11
47
78
43
41
56
30
63
24
18
47
32
118
99
43
142
127
54
33
99
100
80
89
18
16
97
94
86
86
39
54
67
64
92
35
97
68
8
14
16
14
52
19
17
36
44
34
29
46
38
44
44
55
43
87
102
50
106
105
55
63
68
76
130
77
76
77
129
127
76
83
132
135
79
128
130
75
75
65
46
46
97
92
43
100
113
66
73
75
79
133
82
135
82
81
130
129
71
126
78
92
90
89
85
135
135
136
84
136
136
136
131
130
128
75
74
131
129
75
127
144
127
60
24
11
4
0
38
41
0
0
0
57
55
57
65
60
76
111
34
95
96
99
99
44
91
108
56
58
57
112
111
113
110
52
42
21
11
53
4
0
0
40
0
0
0
45
45
0
0
0
0
0
48
46
46
45
0
42
0
0
43
0
0
35
37
39
0
42
46
47
45
51
42
40
0
45
48
0
0
44
43
0
0
0
0
0
0
0
124
17
80
85
68
9
3
150
51
32
103
74
33
0
96
34
53
102
141
91
140
99
128
82
78
57
32
63
3
103
49
99
121
145
147
152
93
87
80
85
139
140
133
150
93
130
137
158
139
133
123
91
96
141
128
122
102
126
128
111
117
99
110
127
64
128
57
57
48
90
45
51
65
61
124
22
111
63
59
109
69
65
98
104
88
25
7
5
7
78
61
84
26
48
43
39
24
66
91
46
20
47
85
100
36
163
121
68
148
51
126
89
91
83
66
102
85
82
25
34
21
112
69
84
32
87
25
0
7
0
18
51
65
14
32
41
24
20
50
32
43
40
111
92
29
102
102
98
114
113
63
65
72
79
78
129
130
129
79
79
135
76
80
80
75
79
75
70
59
39
46
100
100
104
107
116
129
76
134
134
132
80
84
82
80
135
136
83
74
76
87
86
85
83
137
87
84
136
136
136
84
78
129
75
126
73
78
128
73
126
54
34
30
17
56
0
0
0
6
43
49
0
54
58
56
54
0
0
59
79
113
100
109
108
111
43
43
99
101
121
122
64
61
113
106
110
94
27
5
4
50
44
42
0
0
42
46
45
0
0
0
0
0
0
44
47
49
43
0
0
1
0
0
0
0
39
35
0
0
46
50
48
0
41
39
0
0
0
0
40
35
48
44
0
0
0
0
0
0
73
75
31
12
0
40
104
71
98
122
51
113
55
85
113
14
90
43
56
113
119
120
122
99
110
17
34
80
99
49
61
75
136
132
132
132
87
92
81
138
144
152
136
58
146
136
128
130
127
119
129
126
110
143
123
139
103
128
119
120
113
115
113
120
111
109
65
53
99
104
54
60
33
68
63
119
87
66
112
116
106
60
115
94
75
18
3
8
6
62
70
64
71
35
19
39
71
95
78
67
87
44
66
37
21
43
105
106
139
119
35
88
96
26
40
92
88
113
33
21
84
84
73
19
57
7
3
60
16
8
64
15
0
15
75
29
33
50
49
42
28
29
30
88
23
38
99
49
112
120
124
77
71
81
135
82
82
84
83
135
131
71
74
126
115
66
58
41
50
37
48
97
52
61
66
73
133
83
136
135
135
86
81
131
77
78
78
132
136
85
86
85
138
86
84
85
85
136
136
87
84
83
128
67
66
68
76
74
120
82
59
0
7
0
0
0
0
51
0
50
47
0
0
46
47
38
0
0
8
26
43
57
50
92
95
56
46
115
103
121
106
103
49
61
112
66
108
50
29
70
10
57
55
65
54
40
0
44
43
0
0
43
40
0
36
0
0
48
0
0
0
0
0
44
0
0
0
0
0
42
49
0
0
0
0
0
0
0
43
42
41
0
44
43
0
0
0
0
0
77
64
26
151
0
132
138
47
70
152
107
122
176
44
44
33
92
34
23
90
112
106
100
95
113
71
60
74
95
86
108
122
134
150
94
136
134
136
152
136
141
140
118
122
140
122
117
140
123
123
127
73
62
133
124
136
111
132
122
110
119
120
105
119
115
103
100
94
44
47
54
45
97
128
88
97
88
119
119
119
102
119
104
84
66
17
5
7
59
14
75
64
72
33
22
35
85
100
84
65
102
37
43
18
59
25
62
21
100
55
69
100
49
33
39
87
87
95
86
10
94
78
79
69
34
58
32
7
79
68
65
18
51
75
63
21
38
46
42
33
29
23
34
83
86
34
100
69
55
124
129
131
75
80
82
82
82
85
135
134
133
68
119
122
112
114
103
35
95
42
53
54
60
121
73
77
133
133
140
133
131
136
133
83
134
77
128
79
136
138
140
140
141
88
136
137
139
138
86
85
131
79
72
60
115
70
75
71
53
2
0
50
0
0
39
0
0
0
57
51
41
0
42
43
38
37
37
40
0
0
29
52
43
35
43
50
60
71
118
113
109
103
113
103
60
61
98
91
105
86
73
58
54
63
16
46
42
43
0
0
0
0
0
0
38
41
0
0
0
0
0
0
0
0
45
43
45
42
0
46
52
48
0
0
0
0
0
42
40
44
43
0
45
45
0
45
0
0
0
53
89
24
59
11
95
81
119
132
81
51
25
101
83
31
89
46
26
0
87
113
152
68
98
69
58
78
55
90
77
141
152
150
87
88
146
147
146
147
76
76
75
119
156
121
117
119
130
122
74
124
74
70
133
64
64
124
129
123
49
121
124
108
114
110
90
88
93
43
38
99
82
64
113
88
71
130
116
118
113
110
107
41
71
66
15
58
64
65
74
79
68
20
30
31
38
47
92
80
71
72
86
40
11
69
24
57
31
20
69
25
44
36
26
35
81
83
77
100
71
91
81
76
77
25
28
12
15
76
72
66
77
55
77
60
73
79
35
32
27
34
15
32
78
86
44
59
132
59
76
131
131
131
79
82
82
82
137
136
133
133
122
117
120
105
107
99
43
99
49
58
66
68
75
78
80
131
130
136
133
131
132
133
82
133
129
127
128
133
136
86
90
91
141
84
85
86
135
85
78
123
73
64
113
68
71
63
50
25
3
0
50
0
0
0
0
48
1
61
49
38
37
0
42
37
40
41
45
0
0
8
44
44
42
51
48
62
71
77
112
107
104
110
107
56
45
36
79
95
100
88
13
45
0
16
63
0
41
46
46
48
45
0
41
0
0
0
0
0
37
0
0
40
0
0
0
45
40
43
41
48
0
0
0
0
0
47
42
39
0
46
0
41
41
0
40
40
0
0
86
114
113
101
74
171
127
145
110
144
109
109
61
51
16
71
12
28
6
67
73
119
79
82
76
39
114
59
54
80
92
153
150
95
96
94
81
74
115
74
132
138
89
93
114
137
132
59
73
76
120
128
129
79
116
109
128
121
124
48
65
72
77
115
104
84
43
96
41
33
97
85
104
66
52
86
91
115
114
109
66
84
34
59
65
3
6
14
19
78
75
74
18
22
30
34
50
76
71
80
76
111
25
11
46
33
32
50
19
7
57
32
16
15
40
35
86
63
55
81
79
90
67
87
73
8
87
62
76
74
15
28
60
77
72
86
67
30
81
83
41
63
81
78
86
116
73
125
121
78
78
77
133
132
135
134
82
137
137
132
132
124
117
116
97
100
46
41
96
113
118
125
127
79
133
82
78
80
79
137
138
133
133
79
76
127
127
128
134
136
86
91
92
142
85
136
139
82
83
74
66
63
62
121
124
50
86
67
46
58
48
0
0
0
0
4
51
55
60
44
0
38
41
43
0
0
41
46
0
0
0
36
48
42
45
40
59
120
80
130
103
99
92
70
58
42
45
32
23
105
99
24
0
0
1
19
13
45
45
42
45
45
0
43
0
0
5
0
0
38
0
46
44
48
43
40
45
42
0
0
0
42
0
0
0
0
46
42
39
47
0
0
0
40
44
0
38
0
0
65
79
109
121
96
77
154
173
44
141
122
46
52
65
70
64
34
0
59
62
57
66
99
67
98
16
21
79
67
84
96
93
90
89
88
85
84
84
76
133
80
89
157
69
62
139
126
68
74
76
67
128
128
125
125
120
119
119
123
100
112
117
77
74
72
93
38
97
93
34
44
43
39
103
79
112
71
118
108
63
61
68
77
1
6
0
7
17
21
79
71
29
13
15
21
23
39
69
68
33
43
66
5
28
28
36
4
58
31
28
55
31
22
23
85
97
43
6
48
78
71
93
65
34
76
73
126
54
78
75
64
25
17
74
74
90
4
28
19
95
98
69
85
34
96
78
132
114
130
130
128
129
134
134
85
83
134
136
138
134
131
121
112
59
92
92
45
84
88
124
76
78
131
131
80
133
76
82
129
138
89
82
81
77
72
126
128
133
137
139
141
88
89
139
135
135
88
79
81
121
116
57
116
116
110
67
14
52
42
56
37
45
0
0
0
5
53
55
56
39
0
0
0
45
0
0
0
0
0
0
0
29
46
28
30
31
51
63
71
80
113
112
36
56
77
46
46
42
38
103
103
85
0
0
0
9
22
57
47
0
40
0
0
0
0
0
13
9
0
0
0
47
47
48
0
0
46
47
0
0
0
0
0
0
2
0
44
40
39
44
44
0
0
0
0
40
0
0
0
128
107
100
48
0
122
99
166
114
58
114
88
123
23
73
42
50
187
87
52
43
82
75
87
101
119
120
120
62
97
148
154
92
143
92
86
132
79
83
127
89
81
75
70
72
121
96
62
124
125
123
120
112
75
56
70
107
76
72
52
106
104
119
105
103
28
43
89
88
27
26
33
88
80
104
70
121
110
64
57
68
66
60
71
61
75
78
27
81
86
28
27
4
25
25
27
2
35
80
26
58
38
40
39
0
32
5
94
32
30
33
25
7
89
118
81
95
21
94
28
79
76
83
60
84
94
59
27
22
82
5
8
24
75
71
92
78
57
17
69
48
99
53
109
66
67
125
123
132
128
128
135
131
87
88
84
134
83
137
140
130
103
36
41
89
87
43
65
52
70
78
87
140
83
82
85
81
76
130
124
71
79
81
80
128
126
125
132
135
136
84
86
139
138
83
83
136
70
72
111
110
116
100
53
52
1
53
48
55
42
51
41
44
50
0
0
52
54
51
38
44
0
0
0
0
0
0
0
38
36
0
16
89
11
40
42
18
32
41
64
125
117
119
36
18
60
56
47
93
112
56
83
52
0
0
0
0
24
69
52
44
0
0
0
0
0
5
2
0
0
0
0
0
0
0
0
0
0
0
0
38
0
53
42
47
0
38
32
35
33
33
0
0
40
0
0
0
0
0
72
64
133
88
23
42
103
133
108
128
52
62
100
80
49
26
91
94
0
35
61
79
21
77
64
95
89
84
60
87
99
149
147
142
139
78
79
80
87
93
87
127
126
56
76
46
99
112
124
64
120
125
119
72
67
62
50
51
62
70
49
97
63
52
104
92
88
88
34
31
31
30
34
38
93
62
112
109
57
86
64
18
63
64
69
73
73
39
40
81
91
74
73
9
33
45
29
18
80
79
91
46
19
29
23
46
3
143
35
60
23
78
45
124
97
92
105
83
93
93
68
89
26
76
68
69
10
78
75
61
0
9
28
74
83
34
108
66
55
68
65
119
73
126
130
80
80
77
79
131
80
133
134
84
85
138
85
83
137
134
125
55
41
34
99
104
101
127
125
75
83
136
84
134
135
82
84
135
131
77
75
129
128
126
131
130
128
135
141
90
141
83
86
140
136
83
136
114
104
116
102
106
66
56
50
4
49
40
48
57
47
48
41
44
41
54
56
58
35
41
35
0
1
4
0
0
0
0
43
0
0
6
20
27
36
37
18
7
19
58
73
116
110
113
28
39
63
50
96
107
102
92
40
49
42
0
0
0
94
76
48
0
0
0
0
0
0
0
0
51
1
0
0
0
0
0
0
0
0
0
0
45
47
49
0
0
0
45
36
35
34
0
0
0
35
0
0
0
0
124
79
38
44
12
49
30
129
105
127
21
123
123
128
80
49
49
24
79
115
74
103
59
19
72
77
101
35
82
89
147
144
88
84
81
130
82
79
132
84
81
126
110
52
84
60
105
132
124
124
124
65
54
68
114
124
109
52
111
118
50
45
107
53
106
91
92
88
34
31
32
31
28
37
47
106
101
100
31
71
15
17
65
66
19
77
81
86
91
94
31
67
61
79
36
29
24
19
80
97
90
96
19
30
81
40
92
109
84
102
19
40
79
73
94
92
102
88
99
98
81
69
55
83
65
27
8
23
19
72
66
14
36
92
96
96
113
73
69
71
69
124
128
128
79
81
133
131
80
132
133
133
82
84
86
138
85
135
134
130
118
43
81
47
102
109
110
129
128
77
83
84
84
134
134
81
135
133
127
124
123
75
124
123
130
136
137
86
88
89
87
86
137
137
135
132
127
118
105
89
70
95
56
8
56
0
0
43
41
43
0
0
0
41
36
46
50
51
40
44
38
0
0
52
43
0
0
0
42
46
0
52
67
22
28
30
13
0
4
44
127
120
55
56
48
9
71
62
99
105
94
85
46
53
44
40
41
0
19
92
0
5
0
0
0
0
0
0
0
0
0
49
47
40
0
0
0
0
0
0
42
48
0
0
0
0
0
42
39
43
41
0
0
0
33
0
0
0
0
127
105
77
19
51
77
89
112
32
37
126
76
40
42
25
100
55
37
7
90
98
136
82
24
85
63
32
81
88
90
143
138
134
83
79
129
131
73
72
124
70
73
95
48
82
67
106
141
125
120
112
64
62
117
112
128
111
53
108
110
50
46
98
106
55
39
43
36
34
32
32
31
28
91
47
104
96
36
65
64
20
70
16
18
23
30
84
90
97
50
33
14
10
38
32
17
70
18
23
109
87
94
74
85
90
34
74
75
82
92
85
45
46
58
54
87
93
90
101
99
83
75
56
88
64
42
9
22
14
24
31
80
97
106
109
107
117
76
80
127
127
78
131
130
132
82
134
132
81
81
82
82
83
86
87
138
85
135
131
125
112
37
76
114
111
66
121
132
79
133
137
84
85
83
83
133
134
79
73
120
120
70
125
123
130
139
141
88
88
140
86
88
85
82
130
125
116
120
105
65
44
79
44
9
6
47
0
45
38
37
32
0
0
0
35
39
44
43
47
0
0
0
0
0
51
0
0
34
41
47
0
45
7
14
24
28
19
3
2
23
68
69
54
102
67
4
46
66
114
102
101
86
0
45
45
39
40
37
40
79
0
50
0
0
0
0
0
6
0
0
0
48
45
38
42
0
0
0
0
0
0
0
0
0
0
0
0
0
42
48
44
0
0
0
33
38
0
39
0
65
69
79
81
63
37
108
83
68
40
174
0
0
124
40
17
127
108
56
17
39
105
38
20
37
93
47
55
84
88
87
136
136
135
133
128
120
66
70
66
62
69
48
60
133
116
108
141
118
112
60
65
65
117
116
116
55
53
105
104
49
46
94
103
52
42
92
88
33
32
33
32
90
95
44
52
46
25
18
74
74
72
22
72
78
84
84
102
51
48
99
22
26
34
28
19
14
70
68
105
84
92
83
89
95
81
69
70
83
88
91
44
52
39
54
29
28
88
94
38
81
89
67
45
11
51
10
25
7
71
81
92
100
110
116
114
118
73
77
77
78
82
132
130
133
82
82
82
134
82
83
83
83
87
87
86
84
134
76
121
111
97
36
72
70
74
131
83
82
137
85
82
85
83
84
133
132
78
76
69
67
115
76
128
132
137
138
90
89
88
87
84
83
79
67
112
111
58
97
58
40
13
40
55
0
0
0
0
0
0
40
44
40
0
0
40
43
39
51
0
0
0
0
0
49
43
45
0
0
46
0
0
0
7
18
23
26
14
8
8
49
57
54
46
120
92
56
98
76
110
51
14
0
0
44
43
43
0
32
47
53
37
36
0
0
0
40
4
0
45
44
0
0
38
42
36
43
40
0
0
0
0
0
0
0
0
0
0
0
48
42
0
0
0
37
35
36
39
38
129
43
26
95
43
127
87
44
0
8
66
92
29
84
105
92
120
41
50
76
95
76
28
58
34
45
68
49
72
89
135
134
132
124
128
73
116
72
75
123
67
67
79
140
119
102
113
113
116
116
122
52
46
115
105
107
50
52
102
98
98
95
99
90
37
46
87
89
87
87
88
90
38
43
89
85
76
16
23
23
75
81
35
25
86
85
57
92
88
50
32
79
28
35
37
33
19
81
77
94
79
88
102
101
99
82
6
53
84
91
89
44
56
35
46
33
24
93
82
77
94
92
71
45
6
33
11
18
2
36
66
88
107
131
129
121
124
128
123
78
78
81
131
129
79
131
132
135
84
83
83
82
82
86
85
82
132
128
115
55
113
120
123
132
88
86
136
138
136
82
84
81
81
132
132
75
71
70
78
70
69
107
125
81
142
141
89
87
89
87
82
65
62
47
37
91
52
12
59
0
0
55
49
40
34
62
0
0
0
50
53
55
39
38
0
48
46
44
49
40
0
0
0
0
36
43
47
47
0
43
48
0
0
0
22
24
32
29
18
6
10
20
50
50
104
116
106
72
50
112
106
28
50
0
0
48
39
0
47
38
37
48
50
40
0
42
38
0
0
43
43
0
48
39
44
41
51
42
0
0
0
0
0
0
0
0
0
0
0
49
50
61
50
0
0
37
33
42
42
64
109
0
39
52
0
58
53
80
121
40
69
64
134
134
110
71
68
80
75
90
77
42
72
75
19
54
104
95
84
133
131
132
123
73
72
124
127
130
126
129
123
127
78
63
106
117
105
121
118
55
107
114
58
54
111
51
51
103
98
94
94
94
89
32
44
43
38
89
89
90
92
34
36
80
81
73
73
76
74
26
30
88
77
93
90
43
82
29
49
80
80
32
42
89
82
27
82
28
35
26
85
105
106
103
41
19
57
38
99
94
35
46
36
56
35
25
98
28
75
86
100
91
27
14
29
20
15
66
36
24
84
115
130
134
118
125
131
129
131
130
81
131
129
78
130
130
82
84
135
83
82
81
84
135
80
77
125
115
57
119
125
129
136
140
89
84
84
135
131
81
81
79
130
79
72
68
117
72
66
70
63
75
135
90
90
91
86
138
83
72
112
99
72
83
41
38
47
48
0
0
54
53
43
36
64
45
40
50
45
51
56
0
40
0
0
42
0
0
0
0
46
49
42
40
43
42
46
46
44
47
41
0
0
26
26
34
39
29
13
7
12
95
107
104
109
130
101
30
108
103
52
62
63
34
47
39
50
39
37
33
52
65
0
0
0
0
0
48
42
41
0
0
41
45
45
55
42
0
0
0
0
0
0
0
0
52
0
0
47
46
55
0
0
0
45
0
42
0
62
113
77
55
54
0
50
115
47
19
66
43
70
138
54
123
64
67
33
86
67
56
94
18
39
46
59
64
60
129
78
79
82
128
125
73
77
125
130
128
137
128
65
78
74
75
80
64
64
124
60
54
117
56
61
114
51
103
51
47
41
94
89
37
30
93
51
39
90
90
91
94
89
82
71
33
31
76
81
81
28
27
34
75
43
40
69
28
28
42
91
84
45
44
31
80
34
28
27
26
26
82
104
110
107
53
46
108
97
107
78
33
54
43
46
33
24
98
26
22
80
94
95
72
77
32
30
67
79
77
37
85
121
118
135
113
122
132
134
132
131
80
132
131
129
76
129
81
84
135
83
81
81
135
134
78
75
123
119
63
75
128
130
140
85
91
83
84
81
129
132
80
130
129
78
71
118
114
118
114
71
70
81
86
87
87
89
85
84
79
63
112
88
52
82
44
23
0
0
0
0
53
54
47
40
64
41
43
53
0
0
59
60
44
0
0
0
48
44
0
0
0
46
37
46
43
38
42
47
46
46
37
0
0
16
15
25
38
31
19
10
12
38
59
104
114
117
129
73
32
124
67
47
50
0
46
0
6
0
0
49
59
82
9
0
0
0
44
53
0
38
0
0
42
46
48
58
0
0
0
0
0
0
0
0
0
0
0
0
0
37
0
0
32
41
0
0
0
0
113
133
67
113
81
118
43
87
127
142
155
104
124
103
100
26
71
68
6
64
61
33
51
94
67
43
49
48
61
77
130
131
125
75
75
128
134
133
129
71
69
67
69
65
72
72
72
59
77
125
57
62
117
57
110
104
51
115
52
48
46
48
48
43
95
98
92
40
87
27
40
89
78
26
24
26
17
80
32
34
75
28
23
35
48
39
84
89
89
50
86
102
111
88
40
49
36
46
70
67
88
27
51
49
46
49
22
92
95
107
76
83
89
105
98
27
37
37
86
30
88
42
71
16
37
21
19
75
87
25
107
86
117
80
81
78
128
128
130
130
78
131
132
132
131
138
137
136
138
135
83
83
82
88
78
74
127
123
77
80
132
82
130
134
85
86
85
134
84
132
73
78
139
112
131
70
132
114
71
72
77
83
86
82
95
87
136
121
68
59
38
83
105
2
50
59
46
5
0
0
20
51
46
51
57
65
43
0
0
51
0
0
10
5
0
0
0
0
38
54
0
0
50
47
0
0
47
0
47
46
0
0
46
0
0
0
14
22
75
66
61
12
76
118
109
62
52
108
113
23
56
94
46
50
0
0
0
0
0
0
0
0
52
85
0
0
43
38
0
0
48
48
48
47
39
35
0
0
0
0
3
49
34
0
0
0
0
0
0
38
33
0
0
40
34
0
44
0
0
116
143
44
0
34
123
117
127
141
128
106
135
127
62
87
49
95
51
0
0
84
74
40
78
70
21
48
52
132
75
74
75
126
132
79
129
131
76
71
71
71
72
73
69
76
66
60
62
124
114
52
59
109
108
107
53
105
106
100
49
45
47
100
46
97
98
48
37
32
36
45
37
80
27
24
32
77
86
38
41
85
33
33
42
32
85
83
94
91
95
86
100
97
96
99
43
41
95
74
15
37
33
46
51
45
51
38
100
97
107
29
31
87
103
105
26
33
31
39
36
90
92
77
20
23
20
13
87
43
91
114
41
72
84
81
130
77
77
78
130
131
131
132
80
79
137
137
136
136
135
135
134
81
140
128
71
74
126
79
82
134
135
131
132
134
86
85
133
83
80
126
130
134
61
75
69
75
60
70
73
78
84
91
89
137
81
137
131
51
50
22
39
83
66
54
46
0
4
0
43
51
62
44
42
59
50
0
0
0
0
53
54
9
5
0
40
42
43
45
1
0
0
41
44
0
0
0
41
42
0
0
0
40
0
0
0
54
58
58
13
3
5
69
107
112
111
92
96
111
79
61
56
57
42
48
0
0
0
0
38
44
38
45
24
4
38
0
0
0
45
46
49
50
45
0
0
44
46
45
0
0
42
40
46
36
37
45
48
0
38
36
50
0
0
35
37
0
0
0
101
106
8
0
0
73
188
64
72
43
92
81
37
53
4
10
77
35
2
46
67
119
43
78
83
84
114
48
40
70
124
75
76
131
79
76
77
75
68
69
69
71
70
75
67
117
57
115
119
54
104
112
53
55
105
53
108
109
107
56
44
43
99
100
98
98
51
34
33
45
47
38
82
80
27
38
84
80
88
90
88
44
89
44
30
87
92
47
91
89
95
99
38
49
53
44
48
91
83
15
39
40
39
55
96
50
105
107
99
101
89
34
84
47
111
26
29
26
45
42
42
90
85
77
31
34
13
88
91
107
120
99
129
84
81
131
130
78
79
131
131
80
81
81
80
85
137
134
135
135
82
80
132
138
126
69
73
77
83
84
83
135
131
130
131
83
85
79
81
80
127
129
127
63
69
71
72
63
124
129
134
86
91
142
84
74
125
128
32
39
7
49
10
33
47
22
0
1
1
0
38
62
40
46
63
0
0
0
0
0
0
0
4
52
45
41
0
50
53
0
50
0
0
42
0
0
0
36
40
0
0
0
0
42
39
0
42
42
41
8
0
0
7
86
90
107
93
87
81
74
64
36
6
42
0
0
0
45
43
37
42
40
37
61
78
41
47
0
0
42
42
46
48
44
0
0
45
41
42
42
37
36
38
47
38
34
48
48
39
38
0
3
40
0
0
35
0
0
0
187
73
78
53
0
40
106
90
101
133
87
156
145
1
0
11
57
101
62
95
154
44
80
135
77
72
74
92
61
117
127
133
129
123
126
76
74
75
70
66
62
62
67
71
112
119
62
61
110
110
114
115
57
55
51
56
111
112
113
57
51
55
105
102
105
106
38
43
52
97
90
105
89
91
90
39
81
30
41
89
51
50
87
43
54
57
44
95
95
47
49
46
54
48
50
52
54
97
108
28
45
104
83
109
98
49
58
109
104
87
104
52
87
35
101
36
34
32
46
94
51
90
95
40
44
21
34
95
69
128
125
107
130
131
132
80
81
133
132
133
133
134
134
82
80
135
134
134
134
81
80
78
129
78
80
130
79
78
137
137
136
132
132
129
131
74
82
76
75
127
128
126
120
123
122
84
81
84
140
139
141
84
78
128
60
50
93
20
77
17
6
46
26
57
3
0
0
0
43
57
50
43
41
5
4
0
0
0
0
55
48
0
0
47
45
0
0
42
1
0
47
46
0
0
0
0
0
45
45
39
0
46
43
37
45
0
40
40
39
44
0
0
0
0
65
54
0
56
46
62
61
62
36
56
0
0
41
42
45
43
43
0
0
0
75
75
36
0
0
0
43
40
39
45
43
46
49
43
40
42
50
47
48
46
48
45
40
38
37
42
45
0
44
46
43
0
0
0
0
35
66
74
101
31
60
123
93
57
115
8
148
166
98
94
94
46
93
104
86
122
5
100
47
2
73
81
94
109
116
127
131
127
126
128
77
71
69
70
69
68
123
129
66
129
110
104
64
57
113
116
113
108
57
54
57
110
55
108
50
99
103
106
105
108
107
40
52
61
96
92
109
94
96
95
93
30
31
42
88
53
48
97
107
105
105
83
95
51
50
40
48
51
52
51
46
106
101
114
95
48
52
87
105
102
101
107
113
104
94
57
58
35
28
44
40
88
38
42
94
55
39
49
51
55
23
46
96
127
82
80
116
81
82
131
133
134
134
133
133
134
134
83
83
131
133
132
133
132
130
131
129
128
75
82
133
132
78
83
82
82
77
131
128
132
126
80
80
77
127
131
129
123
127
126
86
85
89
141
138
138
128
123
118
75
90
95
64
81
11
4
36
35
53
0
0
0
0
38
49
46
46
47
0
0
0
0
0
0
4
48
0
49
51
51
0
0
0
0
0
54
0
42
0
0
0
0
43
44
36
45
41
40
43
44
0
40
41
40
40
47
48
0
0
48
40
0
0
0
67
61
48
41
0
48
0
0
46
47
48
43
0
0
0
8
29
46
46
46
47
47
44
43
46
41
42
47
46
42
44
57
53
67
46
45
42
40
37
38
42
45
0
0
0
45
45
0
0
0
100
96
88
101
48
44
140
73
35
98
31
114
128
0
11
89
41
146
188
77
95
0
107
117
58
89
29
70
91
117
121
125
124
123
126
77
71
122
121
125
127
128
126
122
130
56
110
114
63
66
118
114
108
58
56
56
110
88
92
100
115
68
50
57
57
51
104
108
115
97
100
106
96
45
97
98
37
33
42
33
52
103
108
114
110
102
86
47
52
99
99
55
52
52
106
102
106
102
114
110
51
50
41
49
105
94
102
114
95
52
111
60
33
75
44
41
84
93
91
46
112
92
58
65
62
38
51
100
123
83
84
70
134
84
131
82
135
135
134
134
134
135
136
84
79
80
132
133
132
78
79
128
127
126
131
76
128
76
78
77
77
73
128
128
131
129
79
86
133
129
136
135
132
132
133
85
86
87
138
134
81
120
103
45
68
42
44
23
23
7
3
36
36
44
0
0
0
51
0
0
39
0
0
0
0
0
0
0
4
0
0
45
48
0
52
43
38
0
2
38
51
50
48
0
0
0
0
37
45
44
47
0
0
0
42
49
40
42
0
0
0
0
0
0
0
44
46
0
0
61
58
37
43
0
49
46
45
0
46
47
43
0
0
0
0
14
60
48
51
46
42
45
46
46
42
40
44
46
44
0
55
52
66
47
0
0
43
41
39
40
45
0
0
0
0
43
40
50
0
95
66
57
23
20
78
84
157
80
92
76
35
62
56
122
46
92
132
52
148
79
74
98
56
115
100
117
78
82
117
115
118
122
118
121
74
72
124
120
127
131
126
65
130
116
58
75
110
121
69
121
117
57
110
58
57
108
122
71
64
58
51
46
112
109
48
117
110
114
101
109
102
97
46
45
104
97
41
50
39
61
112
111
112
73
51
100
103
49
95
66
61
113
99
105
110
105
102
59
69
53
48
45
46
56
84
45
113
84
57
112
112
31
20
46
39
28
41
90
51
114
41
65
74
47
37
99
114
131
80
84
123
80
83
131
134
84
136
134
134
134
135
136
84
80
132
79
82
79
80
79
76
74
126
129
124
73
76
75
126
76
71
127
127
130
81
131
91
84
131
140
139
139
135
136
83
85
134
81
130
129
63
33
25
33
108
92
88
67
58
56
45
86
89
0
0
33
5
0
46
0
0
0
1
0
0
43
42
9
0
0
39
0
0
49
43
41
0
5
37
0
54
59
53
38
49
54
33
48
2
47
56
55
50
0
0
42
43
0
0
3
0
0
47
0
0
0
0
0
48
54
41
39
0
46
44
40
0
0
0
0
0
0
0
0
0
17
47
0
0
0
0
0
0
44
40
0
0
0
49
0
0
0
0
2
0
0
0
0
38
44
0
0
0
46
0
33
0
44
111
35
122
96
37
151
101
166
148
111
145
24
44
41
115
26
80
96
90
75
43
57
115
114
58
54
69
83
91
91
103
100
114
68
73
70
134
126
134
131
129
128
126
128
66
71
126
64
120
65
63
115
69
70
107
106
62
68
63
117
103
50
100
111
106
65
59
122
98
110
54
107
54
53
48
107
102
105
52
101
110
112
71
71
52
43
102
104
48
50
111
61
62
103
106
110
101
114
101
62
49
103
45
51
49
71
35
50
93
101
118
98
82
33
38
92
35
29
29
49
97
46
59
120
63
43
106
112
134
130
127
126
77
82
83
135
135
83
83
81
81
82
84
136
132
131
133
81
78
85
74
70
77
74
81
83
60
131
82
81
71
126
131
84
131
97
69
131
142
129
131
84
120
134
76
76
72
125
85
85
103
111
41
58
61
52
88
64
62
64
66
104
37
49
48
47
54
0
50
52
56
47
0
0
0
44
42
54
52
52
0
0
0
0
51
45
35
0
0
0
0
52
48
44
43
0
49
46
0
0
37
45
0
42
49
0
0
0
0
0
1
1
0
0
0
0
0
0
3
50
48
46
42
0
50
54
51
0
0
0
2
0
0
0
0
0
28
45
50
45
0
0
46
0
50
49
44
0
0
0
2
58
57
0
0
0
0
0
0
0
0
0
0
43
45
0
38
0
0
37
45
162
88
126
72
95
47
45
38
147
22
64
115
42
117
101
118
143
152
38
158
70
36
165
70
42
91
58
106
114
103
36
45
53
117
115
119
79
81
82
133
130
74
71
119
119
116
116
62
68
66
66
56
126
73
56
116
60
115
57
60
115
122
115
115
105
103
117
109
109
61
61
110
52
65
116
115
63
111
113
64
113
117
45
41
39
52
106
113
118
67
64
112
110
110
111
113
103
68
56
107
100
104
101
80
85
41
93
96
110
99
85
84
101
99
109
108
77
52
54
48
52
50
61
90
117
118
131
78
78
78
132
134
83
83
135
83
135
134
135
135
84
83
78
79
131
81
81
74
69
75
125
75
129
85
73
124
75
79
78
83
75
127
74
76
98
119
130
128
109
113
97
102
109
97
105
86
72
88
54
48
59
57
103
67
55
132
48
71
175
58
105
71
52
133
50
19
0
51
64
47
56
43
38
0
4
47
51
45
66
10
0
0
0
48
49
0
0
0
0
46
50
53
56
50
51
0
39
40
0
36
0
37
0
0
53
52
5
3
4
0
0
48
0
39
46
0
0
46
47
0
0
0
0
39
39
0
43
0
9
0
0
53
0
0
0
67
51
39
0
0
50
0
43
46
44
0
48
56
62
54
56
58
0
0
0
0
0
0
0
0
0
42
41
0
0
0
0
64
8
182
111
194
64
84
47
62
41
100
137
81
139
35
199
30
71
50
158
27
41
108
25
52
15
53
60
51
108
103
48
38
34
90
105
62
115
73
129
131
130
126
76
77
69
118
119
117
115
71
66
63
120
122
119
119
119
64
64
61
117
121
121
113
113
109
52
68
106
112
60
114
113
111
119
118
68
69
64
115
68
60
62
46
45
38
108
112
117
119
67
65
116
112
110
115
110
52
68
58
55
48
103
100
35
33
37
43
89
107
100
84
82
102
91
111
115
78
54
60
52
51
44
115
90
119
120
131
78
79
81
82
134
135
83
135
135
135
134
83
136
135
82
79
79
79
132
81
80
87
77
64
71
78
81
76
75
73
139
130
86
80
145
87
110
119
94
130
111
122
111
95
93
69
81
100
60
102
79
99
109
78
31
27
74
118
91
46
46
255
96
100
50
113
73
67
4
12
15
33
54
5
33
32
1
0
49
51
44
5
2
57
58
11
44
50
0
0
48
49
51
47
48
46
52
51
40
34
0
0
41
43
0
0
47
0
0
0
0
0
0
0
0
42
46
49
51
40
46
48
0
2
2
11
43
0
0
47
0
14
29
0
56
0
44
0
27
13
0
44
0
0
0
0
46
51
44
45
49
59
56
50
56
0
0
0
0
0
0
0
40
43
42
41
0
0
0
0
85
52
114
58
127
46
70
71
63
30
49
125
139
46
111
154
131
0
73
88
97
83
84
121
62
49
66
67
39
97
78
94
63
45
40
37
108
110
124
129
131
131
126
77
80
73
70
73
70
120
125
65
61
127
122
118
123
123
121
66
115
118
122
115
108
111
64
62
68
106
116
58
115
118
119
67
117
69
70
66
63
70
61
63
52
52
45
114
117
67
118
68
67
117
114
112
116
109
54
65
60
55
49
50
100
44
88
36
46
28
47
43
83
84
106
37
61
61
29
51
62
57
49
42
115
93
119
121
132
131
132
133
83
83
83
135
135
135
83
82
83
84
82
81
132
80
78
130
118
88
93
80
69
112
128
78
132
142
130
81
75
148
143
94
110
116
99
101
74
81
117
52
30
56
60
78
82
91
47
0
76
23
0
52
42
97
87
55
17
26
255
110
86
42
54
148
12
86
55
16
75
47
38
0
0
0
40
51
44
48
1
0
7
61
14
43
51
0
0
0
58
54
48
50
0
0
0
0
0
0
0
0
0
0
1
47
38
0
0
0
0
0
0
0
0
3
0
47
41
48
50
50
4
3
0
3
4
1
0
0
0
1
49
52
0
0
37
30
84
39
0
0
45
48
45
51
58
38
42
0
59
58
44
49
50
0
0
0
0
0
0
45
41
43
0
0
0
0
0
116
117
80
76
106
115
51
64
55
84
86
61
54
55
35
29
51
0
162
101
145
109
12
152
80
83
95
105
36
42
85
53
57
48
46
27
89
93
120
73
76
79
79
77
81
75
74
78
74
72
76
118
117
122
131
76
120
126
74
70
67
68
69
61
108
114
72
72
67
111
120
112
118
70
126
120
65
71
71
67
64
121
63
117
59
59
55
68
68
66
117
122
70
120
117
117
117
110
59
62
63
108
51
52
103
103
93
38
50
70
36
35
80
89
107
93
61
50
34
43
59
65
43
43
112
98
119
122
132
132
132
81
135
84
135
135
83
135
135
82
135
84
80
79
82
131
126
125
107
138
133
85
82
133
136
120
120
75
80
76
143
101
86
136
148
68
119
148
83
17
83
21
42
69
63
15
63
52
0
0
64
0
35
23
43
59
105
75
25
81
235
132
127
113
55
161
8
70
41
8
110
79
38
22
19
44
0
0
0
0
0
42
46
33
0
0
0
52
0
2
45
41
40
47
47
0
0
0
1
0
0
0
0
0
2
0
0
0
0
0
44
46
0
0
0
6
48
45
44
50
50
53
2
0
41
46
47
0
0
0
0
44
27
0
0
0
41
18
42
50
41
0
45
49
42
0
0
33
42
3
57
55
42
44
48
48
0
0
0
0
0
0
42
45
0
39
0
0
0
78
109
41
80
140
71
49
27
50
149
101
34
0
119
52
51
46
66
98
76
141
81
113
174
135
94
96
140
97
45
98
61
95
88
60
54
89
87
101
108
113
122
75
75
128
129
130
133
77
76
75
71
124
123
130
132
127
75
128
74
72
72
70
118
116
70
78
74
70
68
72
120
124
75
129
123
70
73
70
69
65
116
117
117
66
116
116
72
120
118
117
72
126
123
70
71
65
62
117
60
66
111
107
56
107
109
98
93
54
8
86
83
75
37
48
90
53
33
40
37
54
73
34
45
104
103
121
124
131
133
131
131
82
85
135
135
135
135
83
81
82
135
131
129
79
127
121
65
121
133
131
136
137
162
142
62
111
107
146
83
90
109
159
144
120
53
71
148
80
37
80
17
118
59
44
12
73
39
77
54
34
0
0
60
37
116
0
71
0
142
191
145
102
134
95
97
72
101
86
1
32
105
27
81
15
53
0
0
57
0
0
31
48
44
44
0
47
47
0
2
54
43
31
0
0
4
52
0
0
0
0
0
0
0
0
0
0
35
0
0
47
48
46
0
0
0
45
0
47
50
49
1
0
40
47
37
34
37
0
0
0
52
81
0
0
0
0
0
39
16
0
0
48
47
0
0
44
38
0
1
46
46
47
45
0
47
44
0
0
0
0
48
46
0
0
43
0
0
0
58
65
69
108
47
33
103
51
147
162
105
93
101
91
79
70
101
62
50
47
118
67
98
51
0
88
26
57
86
61
42
78
97
87
20
115
43
28
29
85
85
89
43
91
129
122
124
119
130
76
85
82
85
133
81
132
131
126
125
70
70
120
78
119
125
75
72
128
76
130
131
132
132
79
131
131
130
81
78
131
131
119
117
120
117
116
73
72
122
124
126
74
128
127
73
69
72
67
67
123
71
116
115
113
115
103
95
46
47
19
40
30
22
74
95
22
37
26
49
21
51
72
46
103
91
116
130
126
130
135
130
131
131
136
87
84
128
86
80
73
89
79
70
123
60
77
123
164
136
115
119
163
121
38
94
110
101
111
210
99
76
168
195
75
169
130
88
96
30
133
95
0
38
65
67
69
31
109
20
75
41
35
32
58
71
22
118
56
76
222
170
151
134
52
49
52
87
27
56
0
0
0
18
70
35
63
16
1
60
52
0
32
62
1
26
20
30
40
26
50
0
0
47
2
0
36
0
0
0
0
0
0
4
2
0
0
0
55
56
33
41
47
0
0
18
0
0
45
53
49
0
0
42
0
0
42
39
46
49
54
71
3
24
42
46
42
0
0
45
31
0
6
0
0
6
10
47
48
13
0
0
0
43
0
0
44
43
0
0
0
0
43
0
48
39
40
0
3
0
125
54
0
108
114
66
27
48
146
180
165
69
44
25
100
66
18
49
6
46
75
35
0
92
73
124
41
147
35
38
47
153
6
76
29
40
32
0
100
33
31
24
58
97
48
118
126
134
76
78
85
87
89
83
134
133
84
131
77
75
75
74
78
123
75
75
126
78
80
133
134
133
83
83
134
134
135
134
131
131
131
68
118
121
119
67
76
127
125
127
129
128
130
127
126
71
72
68
69
123
127
69
121
66
67
54
50
51
51
23
30
84
64
73
88
86
90
77
103
79
49
129
49
51
40
63
77
126
129
130
78
79
79
79
78
77
128
80
78
77
132
124
85
77
132
122
124
133
136
29
88
165
12
66
75
163
126
161
92
160
144
135
115
104
149
177
109
90
98
136
26
101
153
76
99
78
0
93
93
66
46
66
36
45
7
121
102
102
188
210
127
116
70
44
106
108
49
107
67
141
29
73
0
33
51
49
93
0
43
26
53
52
90
100
87
145
51
36
6
0
55
0
0
46
35
38
34
46
0
0
0
51
50
0
0
0
0
1
43
43
0
50
0
0
6
0
50
49
2
48
0
0
45
42
0
41
39
44
30
42
11
0
31
33
44
45
0
41
0
34
48
47
0
0
0
1
0
0
9
0
0
38
0
0
0
0
45
0
0
0
0
0
0
44
43
0
0
0
0
118
69
36
18
80
42
43
23
137
119
163
80
39
87
48
55
54
70
0
42
17
84
120
109
70
158
109
163
174
42
59
85
44
41
24
30
48
84
108
45
90
75
93
21
26
61
115
116
132
136
81
132
78
81
132
131
84
83
82
81
81
80
80
130
80
78
132
82
136
85
137
135
86
88
136
137
140
84
79
131
130
122
120
123
122
71
79
78
76
130
132
132
80
128
128
125
125
71
126
123
128
124
125
69
69
55
55
54
53
82
77
38
3
20
81
95
92
27
107
91
46
80
55
51
42
62
75
124
126
73
129
78
78
127
80
128
132
129
80
68
66
112
105
78
128
110
103
28
139
111
86
123
25
134
166
134
130
151
151
116
154
108
128
176
101
154
38
52
0
103
41
162
63
114
103
92
55
71
51
89
95
29
104
128
55
43
64
11
223
147
130
100
78
87
82
105
59
86
133
201
35
48
0
62
59
0
0
33
52
62
106
68
27
100
105
98
45
55
0
0
0
0
1
45
40
0
0
0
1
0
0
1
0
0
0
0
0
49
44
0
0
2
0
0
0
42
54
0
0
0
45
45
46
45
0
42
41
42
37
44
79
86
96
37
0
0
0
0
33
95
45
48
45
0
0
0
0
0
2
0
0
38
35
45
0
0
47
53
0
0
0
0
0
40
0
0
0
0
0
27
70
96
51
148
86
138
17
132
210
149
65
40
71
37
46
26
71
49
89
46
55
74
68
37
96
155
114
61
24
0
17
67
90
34
122
135
121
93
42
88
95
91
103
41
39
92
54
120
129
129
79
127
79
81
80
134
134
81
81
82
81
133
82
83
132
83
83
138
140
139
136
86
89
84
85
88
83
78
130
128
125
122
125
125
127
80
79
129
131
81
82
81
76
78
128
127
76
131
73
73
125
126
122
121
109
109
54
106
96
84
42
5
15
27
41
42
31
58
50
41
76
61
50
44
61
72
120
121
71
76
73
77
74
81
121
129
120
77
51
60
76
25
95
110
19
0
61
113
136
123
74
33
53
170
129
74
180
32
30
186
110
102
149
176
36
21
83
22
35
101
167
76
109
156
80
122
171
145
71
71
116
125
77
134
70
0
0
214
109
93
118
100
41
70
97
170
26
81
31
58
0
46
87
69
12
146
59
56
109
63
86
35
26
27
86
25
54
18
0
0
0
0
45
50
45
51
57
0
38
45
49
41
42
49
0
36
52
53
51
0
2
0
0
0
48
4
50
42
0
47
46
0
0
0
44
43
42
56
32
52
99
73
0
42
0
0
0
47
99
43
44
0
0
0
0
45
51
0
0
0
40
36
47
44
41
0
7
53
0
0
0
40
39
41
41
0
0
0
28
32
55
1
115
132
160
126
141
210
113
108
109
68
35
46
47
94
86
76
149
42
0
68
90
52
129
99
19
73
94
71
76
103
77
82
124
127
107
107
97
81
93
84
33
86
38
88
96
104
116
126
71
76
83
82
80
82
82
84
86
84
136
87
137
84
86
84
138
140
139
137
86
87
83
83
85
82
77
76
127
128
126
127
128
78
79
130
128
130
133
83
82
129
79
129
130
80
80
74
125
127
75
126
124
64
61
110
110
115
95
95
10
59
77
33
45
32
53
50
36
66
64
50
47
59
65
62
116
120
71
65
127
76
73
106
119
59
123
30
64
30
0
71
103
23
0
119
106
33
57
83
101
6
141
136
48
128
80
60
140
81
50
90
106
86
43
45
42
26
168
81
41
119
122
109
193
84
87
105
24
42
105
114
119
114
40
20
182
106
67
109
66
33
16
13
199
57
140
70
96
51
28
67
29
99
135
14
82
212
53
125
76
75
108
105
4
0
0
54
0
46
45
38
47
53
60
51
0
45
0
43
42
43
29
38
53
55
49
52
0
1
45
48
40
0
2
0
41
48
0
0
0
0
43
46
46
43
33
42
43
28
0
5
0
41
46
0
33
87
54
0
0
52
0
0
0
8
50
42
0
46
41
50
46
43
0
4
51
42
42
0
0
42
36
0
0
0
0
92
111
98
99
139
158
128
42
16
33
62
58
120
16
5
128
60
108
82
63
85
100
63
48
2
42
33
72
51
20
92
121
71
105
53
68
42
109
91
125
105
93
76
144
123
109
81
93
103
74
78
86
92
51
59
63
123
134
134
87
89
139
90
141
139
94
138
87
86
140
142
95
94
142
143
138
83
82
78
78
78
133
129
128
128
130
131
130
128
130
80
78
80
131
80
129
127
78
74
121
74
77
128
130
130
79
73
129
111
75
104
107
23
22
20
13
34
22
49
43
41
52
60
55
54
108
104
104
107
104
113
104
122
123
118
101
123
121
107
67
93
111
92
77
132
137
136
59
51
76
62
155
0
32
75
71
52
20
63
67
126
72
119
79
94
144
69
58
176
158
32
47
23
103
26
241
53
100
128
146
0
75
18
62
67
67
59
182
112
47
48
74
116
30
0
34
73
160
94
12
78
80
66
48
0
62
117
87
33
215
0
51
133
89
52
85
0
158
26
30
42
62
41
0
4
0
0
0
0
59
0
46
0
43
41
46
40
38
47
0
0
0
48
43
47
52
43
0
0
46
51
0
0
0
0
43
45
42
39
0
0
0
43
44
43
44
45
0
48
49
77
6
10
0
0
0
0
10
0
0
41
47
45
44
43
0
0
38
41
41
41
0
41
0
0
0
0
0
0
36
100
90
84
133
115
110
120
133
32
105
55
112
66
81
11
62
67
95
39
44
92
0
3
0
101
126
5
51
55
96
80
36
35
68
67
48
10
90
116
93
106
42
41
113
108
58
59
95
58
27
56
71
36
43
48
118
129
130
135
137
135
144
141
138
148
137
89
86
140
144
151
99
93
148
142
84
83
80
133
133
135
79
77
128
130
132
79
129
131
81
128
131
132
132
128
126
128
70
119
121
125
123
128
129
77
73
132
105
119
106
120
81
39
23
3
21
17
56
48
45
50
57
57
55
54
47
101
53
94
110
102
68
117
109
94
112
109
79
149
93
61
104
124
143
201
200
28
87
33
41
86
45
27
66
41
62
129
83
67
118
29
60
76
103
168
95
72
4
43
75
96
24
158
199
51
10
86
118
83
52
96
30
53
44
78
104
213
100
31
52
77
122
23
3
0
18
160
86
187
66
113
16
31
9
53
14
16
60
123
0
0
157
40
122
0
35
37
126
26
57
79
0
0
0
0
0
47
0
0
0
0
0
42
35
43
48
45
0
0
0
0
53
47
56
55
38
0
0
44
49
50
52
3
0
0
0
41
51
0
0
51
55
0
0
40
0
5
34
39
93
0
0
48
0
0
0
0
0
49
32
39
43
40
40
0
0
0
0
0
0
0
39
42
0
0
0
0
0
82
108
124
163
121
158
93
106
98
92
90
116
99
64
13
35
30
17
40
29
70
89
111
17
38
154
80
14
32
140
35
23
104
86
49
69
12
62
80
114
90
99
52
95
62
103
57
113
44
0
85
111
124
7
42
37
25
109
120
135
100
130
141
131
143
141
88
135
59
130
148
99
96
149
113
106
151
149
142
142
143
136
87
95
80
65
88
84
131
87
77
124
69
139
125
131
134
126
75
134
74
130
120
127
72
83
130
128
100
120
110
115
89
86
0
28
15
29
47
100
119
33
65
44
60
43
44
33
59
34
100
90
141
113
114
104
127
133
100
136
161
62
162
67
122
199
97
53
5
26
91
34
84
116
35
61
60
41
60
61
106
77
40
191
81
83
140
125
102
45
0
0
62
102
224
68
102
90
130
15
0
139
84
68
61
99
47
220
84
13
6
63
116
81
135
112
104
81
168
162
136
65
144
66
17
0
48
4
0
140
86
55
213
127
85
63
208
30
199
85
76
39
15
0
0
0
0
0
8
4
0
0
42
36
0
0
0
0
1
0
0
0
45
41
60
48
0
0
45
0
44
47
51
0
0
0
0
0
7
3
0
43
0
0
0
0
56
31
57
57
94
51
0
0
0
0
0
4
46
46
40
44
38
41
0
5
44
0
0
43
0
0
0
45
46
43
0
0
42
30
120
145
72
74
120
87
80
82
168
84
113
77
60
45
50
44
48
82
46
75
133
74
29
14
105
98
47
122
62
24
52
34
52
48
15
78
90
110
56
72
122
105
66
67
25
83
55
12
16
90
87
89
94
22
36
69
138
100
78
56
99
90
143
110
92
131
112
64
97
125
168
97
155
170
120
112
150
140
145
152
91
98
97
95
134
83
142
133
126
78
88
85
75
67
52
68
59
69
132
122
124
120
76
74
65
137
49
120
100
115
110
37
56
0
24
18
24
40
93
110
80
55
49
25
32
44
91
122
109
23
90
145
138
127
109
132
112
23
99
82
115
129
3
115
119
119
108
24
0
125
120
83
58
125
44
17
34
63
59
82
20
7
42
56
67
91
149
149
124
0
40
45
91
97
165
202
129
13
113
152
0
12
9
25
0
33
164
51
37
0
28
130
88
70
145
26
130
164
26
123
50
123
68
87
71
70
18
0
165
38
24
68
181
161
26
188
99
47
134
28
44
61
28
0
39
0
0
0
47
0
0
37
38
0
0
0
0
0
0
0
0
41
39
53
46
0
0
0
0
43
42
45
47
0
0
0
0
0
46
39
0
0
4
10
5
0
77
0
46
95
46
0
0
0
0
0
8
50
46
0
0
0
0
0
0
0
0
0
42
43
45
45
0
0
0
0
0
0
42
57
33
13
128
144
91
28
121
103
74
120
113
117
114
38
0
132
85
12
47
88
56
120
0
53
137
92
48
84
84
89
102
98
112
107
83
32
121
28
51
111
113
65
38
55
113
28
6
51
87
72
95
89
65
51
40
62
118
102
5
40
40
99
129
135
127
95
121
137
70
101
109
149
112
108
82
146
157
163
98
94
101
93
98
86
130
143
88
79
123
122
124
116
108
42
63
62
74
126
119
122
69
126
125
80
67
91
112
107
97
63
41
53
8
21
27
69
82
88
91
70
84
42
68
80
84
98
88
58
101
112
127
64
70
92
55
20
22
115
88
13
178
43
171
114
121
107
102
41
87
151
49
56
34
108
50
63
111
7
78
0
55
0
26
26
28
41
176
11
0
34
0
29
0
108
182
173
62
41
84
89
95
43
49
85
107
151
64
55
152
88
122
76
0
82
74
87
44
152
73
26
181
98
52
134
100
0
4
83
86
8
34
0
0
107
115
125
65
44
120
37
62
99
41
42
47
0
0
41
51
39
35
44
0
0
0
0
0
0
0
38
0
1
49
47
0
0
55
46
45
40
42
44
0
47
0
47
44
40
38
40
45
58
0
0
21
0
0
35
49
43
42
0
0
39
45
11
2
0
0
0
0
0
0
0
39
0
0
0
42
45
0
0
44
0
43
0
0
109
78
111
49
68
122
139
131
22
0
36
110
58
154
81
56
7
108
98
99
69
118
14
170
94
62
84
89
0
180
66
108
76
108
128
34
134
67
100
31
49
125
119
113
103
62
104
67
74
93
131
103
93
125
47
33
97
81
53
55
32
24
29
94
107
94
68
80
130
128
94
110
107
113
85
104
106
86
160
162
88
92
90
141
87
127
86
66
57
81
135
111
113
119
102
54
72
136
88
71
68
68
69
71
122
101
72
97
126
96
39
49
59
51
21
20
39
64
72
84
76
71
68
85
66
71
79
94
84
108
122
51
122
85
58
74
167
100
78
79
0
52
170
95
127
132
94
114
71
93
64
70
0
23
115
100
198
41
18
9
59
37
80
16
0
45
10
0
0
19
36
0
14
43
0
57
64
85
48
14
51
118
53
39
157
20
249
149
51
34
164
0
94
50
57
8
85
79
61
106
90
40
74
130
26
155
72
43
131
66
76
75
17
73
26
183
127
47
56
91
12
93
38
83
63
0
0
46
40
0
48
37
39
0
0
0
0
0
0
0
0
37
0
53
48
49
39
39
50
50
49
43
43
0
35
0
50
44
42
41
46
44
44
51
36
12
6
0
0
0
54
45
51
34
0
41
46
58
1
0
0
0
0
35
0
0
0
46
0
0
42
45
35
33
41
43
40
0
0
100
73
90
61
153
61
82
84
194
137
0
35
48
0
0
22
64
112
46
98
100
86
46
36
82
131
59
17
49
81
27
0
136
94
24
111
52
20
0
26
55
95
63
36
76
106
79
81
159
42
96
55
94
82
86
98
22
56
124
53
40
92
54
72
50
14
130
100
45
52
102
137
128
66
90
67
40
55
78
124
124
109
96
109
106
53
35
83
59
77
147
124
115
95
59
47
110
88
118
46
55
52
119
122
71
35
112
68
104
78
41
59
27
36
21
27
43
73
14
26
50
20
63
74
14
23
44
15
91
43
0
10
26
59
100
135
30
166
97
32
69
39
77
115
169
115
144
127
133
7
162
141
172
94
105
95
92
0
19
22
0
0
0
9
0
35
100
21
48
109
49
16
0
144
84
190
60
17
78
2
100
155
118
118
105
159
255
128
180
95
163
67
34
82
131
35
90
0
69
46
91
111
79
56
100
117
74
41
28
51
44
34
16
13
61
63
184
156
0
0
37
103
81
66
168
9
0
0
38
38
39
40
50
0
0
0
1
44
43
57
53
54
49
43
41
43
40
42
50
45
43
45
0
43
45
0
0
47
45
40
38
44
51
81
0
0
0
0
0
0
34
48
45
39
37
43
0
0
0
0
45
0
0
0
0
38
41
45
42
40
41
44
50
0
2
54
52
0
0
29
76
34
88
89
99
78
200
111
75
13
75
93
54
5
89
136
74
97
81
73
57
94
34
41
113
104
78
63
96
65
0
136
74
52
71
72
49
24
40
39
105
146
110
51
44
123
78
134
64
96
0
60
28
46
67
67
39
88
40
70
11
30
6
10
0
83
16
70
29
70
148
107
130
111
117
96
98
137
131
112
102
100
38
101
56
109
135
27
56
166
68
86
148
78
47
130
63
111
113
55
50
120
116
67
56
71
92
62
24
13
63
21
33
46
42
42
45
28
30
0
61
9
65
72
33
37
22
109
40
26
47
11
13
95
250
100
111
53
42
0
109
37
111
92
118
106
110
59
26
138
73
99
43
127
87
100
17
35
88
0
0
3
0
0
119
40
21
86
0
57
1
33
185
178
30
149
60
88
145
96
84
97
47
33
255
218
91
164
78
74
125
66
94
59
25
51
3
19
86
119
129
127
114
0
184
21
0
76
45
86
27
114
0
80
114
78
156
20
47
0
103
136
111
85
22
58
48
38
46
41
43
0
0
0
0
0
43
42
46
44
52
57
58
46
44
44
45
50
43
0
0
0
0
42
0
0
0
43
40
0
0
0
48
0
43
60
0
0
0
18
2
41
39
34
37
0
40
0
39
47
42
42
0
0
37
39
42
41
41
0
0
43
0
0
44
43
0
0
17
57
65
110
90
59
63
72
105
90
96
43
59
120
0
34
100
36
96
91
165
24
44
97
111
116
52
171
60
32
13
17
73
26
26
12
50
64
41
100
59
28
144
156
70
50
124
84
100
7
52
12
69
40
72
75
104
26
90
116
38
62
48
0
6
50
0
0
41
0
32
91
125
156
40
119
190
105
131
125
109
117
127
39
112
73
33
76
23
48
115
71
57
113
68
71
72
105
58
51
62
54
121
110
111
54
88
2
0
120
65
18
57
69
47
56
44
67
44
36
14
63
70
68
48
69
32
35
99
84
53
139
54
74
70
165
149
110
136
17
0
60
38
0
0
61
146
71
16
74
110
0
19
39
124
104
117
56
97
88
0
0
17
0
63
183
0
104
97
80
81
118
78
114
92
133
106
27
79
18
92
67
101
75
138
218
135
139
124
95
26
196
101
90
53
0
27
0
98
46
77
50
63
102
65
167
4
60
50
6
88
37
110
13
43
66
131
201
84
46
2
69
102
30
81
27
13
47
40
56
44
45
0
42
45
0
0
44
0
50
42
48
0
0
2
48
46
46
45
0
0
3
3
0
0
5
59
0
0
0
6
0
0
7
0
0
45
53
40
46
11
10
41
37
32
32
0
42
46
35
0
46
38
0
0
38
42
39
41
42
42
0
0
45
44
40
39
50
0
35
80
121
132
185
34
54
85
93
104
98
151
125
32
16
44
58
53
76
69
64
122
103
92
54
15
70
76
150
12
0
70
42
43
99
0
5
53
23
61
77
121
122
82
43
66
159
89
86
100
21
8
12
49
120
40
89
86
68
83
33
47
50
35
0
92
41
58
0
29
63
93
173
139
47
14
86
72
74
120
81
94
123
49
68
34
102
9
97
12
24
102
48
20
39
33
38
56
20
61
79
56
108
104
102
31
9
97
45
74
5
14
34
86
73
60
23
108
28
84
59
81
78
91
0
29
78
46
154
96
106
87
152
108
134
162
230
123
43
79
0
126
0
17
19
11
81
14
57
53
43
157
26
84
44
95
74
23
60
14
3
0
0
31
64
141
49
136
170
212
155
173
91
103
95
104
173
117
94
9
77
0
107
96
64
255
82
186
105
74
40
130
121
164
34
0
0
0
94
0
67
66
15
0
61
44
57
46
65
16
101
68
0
79
106
52
73
72
60
0
78
50
40
26
67
91
59
51
0
51
40
55
0
44
7
0
37
0
0
38
51
47
0
51
0
5
0
0
0
44
48
12
0
0
0
0
57
0
0
0
0
0
0
0
0
0
0
0
1
39
27
0
0
0
0
36
45
0
45
42
44
0
8
18
13
1
35
35
38
0
42
40
41
0
46
46
44
49
44
57
77
122
39
152
67
89
74
18
60
58
11
75
28
13
0
0
23
77
145
55
63
200
133
158
19
48
82
90
25
34
31
59
70
82
0
0
76
129
99
74
66
96
104
98
60
60
133
154
155
8
23
63
55
63
76
58
103
47
31
26
65
0
0
42
55
134
43
42
103
151
99
58
141
157
112
98
104
59
105
122
145
107
110
49
27
5
63
66
52
77
40
126
68
93
22
52
0
85
54
101
76
83
48
107
51
0
41
141
8
35
48
77
58
96
4
81
121
81
79
81
89
24
43
77
50
95
30
100
66
51
40
97
53
116
163
153
81
0
8
20
45
0
77
99
25
82
29
0
85
51
154
87
5
102
132
73
38
25
33
138
4
0
75
92
132
68
113
104
94
45
55
106
117
127
69
22
53
71
138
147
80
183
100
109
199
181
197
52
71
53
36
87
117
49
41
6
88
26
66
84
81
0
41
52
0
0
9
132
45
50
60
65
63
115
93
26
41
130
61
0
9
76
26
26
85
64
0
7
0
50
9
44
48
0
43
37
0
0
0
0
0
0
0
0
0
0
0
44
46
50
2
0
0
0
0
3
0
41
46
0
45
0
0
0
44
41
5
0
0
77
53
40
34
0
0
0
0
0
0
43
42
53
11
8
1
0
49
39
35
40
0
0
0
48
51
50
49
41
197
64
32
62
149
105
103
81
125
177
50
65
84
44
0
0
36
56
81
0
99
65
126
76
94
68
2
98
58
17
8
169
152
195
200
115
69
0
65
129
83
103
92
99
182
68
59
76
118
152
66
71
24
102
109
75
92
128
62
44
67
95
59
46
40
75
12
30
156
75
109
156
181
176
4
96
70
72
48
150
92
104
54
151
102
72
0
66
49
91
124
75
119
52
24
50
0
37
53
129
93
87
36
164
50
125
25
5
149
48
2
13
6
58
6
37
52
102
91
81
47
58
66
63
6
15
82
51
24
72
136
181
73
100
146
153
143
20
59
14
40
94
35
122
55
101
104
46
57
45
26
158
107
77
101
111
39
120
88
56
9
105
132
0
134
81
199
37
27
29
95
170
90
192
30
91
123
127
102
55
128
57
70
73
255
131
192
0
91
154
136
125
152
128
104
0
0
81
115
22
152
55
40
36
10
37
0
51
22
0
58
60
8
127
120
169
58
78
166
46
13
66
55
0
38
86
39
57
26
0
0
47
56
55
0
46
44
0
0
0
0
0
0
0
0
33
50
47
47
49
49
39
0
3
0
0
48
41
44
0
0
0
43
0
48
43
43
3
0
0
67
74
38
0
0
0
0
0
0
0
0
42
39
0
0
0
0
42
53
3
50
37
47
0
0
48
43
4
41
113
78
26
42
118
70
90
73
94
131
142
122
44
93
8
0
42
82
95
39
71
45
59
121
0
14
87
85
45
53
0
39
106
110
115
201
158
68
63
125
133
135
135
131
130
101
130
129
104
73
54
25
24
25
65
56
124
141
85
45
85
54
99
23
79
117
19
0
117
147
175
145
177
130
0
43
99
40
0
49
78
119
89
99
104
62
105
71
0
105
182
26
89
76
114
32
21
94
111
113
35
146
86
100
155
140
96
103
68
90
33
29
24
46
0
80
67
57
51
121
76
89
137
71
5
0
110
60
57
112
88
86
80
110
97
99
139
191
158
76
34
131
36
94
101
126
95
0
44
19
71
114
80
115
122
37
3
86
40
115
26
56
0
46
77
54
27
68
52
84
127
182
71
168
102
75
69
66
72
70
57
64
20
0
216
161
84
58
63
58
65
47
30
114
123
52
11
104
114
42
98
48
88
49
30
53
107
104
64
26
62
84
18
60
142
73
0
37
109
156
178
46
10
34
0
16
83
0
48
0
0
0
54
49
0
50
49
0
0
42
45
0
44
0
41
33
53
0
45
47
45
42
0
0
0
42
44
41
47
41
47
0
45
55
47
0
0
0
0
1
62
79
41
0
1
1
0
0
0
0
0
0
0
0
0
0
0
51
47
44
0
0
0
0
0
0
0
7
0
34
107
112
114
95
57
90
80
103
95
158
68
116
108
26
0
0
71
125
45
131
98
109
32
33
0
91
2
23
47
10
25
89
103
68
26
26
53
75
159
113
198
154
180
82
95
42
122
75
55
117
0
46
47
36
53
98
176
92
92
76
0
0
84
0
26
42
0
159
156
147
98
107
114
6
115
178
46
38
22
96
108
72
94
161
64
36
83
110
0
94
123
29
100
42
36
99
56
98
101
92
124
113
73
119
111
97
93
135
34
128
2
40
35
2
114
37
87
39
165
113
126
138
98
86
72
105
54
2
40
88
125
100
141
48
72
79
90
81
16
41
92
101
114
111
81
146
10
0
9
0
125
49
91
71
105
55
20
0
60
0
0
10
70
42
0
13
112
179
134
118
189
106
161
119
33
36
45
62
18
35
47
25
0
216
48
57
123
114
142
124
74
158
35
135
57
20
0
12
0
17
59
68
107
45
100
32
57
47
105
102
63
14
26
155
81
0
3
0
139
200
51
129
108
0
38
93
22
23
0
6
54
48
43
48
0
0
0
0
0
0
0
40
42
45
37
57
0
42
44
43
46
44
0
0
41
43
41
47
46
49
0
48
58
48
47
45
44
37
57
60
80
43
0
0
0
0
0
0
0
0
0
50
49
0
0
0
0
0
47
47
45
0
49
42
48
0
6
0
49
125
75
137
40
56
26
53
96
80
91
0
119
0
120
89
50
105
84
60
147
153
142
17
74
41
0
0
65
10
109
52
5
131
100
60
72
18
123
93
99
97
123
136
132
26
89
50
75
103
92
35
88
44
26
18
82
145
84
106
83
65
7
1
50
0
9
61
102
132
112
95
86
218
100
131
72
68
49
76
71
28
86
15
54
69
52
47
114
27
65
129
112
164
103
96
97
0
130
48
61
76
135
102
107
96
102
110
137
0
60
12
16
5
44
24
22
21
131
169
151
181
64
128
100
210
119
108
50
63
75
96
72
81
88
52
2
17
41
82
109
99
101
72
109
49
196
26
54
159
0
123
50
124
48
100
107
98
0
0
106
0
9
60
23
55
0
120
0
67
92
108
106
130
102
0
59
34
42
64
0
0
0
49
152
84
40
148
119
84
181
166
144
82
137
77
0
1
0
0
26
7
0
73
83
153
60
112
151
56
90
32
43
48
144
29
3
12
12
33
33
26
193
89
0
58
31
61
76
49
21
2
50
49
53
50
47
0
0
0
48
44
41
41
45
39
7
47
40
0
43
46
45
0
56
40
44
47
45
50
0
0
50
56
47
48
47
42
39
51
61
80
44
46
46
42
45
0
0
0
48
0
0
0
50
0
0
34
0
55
51
41
45
50
42
48
39
51
0
72
75
88
75
51
159
97
41
70
77
56
13
23
34
149
51
114
52
89
84
118
110
171
102
82
11
0
0
42
98
4
58
0
174
151
101
79
0
48
124
26
61
104
138
139
27
57
7
46
100
74
87
114
36
0
25
60
143
66
127
19
127
0
28
4
0
34
41
0
58
131
82
143
119
111
125
179
43
47
83
29
82
39
58
91
120
63
118
0
53
44
52
148
30
100
83
114
20
115
40
59
165
107
112
122
103
146
197
56
43
11
40
83
34
0
22
55
94
96
152
132
146
82
144
8
191
120
62
16
74
36
73
128
107
131
28
0
32
102
88
41
92
91
61
74
127
104
72
1
181
41
41
102
166
122
71
0
3
59
22
60
0
0
87
114
26
0
125
62
85
83
109
128
148
141
51
0
19
34
104
0
36
67
210
179
33
58
128
108
56
110
61
45
121
103
128
43
23
46
0
65
26
60
52
203
101
53
95
167
84
155
80
50
178
54
19
96
80
0
116
105
11
81
96
81
69
35
46
26
0
25
45
56
58
60
55
0
0
0
46
0
44
44
37
43
0
7
46
39
44
44
44
0
52
5
0
48
57
43
52
0
0
50
50
43
47
0
0
0
0
62
79
43
50
41
36
47
53
52
0
47
43
0
0
45
40
0
43
41
44
48
54
0
2
0
45
35
45
51
72
108
105
92
22
58
144
104
169
43
89
85
44
117
26
48
59
119
111
58
62
91
119
121
88
0
7
7
86
89
73
38
0
57
26
93
0
4
133
22
158
83
43
14
0
54
3
56
37
51
60
61
138
47
42
83
98
84
97
71
28
52
23
71
101
45
25
84
52
41
89
126
128
121
130
134
229
123
115
55
122
36
17
125
52
174
94
0
52
19
117
108
187
140
90
132
105
80
106
118
43
0
69
91
110
78
102
47
119
112
29
52
157
38
76
49
70
181
143
97
123
97
101
124
5
82
92
61
83
30
11
32
113
82
63
1
41
58
131
0
79
125
107
156
26
111
59
67
66
119
98
112
0
18
119
79
86
13
68
109
59
42
0
177
0
121
26
0
63
115
152
140
83
0
3
0
68
123
96
118
134
119
163
255
136
106
80
84
157
63
55
69
51
126
88
156
96
74
93
0
0
148
53
19
129
80
53
162
129
131
110
42
26
32
80
57
26
36
59
85
61
49
45
26
44
100
40
36
60
39
5
43
61
41
56
50
56
0
0
61
0
0
46
54
2
0
7
53
0
44
0
0
0
1
0
0
37
34
40
45
61
48
42
0
43
44
53
0
0
0
0
17
0
0
0
47
41
0
0
0
45
46
45
0
45
36
42
39
44
43
45
55
51
0
0
0
0
2
0
93
43
50
97
81
83
94
127
146
91
109
59
33
74
37
0
19
26
56
117
42
75
119
90
104
0
16
138
0
87
115
0
95
108
79
65
0
30
135
79
36
43
23
24
31
79
116
0
41
145
134
74
134
54
59
89
64
60
66
109
104
85
43
25
10
35
24
40
40
112
79
117
109
95
142
124
116
114
102
50
66
17
50
72
98
38
21
0
0
78
198
78
5
77
103
51
123
85
74
95
31
38
44
87
91
142
46
70
142
94
0
126
56
46
73
56
155
139
143
146
92
120
156
84
75
95
45
77
35
93
152
97
84
75
107
25
31
108
56
46
47
75
62
86
80
0
63
62
50
131
122
80
36
48
91
88
58
70
93
35
74
0
53
5
0
66
39
30
49
124
149
93
15
102
182
123
164
53
80
61
52
44
203
255
97
26
96
81
163
110
101
38
85
143
216
171
107
126
34
82
48
0
72
111
142
65
117
191
181
98
75
70
59
68
117
112
121
103
59
49
26
25
26
36
130
74
59
46
1
0
48
60
57
81
79
59
58
0
2
65
0
1
50
59
0
0
0
46
0
0
0
0
0
0
0
0
50
39
29
38
60
46
38
38
0
45
56
0
0
0
0
10
36
48
0
44
40
0
42
50
42
44
52
0
40
34
42
43
44
0
0
50
52
1
0
0
0
0
0
26
47
16
58
195
117
118
151
96
85
114
76
89
60
82
46
14
13
24
160
72
71
163
75
95
0
69
6
0
83
64
51
152
65
39
0
87
47
120
0
63
175
73
102
0
85
63
62
54
68
92
26
80
82
29
79
22
64
36
17
56
65
132
107
163
7
4
64
87
139
82
117
124
99
69
67
60
99
104
37
40
32
83
49
6
44
97
103
61
47
165
62
65
121
83
139
156
97
69
104
70
92
36
0
115
117
47
69
0
63
54
62
101
136
92
176
74
95
24
91
110
109
92
147
126
135
49
77
102
47
70
9
135
50
45
119
82
28
74
41
131
22
34
39
33
40
39
31
148
137
77
24
70
85
124
57
125
90
118
41
168
81
129
120
0
0
16
39
22
43
101
0
89
0
29
63
127
27
54
60
0
36
207
255
84
52
4
131
0
40
75
56
35
138
41
126
53
102
121
86
117
26
137
133
79
67
16
157
160
143
32
150
114
200
116
48
165
56
7
78
26
84
51
84
43
45
66
0
29
0
0
37
0
57
47
52
52
0
0
0
0
0
0
65
0
0
0
0
0
0
0
0
0
48
50
57
57
49
42
44
0
37
38
36
43
44
0
0
1
0
58
72
37
44
35
43
40
45
49
52
40
0
0
0
37
38
47
51
0
48
0
0
49
0
0
0
42
49
0
64
113
77
28
164
26
41
87
106
104
126
121
26
116
136
55
89
0
104
144
38
168
114
69
104
61
0
0
0
98
92
79
45
76
6
35
69
35
51
31
0
149
93
57
0
65
141
139
102
73
46
80
113
112
0
0
41
27
7
73
0
56
0
95
54
38
33
103
110
46
80
171
123
69
93
157
130
52
50
133
4
7
26
54
5
46
101
46
95
96
174
89
30
76
56
145
146
115
82
95
78
54
4
132
163
37
73
123
36
101
101
55
41
153
150
111
86
101
75
72
87
145
107
112
120
89
111
35
88
26
29
96
99
15
29
69
147
115
109
12
58
42
43
43
13
54
0
0
75
97
58
50
124
50
125
88
120
50
151
61
144
101
0
89
0
45
0
81
72
66
33
17
136
45
95
54
90
0
83
25
73
14
229
207
128
79
90
124
9
64
30
96
3
0
91
93
59
2
202
89
33
28
76
45
81
92
51
72
58
103
150
215
85
117
147
72
48
23
40
0
0
94
42
78
44
76
97
156
30
4
28
16
41
38
96
62
0
48
0
0
47
0
0
12
0
0
0
0
6
0
0
2
48
40
0
1
52
53
61
56
0
37
41
37
46
0
0
55
60
0
18
26
0
45
32
43
44
47
51
52
43
43
0
40
39
43
46
52
46
0
50
0
0
49
0
38
40
46
0
112
55
70
89
76
67
68
49
78
134
0
39
10
97
60
0
0
66
77
150
177
136
93
47
113
62
57
69
32
94
51
33
39
115
90
32
49
37
32
207
76
89
45
51
0
0
74
56
121
93
26
130
86
72
109
84
134
74
102
55
5
108
88
148
16
88
55
99
82
111
123
120
11
0
42
56
93
92
108
127
32
68
98
74
67
122
44
32
54
112
70
124
103
62
96
54
133
92
87
74
50
70
90
94
47
58
81
18
39
57
88
140
39
81
163
123
95
133
123
104
16
136
108
93
84
97
84
78
85
74
172
157
13
140
49
40
67
208
67
40
5
60
37
0
43
66
104
93
76
116
27
79
0
46
44
46
55
55
14
66
144
54
38
56
59
109
108
0
0
23
55
74
3
2
70
75
88
0
168
0
53
46
226
134
16
118
82
19
12
13
105
63
118
0
180
65
88
22
75
116
90
108
117
26
55
93
113
23
28
80
152
0
26
2
26
85
41
71
49
16
17
97
0
0
177
68
60
151
32
12
34
23
35
23
133
100
6
2
42
0
0
48
44
56
0
0
0
0
2
0
0
2
0
0
0
3
3
8
16
61
50
45
44
41
47
40
39
57
48
46
16
21
0
0
0
48
50
0
46
49
0
49
48
41
0
44
40
44
41
0
51
50
52
50
38
41
0
0
0
72
116
94
73
103
70
26
50
79
76
18
1
166
70
60
10
139
52
29
94
120
97
114
35
61
114
59
37
0
0
21
42
105
89
26
73
133
198
126
82
115
170
35
0
36
114
100
60
66
146
56
47
91
19
87
77
68
59
155
108
87
110
138
147
82
69
108
101
121
64
154
71
13
27
87
44
109
43
111
63
33
40
85
94
62
0
0
26
42
78
76
39
133
87
67
29
120
127
66
73
81
107
111
84
58
128
141
10
83
72
179
164
187
198
123
151
170
171
142
34
161
24
126
75
85
140
141
51
108
137
106
35
96
148
45
80
105
99
111
154
0
37
47
71
53
0
0
89
30
26
76
0
41
53
61
44
66
118
141
191
72
36
61
48
161
145
46
74
97
153
142
68
56
45
8
72
60
107
39
49
53
42
180
127
9
86
7
142
2
3
18
73
82
61
4
17
98
54
26
68
4
36
71
158
79
109
80
0
124
34
86
120
21
26
35
0
108
105
54
89
11
102
0
0
155
96
33
132
26
23
46
7
83
37
63
44
57
0
2
1
0
45
11
40
0
3
2
1
0
0
0
0
0
0
53
58
62
2
0
0
37
47
43
48
43
44
57
2
51
40
24
15
0
37
0
70
54
0
0
42
51
0
3
40
38
46
44
0
35
37
41
48
54
0
37
0
0
0
0
63
83
122
140
0
13
37
0
98
81
5
16
22
82
45
23
139
73
32
99
42
68
204
42
46
0
64
38
45
112
120
171
142
147
36
111
84
226
206
94
73
124
92
53
0
75
98
19
92
178
73
36
103
103
66
115
49
112
196
136
123
50
176
89
35
53
121
118
57
64
148
60
102
46
102
35
76
63
137
85
25
76
81
78
101
26
0
51
40
58
18
109
84
86
34
53
62
173
69
80
173
64
125
56
76
85
49
59
73
80
100
169
114
142
72
184
73
135
105
63
71
91
64
115
88
88
61
78
118
145
177
201
171
12
81
99
152
94
120
95
0
6
94
45
10
0
105
21
89
50
76
141
0
76
37
44
41
33
125
159
0
70
26
152
101
63
36
212
179
89
36
30
43
10
4
137
92
52
147
15
34
75
158
114
16
43
95
0
19
93
26
34
61
98
50
68
98
106
87
47
122
95
1
76
30
57
26
53
110
127
28
51
121
1
0
69
73
71
30
48
12
78
2
2
18
112
110
63
65
105
0
39
72
30
47
44
60
32
27
0
0
60
62
45
0
3
1
0
0
0
0
0
0
0
4
64
72
32
53
51
42
37
40
45
57
52
55
0
36
40
45
16
0
54
53
58
0
0
0
0
50
48
1
51
51
0
57
0
0
6
0
0
64
0
47
44
41
48
0
93
94
61
93
15
92
34
41
165
86
52
52
77
84
129
125
32
39
36
73
42
55
153
77
38
6
0
0
40
52
4
54
82
94
98
103
114
109
152
53
79
121
101
71
76
94
60
84
8
120
64
113
74
91
73
115
78
67
84
128
87
29
185
69
36
44
128
149
103
80
109
60
146
114
80
117
39
56
105
119
55
125
71
87
68
52
0
80
25
101
35
127
84
56
47
96
90
94
84
80
12
27
124
69
59
39
104
78
84
54
0
77
67
125
140
75
117
82
143
52
81
10
8
85
157
56
26
50
120
52
155
75
157
80
73
23
129
154
140
115
127
79
37
0
0
22
86
32
67
53
75
135
107
24
176
65
106
155
34
195
0
0
93
128
26
45
137
92
100
26
90
103
5
63
19
96
201
138
84
87
13
99
114
74
84
94
76
48
63
92
0
69
35
133
93
51
83
119
125
67
70
81
100
45
69
79
104
129
58
14
146
0
89
0
10
109
89
27
52
0
40
15
39
0
77
0
83
130
56
33
0
13
82
59
45
44
29
9
0
0
28
90
26
0
0
2
0
4
2
0
49
0
0
51
8
4
0
36
51
48
44
47
50
46
55
51
55
46
30
35
52
11
0
47
48
5
0
5
2
0
0
48
46
53
54
0
58
49
0
1
0
0
10
44
49
43
40
50
50
49
111
81
117
74
113
105
19
49
169
44
0
74
83
53
31
66
99
60
0
16
34
29
121
52
44
14
2
0
3
28
79
39
69
121
144
168
131
82
59
55
101
78
71
68
69
111
133
64
121
137
91
129
65
103
92
90
88
51
69
136
89
110
79
28
108
118
51
105
84
49
83
93
130
50
68
96
17
108
58
76
70
86
134
62
70
99
0
3
54
97
64
104
123
16
190
72
87
7
109
142
62
42
0
31
71
124
69
93
165
101
84
60
103
100
0
32
45
107
54
80
116
73
108
87
51
7
0
145
68
102
120
119
63
99
33
62
152
107
135
33
100
98
34
8
11
72
0
42
138
209
59
55
123
119
22
53
66
51
57
121
26
69
59
92
48
109
153
37
133
130
86
0
111
67
71
50
255
26
0
61
181
106
92
74
0
43
66
54
0
62
188
71
184
69
73
137
141
83
82
154
61
109
131
123
117
88
35
53
61
114
79
58
51
142
67
0
77
61
53
118
47
0
13
159
194
120
52
77
60
24
141
153
45
70
68
0
34
47
29
22
106
0
2
0
3
4
3
8
40
43
45
0
0
53
12
0
35
0
0
0
53
55
46
54
50
52
42
0
0
64
1
0
42
46
56
38
6
0
0
0
46
43
56
55
0
1
54
0
48
0
0
9
0
0
0
0
52
51
86
60
62
97
80
151
45
59
108
191
103
56
78
14
75
55
98
91
136
12
78
38
8
100
115
47
26
5
0
33
45
0
56
31
104
129
168
107
99
92
178
48
53
31
106
105
92
96
99
132
82
119
129
163
108
65
96
74
26
73
95
109
70
61
43
153
98
107
75
88
29
32
78
148
151
99
128
146
59
17
136
76
107
81
65
28
122
0
14
74
108
22
24
166
129
60
78
107
100
36
105
119
20
84
11
6
109
108
74
116
37
102
54
134
82
56
89
19
45
82
111
81
103
106
84
26
30
67
100
131
125
167
49
45
100
113
124
180
112
43
74
101
28
6
84
0
67
0
61
82
157
38
19
73
23
107
18
84
67
27
81
90
74
30
160
99
126
219
28
100
70
109
62
25
26
59
35
81
130
77
45
188
110
94
7
101
42
16
39
12
160
142
168
72
110
59
126
84
129
31
50
86
53
165
94
55
90
21
70
71
6
13
0
29
48
92
62
93
103
110
41
4
30
35
75
78
35
48
66
55
41
51
155
192
26
75
22
82
56
0
0
80
0
12
0
10
0
0
0
0
0
44
0
0
0
68
43
0
0
0
0
0
51
48
57
51
0
47
0
0
72
0
0
0
0
52
40
49
41
0
0
41
0
53
50
48
0
0
45
47
0
37
9
0
0
0
46
54
51
78
119
80
108
45
143
68
60
95
142
129
65
35
0
105
96
83
75
144
66
2
90
56
138
145
74
26
24
0
0
101
66
0
26
60
132
135
15
19
51
46
87
89
75
40
129
119
119
141
118
88
69
111
110
59
102
95
98
32
58
37
53
45
0
0
83
44
106
120
201
90
50
118
87
117
80
87
100
52
65
27
46
54
91
45
57
116
9
113
2
44
33
19
58
106
61
18
75
88
10
128
122
73
34
86
31
140
94
144
125
45
97
121
131
109
157
100
46
107
77
118
65
101
71
136
0
27
143
73
155
129
100
132
108
95
96
77
32
110
103
113
100
8
9
113
0
47
70
118
105
89
110
125
112
103
102
79
122
100
130
66
0
0
64
5
88
94
94
102
68
73
53
25
106
100
90
61
26
158
125
73
255
91
76
0
127
67
76
30
126
17
95
162
53
97
80
63
27
106
68
0
134
127
88
176
93
52
50
24
0
25
27
4
36
19
68
173
52
37
38
0
3
68
42
1
0
0
15
0
0
0
26
26
189
34
50
41
41
115
68
56
72
42
49
0
3
0
0
0
2
6
2
9
0
0
0
34
53
0
0
0
0
0
0
61
52
40
58
9
38
120
0
0
0
0
0
41
44
39
0
39
35
0
45
0
54
0
0
46
49
0
36
61
40
41
48
52
55
51
88
50
85
55
146
101
55
70
144
54
32
74
107
71
73
33
61
20
38
140
89
43
78
87
128
119
73
0
99
0
0
20
10
78
97
143
75
25
20
82
77
78
106
84
81
92
109
57
18
136
67
72
64
105
63
130
205
109
101
88
13
24
91
0
88
16
35
0
53
95
84
116
72
76
66
13
117
44
87
21
86
12
75
64
90
10
124
24
66
48
62
85
58
144
119
53
123
112
72
112
56
34
80
11
50
103
13
97
64
44
55
63
88
138
115
106
112
53
4
67
55
36
145
119
89
82
0
42
0
103
137
153
78
48
56
110
55
70
148
88
148
60
63
76
38
121
56
114
150
60
50
105
165
99
111
115
179
145
32
47
109
29
4
81
65
72
120
91
87
58
138
27
57
79
106
37
77
104
55
43
83
252
90
16
48
78
39
4
139
1
27
34
0
139
117
18
0
13
0
96
50
62
90
99
132
29
30
32
74
66
129
0
97
15
0
2
26
31
21
85
49
36
60
0
20
0
52
17
45
19
0
84
51
39
67
0
0
73
47
30
76
92
90
55
67
42
0
19
0
56
10
0
18
0
0
54
58
0
0
0
0
0
0
0
54
53
47
60
57
0
46
0
0
0
1
0
44
0
0
0
0
43
35
44
37
0
0
0
0
47
42
0
5
40
43
49
53
53
48
58
0
80
54
131
25
25
71
216
70
83
83
39
48
0
24
61
10
47
155
112
70
73
110
171
44
48
34
50
0
7
101
24
24
119
62
122
82
87
45
0
43
50
70
9
34
24
103
11
27
64
26
75
73
122
123
51
8
86
0
42
0
97
0
20
30
48
26
156
92
11
168
103
57
123
84
132
98
101
89
107
63
47
41
34
55
59
74
68
69
49
0
0
127
92
42
65
109
32
52
14
22
68
94
58
33
106
110
96
120
98
43
84
53
129
147
131
128
27
65
163
126
52
146
54
25
14
48
8
127
80
149
71
77
56
48
82
155
75
99
104
46
80
41
84
69
161
103
68
11
44
121
60
185
7
132
72
98
104
48
130
14
59
0
52
75
131
140
61
26
143
112
100
7
93
44
61
26
170
78
79
225
87
81
12
23
36
102
103
40
75
77
0
71
123
48
29
0
0
111
53
90
80
159
132
86
73
73
41
5
9
5
31
43
57
32
68
26
74
0
42
26
42
67
1
0
62
0
89
80
33
164
35
46
57
65
47
26
26
35
26
34
111
67
80
22
0
8
0
4
10
0
72
0
6
42
49
40
0
0
0
0
0
44
49
53
53
54
62
44
43
0
35
0
59
47
0
0
0
0
48
52
33
2
0
0
41
42
0
44
41
44
3
42
46
47
50
52
47
76
36
123
84
68
0
25
43
166
95
51
0
0
30
80
34
18
30
55
48
27
116
137
48
87
105
93
99
14
44
55
79
79
64
157
91
63
66
100
69
151
38
85
45
36
0
70
110
48
64
80
42
126
79
26
56
0
11
46
160
11
0
108
26
52
4
67
62
144
2
4
59
53
79
154
91
121
117
125
51
158
44
64
24
28
110
74
46
17
72
51
60
16
139
40
32
65
155
0
8
0
46
4
93
88
23
49
137
58
112
59
125
94
118
165
65
156
72
41
11
50
126
80
55
41
39
0
74
30
37
163
135
50
53
79
17
112
74
106
114
156
59
70
82
173
57
83
216
33
62
43
124
114
36
18
27
58
53
117
68
103
80
83
16
58
79
58
107
132
78
130
64
78
26
59
46
45
100
41
106
90
255
113
47
11
0
21
26
122
49
131
0
97
25
20
85
53
35
0
96
76
93
125
150
63
125
59
66
56
0
26
45
37
81
61
57
56
58
26
112
96
74
103
4
65
0
97
42
55
55
88
108
189
26
102
116
51
44
58
70
39
55
86
75
112
35
78
16
0
15
43
0
33
44
0
0
51
56
0
0
0
40
0
0
49
44
41
0
52
55
89
34
38
51
47
60
40
51
50
32
38
38
39
0
0
0
0
44
0
54
48
38
46
49
42
45
38
49
50
26
36
129
175
91
10
28
66
124
60
105
67
54
98
26
0
141
0
0
101
0
32
44
94
102
82
108
76
0
87
118
125
150
96
77
176
59
59
85
115
117
94
47
4
32
70
67
29
103
139
22
83
39
94
35
0
85
0
62
108
2
111
31
80
49
45
70
101
90
98
43
51
56
151
99
117
131
76
85
112
37
13
71
51
103
108
23
82
12
39
153
70
40
60
78
64
74
79
107
42
92
70
33
128
117
0
138
82
26
39
130
113
77
149
120
92
23
40
31
57
64
91
39
61
22
28
0
32
42
25
114
97
77
74
65
73
103
64
155
189
254
81
137
168
127
148
118
83
89
58
94
63
92
104
28
64
94
88
130
159
69
112
40
48
78
38
0
66
170
62
96
114
51
20
42
47
91
195
27
96
0
223
91
93
13
53
33
89
187
112
138
64
26
71
0
71
31
172
146
71
129
118
141
24
72
117
82
136
50
85
96
140
123
86
102
58
32
38
27
101
53
63
51
7
67
32
104
8
0
55
35
101
138
0
65
63
67
112
20
35
47
57
140
59
164
185
114
63
39
52
49
21
12
57
45
0
0
42
46
0
0
0
0
0
44
0
0
3
0
20
83
31
35
55
45
52
44
51
52
41
44
40
43
0
47
45
48
47
0
54
49
40
0
0
0
46
41
49
46
46
110
140
89
127
0
24
156
120
26
96
46
57
84
53
71
110
63
19
157
46
45
0
121
177
128
93
68
0
137
153
115
153
162
163
57
137
103
97
122
123
75
43
41
31
125
95
80
87
48
94
41
69
36
72
8
86
0
13
127
85
40
0
125
80
83
65
68
94
135
62
63
152
98
135
49
154
128
73
109
126
63
49
116
77
109
61
24
75
64
53
78
46
63
78
39
103
58
90
63
13
0
88
9
137
123
72
63
69
104
69
34
110
87
138
122
55
22
51
44
113
64
45
63
31
37
0
66
34
117
27
66
67
97
28
93
96
119
59
98
160
53
69
118
74
130
129
57
69
154
85
56
48
33
61
92
86
159
88
80
37
116
34
10
31
42
205
56
110
88
112
127
76
58
82
44
124
59
70
0
0
225
102
101
40
57
14
58
178
116
65
47
60
53
45
20
79
139
125
0
216
129
79
171
94
103
62
72
40
63
88
152
160
104
129
72
47
52
42
25
0
161
32
0
10
103
0
61
0
62
68
47
42
60
86
63
18
118
98
38
54
0
99
147
169
219
91
54
56
107
1
0
0
1
4
65
54
0
3
55
49
42
41
40
46
0
0
55
0
48
78
0
38
55
0
0
45
48
51
0
0
0
46
44
45
0
54
0
0
53
50
43
0
52
42
44
42
48
44
128
135
0
28
135
23
0
220
6
166
39
0
55
0
39
64
67
97
103
0
59
101
85
166
111
84
82
135
87
96
153
147
91
34
69
119
103
133
134
62
76
77
40
40
26
22
26
42
64
78
25
14
26
32
67
39
28
69
172
148
19
2
0
0
46
0
64
88
5
42
69
66
103
34
84
50
53
43
112
121
122
124
61
39
18
0
62
71
70
0
114
66
78
77
40
49
28
107
69
13
29
201
21
22
0
21
147
174
128
106
108
47
181
165
135
94
53
140
50
13
65
32
95
81
106
48
147
36
114
113
21
152
70
88
63
36
62
140
66
167
83
76
63
39
57
14
82
41
123
62
111
68
39
32
120
100
89
144
118
67
73
117
22
73
107
106
112
99
102
52
99
112
57
103
188
33
82
26
62
0
0
206
102
63
87
50
10
65
206
112
176
106
121
0
12
128
0
96
128
0
2
127
45
26
44
0
120
0
0
74
70
67
129
34
184
61
31
131
26
20
82
51
85
174
72
79
68
140
0
0
66
10
31
79
26
32
30
26
87
27
0
63
56
165
182
77
114
143
125
112
3
24
53
18
13
0
0
0
0
52
0
41
43
37
57
57
0
0
33
80
63
0
1
0
3
0
0
39
41
0
0
0
41
36
0
2
0
7
52
50
0
42
0
0
44
42
42
46
40
64
96
0
106
99
0
56
190
59
157
37
30
12
82
128
109
50
51
69
0
75
137
80
11
107
135
149
112
64
6
122
124
39
64
82
51
132
88
74
135
101
94
24
30
69
73
80
73
30
5
0
19
128
80
18
0
8
136
128
113
70
49
42
0
21
26
124
32
0
57
104
91
66
102
35
58
72
96
104
114
194
46
18
72
105
20
23
13
43
49
67
73
17
26
0
60
37
58
10
116
26
134
43
0
56
55
83
134
254
40
187
45
118
111
71
101
65
148
100
107
17
59
109
22
70
101
125
35
91
89
114
133
139
46
61
36
102
78
89
104
128
93
68
84
27
68
47
2
0
84
59
79
24
61
84
103
107
103
154
82
56
164
47
65
51
66
44
50
64
120
114
3
82
117
143
139
57
0
208
25
75
219
168
99
122
139
114
72
114
168
102
99
57
124
15
36
58
136
79
0
24
32
88
0
17
59
3
58
40
18
0
41
29
19
137
127
106
89
6
59
85
107
75
66
71
121
47
72
100
65
18
62
0
22
112
96
52
3
0
31
6
0
36
84
170
132
48
55
150
179
125
0
38
121
68
18
18
4
0
49
0
0
45
0
51
50
44
9
0
120
0
42
53
0
0
0
12
0
0
0
2
1
44
38
0
51
49
1
51
48
48
0
0
52
50
0
44
46
38
111
13
94
82
93
147
176
128
91
171
99
9
0
39
113
136
68
69
82
44
60
72
105
102
50
80
144
100
43
53
124
136
36
229
78
60
122
126
70
139
150
76
46
94
80
43
61
14
12
11
0
124
209
66
96
18
105
110
65
46
7
41
109
88
26
34
36
18
19
176
130
69
113
140
124
17
67
85
137
88
95
60
34
36
49
8
17
68
48
56
22
0
46
107
148
173
94
54
97
10
31
3
135
78
92
57
108
156
115
83
134
97
95
21
42
105
149
153
96
177
76
53
38
160
101
106
62
55
59
52
149
54
123
60
112
127
52
138
28
104
110
151
176
110
102
112
24
16
26
10
125
129
49
62
76
122
146
62
113
101
90
36
65
67
35
71
18
26
58
114
124
79
93
58
38
0
27
16
96
127
12
255
170
128
79
39
104
44
27
139
76
90
6
0
26
111
17
72
128
90
39
151
102
46
42
60
25
177
94
6
74
115
0
102
0
32
43
190
83
61
82
78
80
135
68
71
155
48
36
60
0
26
58
115
152
182
66
34
31
44
1
47
95
92
0
87
83
77
186
180
140
30
48
27
26
35
18
0
0
0
53
46
48
51
0
0
50
60
0
53
0
0
52
0
0
0
22
0
0
0
1
0
4
0
0
0
2
43
0
0
50
0
0
48
51
0
41
44
41
9
71
70
86
129
125
138
88
139
103
87
78
15
0
85
45
51
104
36
15
81
42
68
102
56
54
97
143
81
60
127
48
158
151
142
103
122
116
85
64
116
69
111
92
34
99
82
8
0
15
138
89
118
32
36
15
72
26
56
40
0
32
104
44
77
72
27
44
30
57
110
149
158
137
161
67
218
83
67
90
82
161
60
26
32
40
39
96
18
45
32
71
159
72
167
108
97
68
77
80
68
15
140
38
67
133
115
133
100
41
109
54
0
34
107
47
142
148
173
167
107
106
116
97
145
70
95
82
61
51
114
106
75
66
42
20
85
153
132
122
92
82
191
29
151
75
43
147
9
61
161
26
77
16
57
149
123
50
34
89
49
126
38
10
17
18
23
6
1
129
96
117
56
136
160
140
85
0
0
117
96
253
158
149
48
5
24
154
53
62
81
83
37
0
83
11
20
42
68
162
119
48
135
76
53
10
37
141
121
53
83
158
0
51
40
28
45
33
133
60
69
1
104
78
116
69
112
81
130
80
10
83
36
70
111
160
15
0
56
0
71
52
51
128
92
51
142
134
183
131
144
37
47
0
120
38
2
0
0
1
5
49
51
57
47
1
4
47
41
45
0
0
1
0
5
43
78
0
37
49
0
0
14
0
0
0
9
35
44
0
0
0
0
42
48
0
0
42
45
116
20
57
135
83
173
134
72
44
119
67
28
86
82
92
36
164
58
0
88
57
12
68
107
78
88
50
146
96
107
92
29
56
77
206
126
113
209
68
35
70
113
83
104
114
75
65
11
57
105
66
70
59
58
17
33
31
40
52
107
107
177
149
91
47
0
119
76
89
99
132
100
93
75
121
53
58
67
57
66
78
102
47
85
102
18
57
126
8
63
115
58
67
71
58
26
91
30
83
133
69
39
163
0
104
88
158
139
158
12
32
71
17
97
50
82
169
94
167
60
147
122
160
89
115
65
129
138
63
53
104
158
68
0
0
84
130
80
89
144
121
91
76
0
34
33
0
148
0
102
74
104
109
39
41
96
83
129
4
0
81
84
95
104
38
84
78
168
41
91
18
53
113
60
88
36
80
66
38
90
127
254
168
102
71
4
23
64
5
64
97
31
0
0
129
0
91
182
90
85
91
136
55
98
49
0
136
116
65
44
0
51
0
0
48
8
54
18
131
73
166
21
0
0
80
92
39
42
34
22
111
92
0
26
90
125
87
8
50
11
64
29
0
33
43
47
132
159
186
147
131
50
28
144
177
99
121
71
0
5
40
53
16
3
0
0
65
35
94
58
0
1
57
48
43
48
57
40
0
45
55
52
48
0
40
0
0
0
47
44
0
0
0
41
40
0
0
48
49
107
76
93
146
192
4
26
71
95
0
93
44
6
95
36
98
2
0
55
0
117
147
144
61
80
87
190
91
141
139
77
45
45
35
126
133
117
66
67
26
104
70
63
97
151
99
83
34
9
22
46
96
62
0
11
0
77
145
102
73
49
86
95
60
183
83
0
21
27
37
26
95
81
74
58
26
57
132
84
28
181
99
111
109
44
73
45
43
32
22
40
25
0
108
76
102
107
96
69
28
113
112
91
100
82
72
123
175
201
26
57
145
173
79
116
57
112
86
154
148
189
45
60
113
56
135
17
172
118
89
103
101
78
63
26
118
54
125
79
141
117
162
66
83
102
65
29
135
0
58
124
27
18
54
149
73
95
63
57
88
44
122
38
148
177
93
110
26
118
146
120
18
59
41
27
5
79
26
81
187
122
255
155
179
83
57
0
98
147
72
66
28
67
81
17
35
56
113
156
64
8
122
83
61
177
119
66
27
45
142
40
131
42
24
95
52
43
68
37
57
57
158
186
106
35
0
0
160
25
0
16
7
0
66
26
70
0
0
0
164
0
124
248
43
50
58
61
89
171
205
152
0
0
56
98
43
122
94
5
79
59
35
10
60
0
6
31
71
136
1
3
0
0
45
55
55
49
52
0
0
49
49
42
54
57
59
0
0
3
47
0
0
54
55
54
55
53
44
45
125
146
127
172
71
0
63
22
129
108
37
107
46
99
58
13
36
92
55
103
113
128
134
90
88
93
144
71
120
168
65
26
40
0
68
104
138
67
62
56
68
31
120
191
32
60
77
45
20
26
23
3
7
46
26
4
53
66
71
53
100
109
145
39
55
132
53
25
84
15
69
12
133
106
20
80
109
118
37
53
165
12
4
36
62
36
104
125
5
62
76
194
108
172
245
197
95
50
16
59
3
24
78
172
102
64
76
168
189
48
56
80
143
26
95
66
81
114
102
81
45
75
64
0
28
74
72
107
67
112
26
187
180
122
89
58
120
197
72
0
64
130
41
66
74
0
0
87
0
135
87
75
15
20
44
21
83
0
48
12
131
63
142
68
130
162
203
116
72
84
89
0
52
117
133
51
0
29
0
176
79
255
143
81
80
28
49
47
169
117
8
68
58
94
28
26
114
121
196
74
26
44
35
26
152
105
75
26
45
137
48
198
46
57
67
0
107
109
148
17
64
140
141
105
83
28
103
90
32
42
5
39
0
0
31
35
51
108
82
167
145
53
0
115
77
76
63
82
156
93
69
13
0
28
185
107
0
77
76
24
106
81
96
69
64
42
71
110
71
0
0
0
0
0
0
45
45
54
50
0
0
51
45
0
44
51
48
4
51
48
0
0
47
50
0
51
0
43
39
139
137
113
176
63
111
129
91
96
96
18
98
51
55
83
93
39
158
91
105
124
74
103
115
124
68
129
61
137
112
68
126
34
21
21
123
133
63
42
54
23
44
80
0
36
90
103
10
6
47
131
0
5
0
20
86
26
77
135
92
13
62
172
26
78
58
75
0
51
97
58
81
88
97
85
84
36
89
67
59
108
57
46
40
43
64
155
138
19
78
0
55
184
66
227
78
109
40
85
56
34
0
131
145
136
148
59
82
227
26
75
137
77
191
105
110
38
47
0
4
63
108
29
0
83
45
64
85
5
82
68
105
173
123
148
141
110
173
43
20
27
100
103
17
31
88
97
37
53
34
86
19
43
82
48
0
166
86
75
18
46
0
60
53
132
80
124
152
115
109
85
67
80
58
16
53
137
121
72
57
90
244
107
60
0
98
69
59
121
134
41
108
82
52
26
45
88
49
110
88
118
52
103
26
0
174
70
49
84
28
66
133
53
56
78
8
94
44
99
87
123
112
93
32
133
50
13
46
36
0
78
0
0
14
72
52
100
65
119
27
141
105
70
129
154
109
7
190
156
67
109
0
6
44
140
88
71
149
88
76
87
102
50
123
61
49
63
159
58
0
0
52
44
0
0
36
0
0
47
45
0
2
0
0
36
44
48
0
0
64
60
0
0
44
0
0
0
0
37
64
104
128
151
126
130
118
116
103
110
72
86
107
90
10
48
42
24
126
62
119
94
129
47
157
77
69
93
125
59
110
110
54
43
122
207
119
175
168
70
37
83
103
90
21
47
96
0
0
35
133
7
0
0
60
61
73
134
93
100
32
92
98
104
88
93
0
46
111
56
99
137
98
86
135
69
80
40
33
106
95
128
48
1
45
38
40
80
102
21
46
13
99
41
3
5
82
14
24
0
94
61
58
10
133
55
8
0
113
2
55
93
116
168
105
99
102
111
103
46
117
115
70
119
136
120
111
136
135
98
165
158
181
171
81
100
69
140
79
41
92
48
55
42
30
75
68
58
30
25
111
15
38
46
84
89
147
99
59
128
0
40
49
167
119
118
50
56
165
107
121
108
27
106
0
36
116
68
56
88
134
241
106
93
27
202
143
45
167
51
21
33
12
78
26
121
0
0
90
0
152
38
25
109
26
157
73
116
34
61
126
141
42
60
54
133
131
32
158
77
140
76
133
33
136
155
95
28
11
48
131
8
40
81
33
64
95
64
85
53
82
117
146
51
40
151
105
70
75
170
64
1
41
45
143
188
117
117
117
122
0
75
82
31
4
47
79
139
61
0
43
50
70
53
35
37
0
0
0
47
1
4
0
0
0
43
46
53
43
59
58
0
43
44
0
0
44
0
0
85
80
130
155
98
153
156
52
105
114
21
105
93
92
96
46
12
57
63
26
155
135
180
87
151
119
47
136
124
110
63
26
87
50
152
228
95
135
144
33
65
20
59
92
72
48
35
115
72
14
14
0
17
0
33
0
47
15
0
52
22
98
26
126
35
193
26
80
111
136
147
75
87
105
62
129
132
28
50
47
62
74
90
73
37
74
74
142
114
102
0
118
30
17
56
40
99
8
0
56
107
83
31
110
116
81
25
0
67
129
37
138
75
153
182
145
118
117
94
99
54
150
106
104
97
61
115
193
160
69
96
209
173
159
121
114
83
198
101
27
142
96
133
69
115
57
81
118
0
46
55
21
30
102
122
99
115
93
97
101
37
52
66
172
81
91
122
110
68
78
97
84
26
161
105
25
55
100
97
146
134
198
169
43
82
14
176
29
68
59
104
27
44
21
84
127
29
44
134
0
0
41
108
113
129
25
80
118
91
44
94
112
118
111
26
153
63
122
168
99
126
56
67
0
47
110
131
0
14
1
43
31
26
8
41
26
100
70
0
155
54
69
36
67
111
33
98
35
55
31
9
46
0
0
83
144
120
81
43
146
40
0
24
58
58
84
106
84
120
73
48
41
65
52
39
42
49
0
40
50
2
3
1
0
0
41
47
5
0
44
46
1
51
48
0
0
47
0
0
100
72
19
34
158
11
72
3
56
69
59
125
160
127
113
63
138
142
52
174
91
139
78
79
83
72
132
141
67
74
60
67
161
54
134
186
88
93
130
128
180
51
35
26
68
109
47
0
101
28
128
40
47
26
2
74
25
86
18
46
58
97
0
0
63
44
47
54
63
72
91
24
13
103
72
90
61
11
41
102
99
127
93
133
113
41
37
126
108
51
0
101
83
78
0
53
72
67
16
11
5
76
75
97
46
64
3
45
0
17
69
127
141
84
145
142
196
105
161
92
128
148
66
207
103
95
78
0
0
20
127
74
111
101
138
80
148
92
60
92
100
183
150
172
31
90
102
125
26
47
124
148
95
45
116
75
181
80
128
82
147
46
61
74
52
127
86
96
53
119
30
92
107
155
6
105
120
23
224
106
127
150
123
59
43
63
86
94
122
72
50
11
26
57
106
48
0
0
41
9
39
10
52
17
175
67
69
145
102
154
52
143
45
49
46
139
91
143
91
82
67
135
95
58
8
0
29
129
159
98
68
37
83
75
56
172
26
68
0
12
33
42
48
37
161
76
90
118
90
110
8
106
137
170
63
81
102
102
101
62
45
79
27
17
111
33
217
102
16
53
91
65
58
63
41
0
0
0
42
44
4
1
62
47
0
46
0
46
0
0
0
0
9
12
0
0
2
53
0
131
86
64
96
70
105
48
56
33
79
45
141
146
147
97
110
168
136
78
137
84
122
39
53
3
64
46
143
39
75
149
73
168
52
104
139
123
134
108
117
138
74
25
26
93
68
58
21
37
0
76
21
0
50
0
116
61
109
37
73
28
0
5
4
0
1
59
124
120
123
103
81
90
62
56
39
82
105
0
79
19
84
136
50
83
83
83
62
54
30
55
45
94
26
28
0
30
37
126
96
18
113
75
0
84
63
0
0
54
40
54
88
125
114
156
119
72
138
114
68
108
153
49
175
118
61
102
143
36
6
146
123
59
110
176
48
143
156
74
136
122
182
29
147
98
58
107
74
65
52
94
163
83
37
74
114
118
110
83
44
150
26
206
0
236
69
146
23
90
246
50
152
153
72
11
99
45
0
182
131
113
70
118
96
37
99
185
107
107
30
70
0
47
1
88
18
45
53
63
20
62
6
50
0
20
15
62
24
69
65
89
85
0
51
2
118
199
107
129
82
41
27
77
126
21
0
83
43
126
117
61
58
77
228
62
125
90
126
52
0
44
76
55
21
95
126
189
199
155
83
122
12
177
154
63
114
71
86
108
125
0
25
114
76
68
66
184
64
0
2
62
79
45
96
68
50
54
35
44
54
58
4
0
0
0
0
0
43
0
0
0
0
2
4
0
0
0
0
0
153
55
94
99
0
45
121
156
94
126
0
139
140
173
133
136
125
139
179
69
59
132
105
107
73
59
45
97
73
86
164
64
129
44
130
144
96
142
136
90
89
68
25
0
85
48
65
46
45
36
134
7
58
96
115
122
65
64
48
63
66
26
56
4
129
76
116
48
95
97
163
87
86
69
81
102
70
59
92
91
145
90
128
10
24
89
55
119
50
28
26
153
100
46
49
30
8
11
61
103
80
38
58
33
6
1
41
51
62
138
60
178
140
107
138
165
100
15
172
39
66
108
74
51
154
118
78
105
102
162
84
194
38
57
72
119
124
113
68
99
109
146
43
95
245
64
61
55
124
0
94
68
84
158
40
203
130
49
94
112
172
91
199
211
71
92
207
68
141
105
104
68
160
70
1
139
108
57
181
175
54
139
178
147
69
0
92
92
23
76
101
10
44
94
109
42
39
7
50
43
43
13
15
4
19
1
58
43
148
107
19
44
55
35
123
106
88
52
44
32
21
48
58
66
14
34
52
85
0
72
0
64
42
89
65
64
119
76
86
7
71
38
89
11
0
77
180
115
146
55
178
0
178
120
85
83
36
0
121
70
0
111
131
88
110
142
159
73
21
55
47
69
88
97
64
60
14
41
51
61
0
0
38
59
0
0
0
41
0
0
42
0
0
0
0
0
0
0
0
74
48
70
116
20
77
82
155
25
65
18
105
88
102
129
117
47
54
81
13
63
78
103
110
55
15
129
30
62
106
61
80
128
23
175
149
110
132
152
68
73
65
61
0
143
29
60
66
44
140
26
14
97
111
93
90
134
92
78
69
63
10
26
42
60
112
121
110
118
181
63
111
123
46
82
112
22
16
61
7
53
28
5
46
87
77
44
50
89
13
83
149
153
27
29
3
0
79
48
0
0
3
19
16
19
74
8
50
14
204
113
160
80
120
12
129
89
24
99
42
128
142
121
86
35
108
115
111
79
141
52
44
80
11
23
88
27
141
122
175
149
92
147
106
158
159
39
79
6
0
83
99
79
157
35
172
0
78
46
148
9
109
152
23
141
186
184
132
140
96
58
108
172
74
67
158
34
24
34
143
75
145
211
112
134
4
5
40
65
100
93
0
86
26
181
36
63
45
34
103
83
50
28
49
11
0
0
0
101
99
3
61
66
72
118
108
83
84
12
18
84
181
49
70
58
46
0
0
85
0
0
54
47
81
27
48
107
101
82
8
138
72
93
28
87
39
99
88
147
95
101
66
96
126
22
48
79
3
93
0
146
43
86
90
17
229
124
111
66
13
52
111
160
81
124
91
33
41
47
56
48
44
0
62
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
119
26
56
108
1
97
38
149
92
45
173
37
64
146
55
75
56
13
2
36
150
112
53
76
37
11
44
112
18
113
140
111
103
78
90
87
69
109
117
185
68
133
92
55
55
14
96
42
26
120
5
23
25
62
12
18
115
118
98
92
52
18
132
57
84
25
73
39
83
63
79
147
58
72
145
133
101
93
23
14
108
100
67
41
20
57
46
0
16
104
103
153
113
72
29
80
114
8
94
17
69
0
0
17
9
58
0
57
137
68
134
75
118
159
131
78
145
109
62
95
43
84
143
96
45
85
123
153
136
74
103
79
20
109
60
16
9
136
77
39
127
141
130
27
25
113
150
82
64
99
34
74
117
88
44
32
31
80
95
145
39
36
114
0
187
174
145
119
99
177
85
143
99
0
84
38
106
147
2
66
52
138
243
133
98
54
6
4
1
66
72
82
87
122
141
79
67
56
0
69
76
39
27
18
82
2
30
47
37
153
128
163
91
137
48
69
31
5
85
133
160
123
50
142
55
53
64
25
31
0
10
0
105
68
132
42
149
119
45
54
48
77
0
67
101
66
67
87
57
106
120
113
134
68
142
130
82
75
0
133
131
148
55
92
95
225
115
48
45
43
75
38
116
99
164
126
34
43
41
0
1
1
3
53
58
0
0
0
0
0
0
0
0
0
0
0
0
0
0
99
65
133
111
121
77
121
66
202
51
204
16
75
157
113
154
129
19
38
52
185
132
41
40
103
0
4
102
119
151
142
66
71
93
81
27
138
68
115
174
81
123
127
0
18
58
7
106
69
37
46
58
19
36
54
0
124
126
144
83
79
53
158
48
124
28
47
16
62
32
77
92
24
86
101
93
45
74
55
89
50
60
84
67
48
28
76
111
0
103
148
121
112
53
52
56
26
23
106
47
184
173
34
67
34
0
48
30
101
78
0
106
170
111
120
70
17
98
54
131
106
168
81
141
39
82
58
131
167
114
67
74
86
82
18
11
3
55
0
27
94
188
110
65
64
88
199
56
80
140
112
77
181
87
0
55
35
0
96
46
97
66
79
73
140
169
157
111
169
135
141
144
0
27
84
43
139
97
151
73
47
128
193
96
58
56
83
75
32
17
41
186
188
221
103
39
64
48
45
105
80
40
52
45
169
71
70
43
26
149
128
118
72
104
53
54
63
120
79
122
9
14
101
250
26
0
57
4
0
0
33
0
73
6
132
226
106
139
79
100
52
0
96
123
65
128
59
151
74
181
135
31
172
101
123
91
107
81
90
127
132
128
161
38
255
221
110
34
51
0
77
154
153
118
168
126
63
18
7
0
48
0
0
0
58
48
0
0
0
42
0
0
0
49
0
51
0
0
0
72
117
132
72
84
77
26
79
125
114
140
102
75
144
72
109
114
144
180
49
8
19
116
122
124
111
70
0
110
89
97
110
59
98
92
48
111
26
35
87
104
135
62
4
13
104
43
75
144
139
55
96
45
57
128
16
32
129
82
62
92
93
113
61
53
62
121
183
0
63
50
118
126
123
13
136
130
46
87
0
21
0
87
63
89
88
140
26
19
144
43
0
117
81
121
1
7
47
0
176
44
36
61
32
0
27
28
135
50
28
60
130
135
79
22
129
70
117
106
90
51
81
93
69
156
36
93
98
169
30
88
17
25
80
78
112
67
0
112
157
101
105
137
86
53
56
43
110
138
122
55
124
161
113
88
0
19
15
48
107
144
60
47
163
95
32
109
152
71
126
31
0
92
82
13
3
160
104
32
138
114
107
255
158
47
21
2
70
115
5
42
144
204
75
95
164
56
70
89
172
105
45
41
154
49
75
83
34
74
69
106
201
117
74
84
98
88
62
80
117
69
61
38
49
169
53
73
9
15
54
1
0
99
0
122
54
109
93
89
22
80
114
51
61
57
62
7
58
115
102
108
151
66
27
23
73
91
88
162
136
89
220
129
130
159
179
96
56
72
36
147
60
80
137
53
90
63
0
0
0
1
15
44
12
7
54
49
0
41
50
0
0
0
49
41
45
35
43
44
85
58
79
58
14
122
33
109
64
39
82
157
25
54
130
171
170
65
136
150
9
46
75
91
95
58
54
18
182
127
62
93
49
47
34
57
91
75
60
70
162
90
51
38
0
29
53
70
99
116
114
0
17
38
17
88
88
88
96
136
78
68
123
31
39
1
43
32
51
18
108
123
59
9
143
163
108
18
64
24
81
68
98
92
166
146
120
100
201
115
40
0
153
34
65
0
54
3
0
49
100
42
26
0
0
23
51
134
43
37
88
149
91
52
0
7
0
97
118
156
80
79
100
73
79
111
91
57
41
26
43
70
98
86
123
95
31
0
0
150
109
112
179
147
38
35
108
157
162
131
86
125
137
127
109
128
86
12
0
135
138
0
16
164
112
0
34
123
117
84
34
21
27
50
0
12
134
156
97
159
17
138
255
184
22
29
104
40
134
120
62
173
12
125
137
85
56
71
52
98
0
59
16
161
137
44
192
151
89
94
0
51
191
55
99
59
85
67
60
58
12
141
94
131
132
22
147
22
1
0
0
0
31
80
59
157
40
171
198
147
145
138
98
67
67
43
63
49
111
75
90
80
76
50
72
40
55
81
59
154
103
68
110
222
183
83
160
78
65
200
148
161
151
134
77
98
57
0
20
20
38
89
0
41
0
0
0
0
40
5
2
47
0
0
0
0
44
52
52
51
58
103
50
13
108
76
112
80
108
71
185
111
130
87
86
73
122
85
122
93
104
131
70
103
117
81
82
126
51
154
123
133
40
68
102
120
113
20
170
172
92
25
69
80
86
185
36
81
62
138
6
32
49
75
182
126
137
96
72
0
84
51
113
95
107
5
87
61
60
56
70
78
73
83
95
101
86
34
19
90
90
148
56
157
154
114
63
111
48
0
2
86
37
28
12
4
19
74
34
56
104
72
55
21
87
71
129
30
105
116
5
83
160
75
0
25
83
67
75
138
144
26
64
6
105
18
7
102
59
0
149
65
89
124
152
0
87
59
134
146
185
185
202
72
15
71
96
67
128
28
125
75
85
95
0
44
6
0
146
203
0
0
22
42
0
0
120
121
72
32
19
66
95
0
50
93
86
88
138
70
36
247
230
99
89
165
45
49
125
78
0
0
104
138
124
57
42
83
48
12
88
0
127
74
130
122
170
42
9
58
38
135
129
74
34
58
127
84
73
143
76
112
153
110
16
74
47
75
0
51
21
26
70
14
0
132
58
79
125
135
62
51
31
80
0
46
54
54
89
69
89
84
44
157
120
109
31
101
161
111
133
22
240
136
65
139
50
94
174
146
113
77
118
31
96
13
11
53
126
31
78
39
0
0
15
36
52
0
0
46
49
0
0
0
0
0
47
49
51
94
34
35
38
78
24
121
123
101
89
100
192
8
55
92
63
84
142
54
48
81
73
99
79
137
55
69
42
172
78
105
196
162
101
71
114
111
105
155
113
111
41
63
45
89
104
26
36
88
133
114
42
44
80
77
104
141
97
92
52
37
86
109
108
103
53
76
80
40
61
33
126
46
21
0
61
97
0
131
103
115
103
74
67
111
122
194
117
115
45
38
68
0
8
70
79
19
56
85
51
62
55
101
0
30
10
74
31
0
79
56
33
103
62
0
85
65
82
161
39
166
52
114
10
58
65
79
119
84
10
109
35
127
178
72
6
26
82
57
11
139
175
125
142
37
64
96
113
55
26
217
82
64
80
51
44
0
41
111
122
157
21
60
0
48
0
90
79
91
31
22
51
47
51
3
84
21
81
128
116
26
212
248
111
135
8
28
26
206
35
0
110
12
71
61
85
42
79
0
110
123
120
119
52
43
123
154
61
91
42
77
85
145
129
72
111
147
87
45
162
192
107
101
4
88
149
127
86
31
11
70
70
83
55
49
29
94
20
162
129
156
98
76
86
49
42
64
50
38
129
18
98
77
35
5
76
82
165
83
134
42
180
150
37
92
63
57
161
40
77
46
81
56
48
32
126
74
51
102
99
84
63
43
44
62
49
50
51
51
44
50
0
0
47
44
45
45
50
89
126
102
115
34
57
102
85
48
131
99
71
208
114
70
78
38
70
136
102
116
84
60
30
56
111
56
29
0
62
134
50
125
126
95
32
33
161
131
133
128
106
82
107
120
86
36
18
67
53
123
129
101
98
91
93
88
109
22
81
64
34
89
105
95
91
36
21
88
26
17
36
17
0
4
0
172
28
90
86
165
70
105
72
131
188
155
178
149
135
115
67
38
57
83
52
122
52
88
183
87
33
76
67
87
107
0
61
0
0
22
117
137
39
24
0
52
75
126
203
23
161
56
112
46
36
58
39
92
45
101
29
30
126
113
132
21
36
109
193
86
100
140
187
166
78
39
71
177
26
109
176
67
69
97
14
53
74
74
53
94
141
169
0
7
27
51
44
59
82
100
84
100
25
55
33
73
36
73
97
97
76
167
255
138
177
0
148
35
143
40
64
61
24
18
59
28
65
0
29
32
182
26
108
0
187
138
175
129
106
49
90
204
106
173
106
68
115
178
67
103
0
105
114
33
134
13
174
88
233
27
46
1
102
34
0
2
86
17
129
88
212
107
175
40
38
138
103
147
62
105
83
144
42
88
42
0
55
74
98
103
215
255
64
126
24
81
72
94
127
91
101
46
109
152
53
69
42
106
116
58
27
97
73
62
16
77
41
48
56
49
49
0
0
45
46
46
48
3
2
85
0
18
75
116
118
96
3
140
65
75
22
232
42
48
79
58
120
110
142
48
130
127
27
72
81
37
76
132
74
108
150
142
119
39
7
42
96
127
135
72
143
70
123
3
42
76
40
99
74
109
128
121
29
50
46
31
24
0
111
71
74
66
110
85
78
59
55
56
36
132
8
157
0
133
23
54
111
56
102
142
90
87
84
95
105
122
174
172
48
0
43
0
0
5
21
0
0
87
101
63
37
125
84
0
23
38
23
18
43
9
127
6
26
144
147
124
111
69
24
41
181
117
39
9
41
185
143
25
83
35
26
81
34
142
32
132
152
97
55
80
190
121
81
73
71
25
95
84
26
75
69
85
33
0
107
52
6
15
90
234
134
101
79
56
50
42
153
64
200
158
72
15
41
133
104
18
79
45
108
151
40
249
146
145
107
199
104
60
89
26
89
43
23
7
77
52
51
78
141
11
233
54
133
140
93
143
108
98
62
71
69
83
47
164
147
89
19
0
49
47
73
60
79
0
169
73
159
82
229
187
141
155
71
0
15
50
83
119
142
111
137
146
154
142
116
176
123
0
27
26
157
88
57
0
15
0
58
33
203
238
194
99
12
12
54
43
60
96
78
4
12
95
149
97
73
84
81
77
66
151
84
125
129
19
67
68
0
0
47
52
45
0
45
49
47
45
0
25
180
46
54
90
110
30
50
45
164
29
153
146
145
180
114
41
82
126
131
102
17
48
82
48
72
73
44
50
0
121
144
158
96
0
0
22
78
79
76
96
104
131
83
98
77
70
76
26
135
90
64
195
149
63
32
55
36
72
63
0
134
109
102
72
143
115
39
12
24
36
23
46
16
83
153
16
81
25
59
91
108
100
79
92
118
126
81
122
110
97
48
0
39
19
0
0
0
5
0
50
134
71
47
114
11
1
35
31
0
52
113
71
91
107
126
141
54
90
104
121
81
64
72
88
39
59
0
44
10
6
3
0
48
45
78
108
173
185
93
47
98
83
118
170
23
53
19
181
29
26
80
6
78
88
0
43
31
63
45
166
166
232
49
28
48
44
9
32
114
191
148
48
50
109
109
64
78
23
16
124
145
36
204
154
140
196
182
146
83
41
54
144
105
52
82
125
39
81
72
148
71
12
87
164
101
140
80
106
106
69
100
68
182
153
99
138
155
78
15
27
158
136
73
70
112
138
70
126
156
70
138
0
42
49
46
93
99
77
87
175
142
144
210
93
133
157
122
103
85
0
86
159
45
53
9
4
44
50
20
255
171
40
165
0
7
44
193
185
83
34
72
74
113
125
119
69
49
37
54
31
66
112
171
147
106
48
74
52
0
0
0
48
48
0
49
45
0
0
27
98
47
46
0
40
53
63
40
104
63
137
119
108
175
83
66
51
127
40
42
110
0
40
65
4
48
28
4
4
43
85
154
70
0
54
77
49
97
88
142
126
120
123
76
38
58
62
34
83
0
86
97
167
55
81
42
74
105
113
48
145
95
146
151
111
85
0
32
60
35
5
95
107
78
36
50
108
40
108
47
140
127
118
96
146
44
78
130
26
93
48
0
6
26
0
3
0
0
107
34
49
35
94
91
84
131
84
47
70
54
82
81
71
118
30
108
159
142
50
141
167
82
26
104
118
0
0
13
78
19
0
25
21
54
51
95
193
77
57
96
206
25
58
81
48
84
44
31
37
0
84
7
48
114
93
72
152
118
108
135
215
186
62
18
45
65
8
0
143
181
178
85
97
113
129
70
9
50
16
114
131
43
115
180
156
138
89
141
105
114
37
73
72
99
37
140
26
47
33
206
32
0
56
109
99
148
128
58
34
133
18
66
68
127
112
26
137
150
130
74
81
97
39
131
35
0
139
108
103
84
93
21
76
57
91
112
49
164
112
131
165
107
139
77
128
39
88
57
57
2
124
91
0
79
59
16
0
134
193
177
167
81
19
104
26
33
107
98
68
47
122
98
77
144
154
121
0
63
116
37
120
62
128
88
138
78
65
63
57
0
0
52
52
0
0
43
0
0
112
0
32
24
29
133
78
19
107
168
0
49
35
115
97
67
50
61
50
84
54
61
0
79
79
61
111
94
107
44
91
52
61
62
91
25
90
82
27
119
124
129
92
115
78
26
80
60
0
0
190
75
38
60
79
54
86
81
138
182
81
129
24
107
156
154
95
123
125
116
68
39
98
73
144
0
56
45
32
192
0
158
117
28
86
47
179
28
140
89
52
50
0
0
9
81
64
0
0
73
64
47
134
27
107
59
118
137
71
33
96
34
71
97
108
54
37
191
96
51
51
0
129
55
128
26
50
28
88
109
69
39
47
0
44
41
59
135
143
70
115
132
44
140
94
73
81
119
2
118
0
68
217
146
90
75
91
120
152
238
84
97
47
0
39
51
6
26
38
108
30
115
23
29
118
42
61
67
49
84
40
117
55
26
229
112
128
120
71
45
121
22
69
42
23
32
103
122
111
33
62
28
129
40
67
124
76
100
106
73
88
0
29
63
46
74
76
105
133
136
160
77
37
59
17
57
50
150
0
40
173
79
0
109
59
73
85
49
56
52
106
116
104
120
47
56
96
131
129
87
110
79
84
102
93
7
24
0
214
213
157
108
133
1
120
120
44
172
118
35
30
86
21
87
175
60
76
42
37
94
112
184
114
175
143
155
140
169
39
11
0
46
49
55
0
0
43
0
0
100
18
63
16
119
25
71
13
42
180
36
60
93
110
118
96
79
39
50
130
60
33
15
124
12
119
119
106
152
53
87
50
8
2
188
67
129
37
24
7
93
170
134
60
0
75
112
92
39
29
157
91
0
73
70
80
50
112
113
98
136
17
10
93
189
157
188
161
63
207
99
70
109
0
255
65
66
23
38
162
174
63
39
44
67
68
130
42
130
26
75
106
93
5
0
59
66
26
28
56
37
0
106
87
90
28
56
57
64
32
39
55
64
89
63
72
13
32
98
9
32
131
121
106
43
68
73
61
11
11
32
100
30
23
110
98
49
128
159
102
132
79
113
109
85
83
106
102
0
95
54
33
255
69
98
15
74
81
93
123
147
120
55
66
72
102
77
66
89
128
128
128
49
33
45
131
0
71
72
50
63
47
42
31
202
96
49
55
68
60
62
0
102
62
24
179
166
140
19
28
0
46
39
103
42
60
63
108
113
13
75
55
64
121
34
71
83
94
164
225
169
79
73
49
27
113
63
131
69
82
211
60
147
53
36
0
74
102
53
41
65
9
83
93
97
74
143
101
182
72
87
123
122
85
77
83
38
109
212
246
135
27
66
68
102
136
139
26
196
73
87
0
38
26
83
74
91
28
22
4
52
68
121
106
110
25
94
101
96
48
0
0
50
60
50
0
7
0
1
48
36
44
62
38
43
116
54
46
1
93
106
123
123
60
63
77
56
41
97
0
25
58
118
71
126
94
128
98
12
92
93
12
0
0
153
95
150
38
180
158
96
118
66
80
63
59
241
0
24
44
70
52
41
19
24
102
43
103
136
70
79
75
125
44
149
19
57
138
34
26
245
49
68
93
174
141
204
124
125
6
43
50
24
67
17
49
159
53
76
46
124
26
52
0
0
78
74
17
0
90
13
73
105
41
81
144
28
122
30
49
24
64
44
68
170
73
21
99
16
83
79
140
146
80
68
65
80
55
144
108
128
89
16
19
14
150
125
45
41
107
173
0
4
72
26
44
64
65
43
0
84
72
25
53
40
112
0
65
44
67
36
90
232
7
82
0
1
78
71
66
0
65
24
119
61
74
83
70
86
38
158
26
125
173
80
59
76
69
148
97
182
81
62
16
48
78
92
9
65
35
0
24
31
5
102
26
67
101
88
26
25
98
107
0
33
29
82
134
35
0
164
161
151
62
0
26
102
64
110
149
130
75
136
31
109
83
53
92
88
26
32
122
170
31
152
122
63
89
29
69
161
0
70
168
178
255
185
173
55
43
71
0
181
88
76
154
156
124
123
63
104
95
164
70
77
68
88
21
56
4
97
52
45
53
157
144
179
117
75
91
16
87
101
40
64
8
0
15
14
61
34
55
165
51
138
166
108
90
0
81
106
132
132
129
41
31
10
33
116
112
0
66
47
87
42
68
67
30
0
48
0
3
99
114
164
113
34
129
107
93
195
25
41
98
34
116
41
42
52
80
90
35
95
62
127
116
96
128
123
135
111
123
48
107
5
60
49
0
74
255
73
100
114
136
145
114
187
54
107
56
49
3
115
7
100
36
171
87
0
135
24
4
36
38
0
105
23
26
40
86
0
67
64
114
86
32
0
79
122
48
63
25
88
119
118
161
80
61
68
73
83
93
121
147
76
137
185
131
126
92
38
34
66
50
61
124
64
33
156
87
85
48
26
78
39
134
26
16
25
136
40
137
51
127
90
117
139
83
53
107
146
56
118
35
65
0
0
118
0
33
47
9
27
20
225
178
28
114
153
81
17
155
129
118
84
63
135
150
93
83
67
74
59
134
33
0
33
46
51
61
27
49
56
159
61
70
12
60
99
70
32
0
38
48
36
87
125
66
8
63
172
197
168
94
44
60
155
116
26
176
24
90
79
163
60
68
108
59
66
75
148
87
87
84
52
79
86
6
172
42
47
128
126
255
188
145
71
38
85
94
186
147
104
128
188
63
156
27
79
82
74
0
46
83
67
82
93
54
22
0
0
24
114
61
50
95
54
18
74
37
99
106
31
45
0
0
0
10
119
64
67
52
144
112
181
101
90
82
85
150
128
93
117
96
80
96
45
98
43
15
61
67
24
48
75
55
53
53
106
25
132
213
109
43
97
107
118
73
33
95
102
0
142
14
83
51
39
140
71
88
116
60
51
77
74
79
108
40
46
150
57
53
88
24
45
17
37
33
218
37
62
55
132
68
117
188
55
161
31
79
70
146
40
83
38
86
118
61
78
30
0
130
78
35
68
40
41
205
93
131
95
105
128
137
100
36
26
108
72
50
84
127
61
102
96
92
92
90
132
127
61
42
59
110
106
164
65
38
56
69
0
0
184
80
57
88
101
131
116
85
60
91
0
53
110
59
58
165
45
12
137
83
224
225
108
75
93
74
232
169
11
154
49
59
57
30
116
37
0
11
10
43
7
185
128
18
83
140
117
119
78
118
169
131
139
198
39
50
59
133
83
113
14
58
26
64
84
92
14
8
91
81
13
43
146
74
94
40
3
19
26
98
0
61
9
4
69
121
64
94
101
195
223
216
78
38
50
89
70
14
57
146
223
97
36
95
93
75
37
68
115
96
16
111
158
31
47
115
33
126
124
255
227
226
71
94
35
150
47
136
36
170
136
96
65
16
0
95
87
88
0
21
54
31
50
105
25
82
53
0
116
63
111
30
50
58
75
74
64
60
52
0
44
42
27
10
51
144
84
124
29
90
47
110
61
129
119
124
109
115
123
105
117
137
78
42
58
67
0
101
29
53
51
103
61
143
105
53
9
129
153
47
52
21
96
126
119
47
30
73
14
68
120
56
76
25
134
102
131
97
32
126
75
36
86
110
15
46
106
55
66
90
0
118
122
10
24
117
26
142
0
60
75
101
51
131
112
4
72
79
141
97
103
60
147
131
29
12
76
0
112
44
0
42
85
37
153
56
109
144
125
138
49
129
65
18
48
89
65
26
175
57
142
124
23
125
80
171
47
25
35
6
153
119
66
39
93
33
130
57
4
0
40
97
69
188
148
122
72
65
76
58
151
86
62
76
129
60
42
80
101
92
142
94
73
85
222
138
34
135
35
67
111
214
126
51
173
34
17
46
146
166
19
0
97
120
137
133
137
26
70
230
132
109
149
86
65
94
117
56
90
35
46
51
26
117
67
62
38
0
66
0
0
49
112
160
0
104
89
105
123
80
131
116
26
119
51
80
21
75
157
172
192
151
128
121
62
54
40
141
197
158
82
32
103
43
77
45
81
87
137
48
65
30
57
67
72
44
207
255
237
187
89
37
46
60
117
38
59
75
131
147
45
81
94
73
18
99
131
50
115
98
17
41
75
73
105
179
38
119
3
66
126
67
69
12
0
0
37
48
48
2
83
66
0
101
175
59
99
112
104
160
70
80
63
14
155
101
104
116
110
35
62
41
67
15
99
0
52
1
94
54
152
95
153
58
92
0
50
58
0
78
96
58
68
162
100
64
35
62
12
33
100
79
88
94
142
136
64
123
167
117
60
82
87
173
43
38
89
33
39
0
104
51
0
55
35
0
124
7
36
55
46
136
202
137
20
105
71
118
87
66
147
142
166
117
50
4
0
46
37
178
63
58
32
30
141
82
94
92
144
42
87
0
84
125
100
61
26
41
67
88
99
185
155
122
92
83
46
71
77
58
56
43
54
119
80
42
56
74
19
104
164
90
121
111
128
192
102
111
176
82
58
45
84
103
32
107
60
57
39
0
79
115
104
190
57
47
37
124
170
98
50
78
80
48
32
109
80
115
131
88
12
54
103
156
109
41
81
115
255
167
96
146
90
0
121
79
71
27
42
50
11
0
63
31
169
31
56
38
3
0
5
102
207
5
72
70
42
91
81
87
90
67
60
27
157
31
60
182
130
137
217
239
211
114
79
89
108
143
65
199
83
100
125
130
94
44
200
176
0
85
79
0
121
125
210
209
255
203
125
70
69
58
166
22
67
56
81
147
99
172
19
29
38
41
111
80
24
230
159
101
154
93
80
0
78
80
98
3
39
53
89
103
3
0
0
0
3
48
7
71
37
49
99
152
35
20
129
76
140
156
115
38
60
62
105
113
100
28
26
56
58
81
78
48
16
105
70
103
77
78
81
93
80
105
49
83
151
98
94
132
112
166
97
63
132
102
66
57
32
154
68
66
0
39
54
118
239
206
126
74
40
107
68
47
80
69
13
0
87
110
0
183
96
113
73
99
73
48
32
188
157
132
90
91
41
136
110
172
141
103
58
147
61
18
0
77
157
92
80
26
65
120
121
101
93
94
145
178
0
114
114
178
150
138
26
87
22
133
76
83
47
118
119
135
145
40
24
0
63
8
47
54
125
128
55
46
24
117
88
0
59
45
12
71
58
61
108
82
141
45
94
96
122
145
98
77
119
221
225
139
66
39
48
0
16
30
110
141
146
121
47
38
125
83
85
66
65
26
66
41
136
197
190
100
0
55
54
232
241
74
143
71
62
0
46
55
47
55
2
58
54
38
56
48
98
47
26
0
12
39
122
126
75
0
55
47
136
75
97
105
22
20
72
15
87
76
66
7
35
39
118
159
200
229
208
176
151
189
149
114
110
95
99
91
98
164
147
145
204
224
224
229
253
144
51
39
170
28
95
85
125
0
135
5
135
70
78
129
64
52
0
94
127
59
0
78
61
84
139
146
103
108
9
44
59
65
82
112
32
145
117
49
209
0
136
0
70
86
46
39
30
79
50
45
34
50
54
66
99
106
77
77
37
75
104
116
48
62
44
80
69
117
92
79
61
125
50
26
68
28
42
100
38
28
21
81
48
61
105
129
110
120
117
114
100
0
52
126
106
137
146
102
93
100
94
131
160
157
84
1
26
68
56
98
128
73
123
82
0
10
161
109
128
83
122
54
0
58
165
154
74
84
134
103
82
126
123
136
109
203
134
0
0
0
79
96
107
0
134
189
80
123
65
65
97
159
239
38
134
179
69
45
104
57
124
73
80
33
65
57
142
188
81
129
45
50
72
106
111
129
96
125
48
95
56
0
63
0
70
122
44
45
66
69
95
73
54
185
88
68
80
65
110
100
108
102
109
146
40
150
73
47
66
20
11
159
156
116
61
26
63
114
24
105
52
40
136
163
127
115
203
176
163
0
43
51
162
255
113
94
125
143
10
0
84
74
87
12
0
9
57
56
34
20
71
9
50
26
44
127
25
59
72
58
23
67
93
101
106
0
2
139
31
73
109
175
112
153
107
71
60
39
136
150
200
204
255
250
205
250
255
255
244
252
255
188
255
212
215
193
201
135
77
46
208
173
126
140
0
28
0
13
125
146
135
103
101
107
12
43
121
122
53
110
86
49
111
49
148
61
77
70
49
98
120
104
43
64
141
35
166
121
77
87
122
44
0
8
90
67
97
59
52
40
82
44
73
60
94
69
123
28
68
104
123
53
144
28
85
73
110
72
104
138
129
98
111
85
108
103
120
18
99
45
106
45
69
75
84
161
101
77
9
64
53
32
21
41
145
108
98
110
120
113
57
146
71
45
0
41
136
84
130
52
41
128
0
54
66
16
99
118
81
155
124
56
79
135
150
85
0
67
219
84
123
93
177
125
163
201
102
49
71
80
80
57
3
130
0
41
102
6
41
74
73
143
71
54
78
168
88
19
81
152
117
98
66
64
68
179
142
84
149
132
86
69
132
129
126
124
94
41
171
133
33
49
92
69
58
66
0
80
97
94
50
0
139
170
146
112
95
108
121
26
78
100
92
63
174
137
101
103
53
78
168
114
57
122
67
51
50
98
136
131
124
89
172
185
121
182
170
123
10
49
51
77
255
150
52
82
66
0
0
67
102
119
76
22
136
25
116
0
66
101
114
79
88
56
91
100
64
46
115
0
116
98
63
110
86
46
175
14
100
189
126
103
192
191
235
211
164
102
62
143
154
226
237
186
252
255
251
235
245
248
152
186
130
132
133
113
70
115
103
133
178
131
99
0
72
80
162
182
72
173
81
155
133
36
140
83
128
48
128
123
85
143
106
74
54
60
99
30
92
83
111
182
133
39
28
89
0
84
44
71
31
66
21
90
38
110
127
27
20
128
91
186
100
112
255
101
62
37
35
32
26
50
23
21
41
54
73
51
72
13
34
117
100
66
62
64
83
60
73
135
86
56
97
154
71
32
70
57
100
137
127
45
143
87
129
0
73
109
57
161
102
43
65
44
30
60
143
171
63
46
96
95
76
36
71
90
64
38
74
142
61
96
76
168
143
64
53
112
70
89
73
114
107
132
79
55
64
31
108
80
13
21
84
135
78
89
166
106
115
95
111
85
72
40
43
69
68
2
38
136
98
122
168
117
116
74
178
185
103
84
81
122
137
103
113
77
106
83
36
138
91
135
74
96
71
76
82
75
118
101
9
79
85
110
61
31
87
104
55
115
101
108
65
67
114
139
72
137
105
109
135
104
39
97
46
74
96
34
19
22
38
2
4
104
0
142
70
107
79
81
42
39
138
127
55
66
120
42
91
98
50
59
58
63
117
16
26
114
40
102
97
38
81
67
113
46
21
20
61
124
44
11
22
94
122
93
125
114
89
110
21
82
60
92
92
35
41
9
33
73
74
159
86
194
190
127
51
111
131
99
28
68
78
138
158
171
177
164
65
124
63
54
79
53
0
0
20
59
156
148
163
103
129
97
78
124
193
182
77
119
167
140
170
143
50
20
14
143
44
45
110
84
157
33
50
78
162
165
103
96
119
29
58
91
81
82
54
79
129
95
83
94
73
146
90
119
51
48
61
31
48
5
0
35
81
89
47
44
92
48
77
90
88
32
59
62
60
82
89
93
114
95
120
126
93
80
87
24
123
224
145
134
97
128
87
120
105
49
101
83
31
55
68
48
14
28
148
68
34
36
117
125
69
71
111
11
121
135
99
65
81
101
80
64
113
68
56
52
46
49
157
139
137
192
101
31
125
159
73
48
39
93
67
91
40
92
90
111
120
140
100
115
57
64
55
43
117
84
148
84
167
94
130
132
94
128
117
78
109
77
102
101
106
82
142
119
67
0
180
157
74
82
112
72
60
129
124
129
146
35
147
76
74
85
67
34
131
81
27
83
131
129
126
91
122
69
109
92
90
169
164
47
52
14
13
45
69
37
12
18
0
34
0
97
51
96
94
40
131
65
162
127
144
83
118
117
115
98
116
115
44
88
78
77
24
94
146
15
47
33
4
46
34
8
8
12
12
24
30
59
52
22
68
30
93
117
59
66
100
80
50
186
74
98
40
75
59
49
22
32
180
123
151
159
255
42
107
102
23
35
3
64
67
125
104
77
44
37
88
64
65
57
51
57
55
69
99
100
83
68
123
71
98
77
103
188
191
90
67
162
151
168
84
63
58
87
117
118
85
114
83
180
121
136
89
94
100
95
49
72
90
144
52
101
43
144
78
192
72
97
73
43
85
115
54
110
114
65
23
62
76
15
20
48
67
60
47
86
163
47
71
80
59
114
95
81
115
133
88
117
111
129
119
64
108
129
131
63
164
224
62
95
95
109
129
114
91
105
87
97
73
149
67
42
5
0
129
75
40
140
124
105
48
118
50
41
87
98
43
100
72
91
87
99
77
46
7
47
26
145
128
79
164
115
70
164
121
65
50
35
93
142
105
67
83
52
50
151
145
48
65
100
46
103
145
61
56
117
37
97
91
67
56
80
41
114
116
85
38
157
100
106
124
128
117
0
62
80
151
137
70
57
55
119
60
160
32
72
66
144
77
97
91
29
58
33
125
26
137
115
58
63
115
113
97
137
44
147
168
152
139
14
25
44
77
107
37
2
24
0
49
0
151
86
99
93
46
113
112
179
86
96
120
73
113
38
99
93
100
46
77
63
101
130
92
72
114
78
56
75
50
39
74
3
14
0
67
0
102
141
59
148
69
65
95
74
96
12
63
144
97
118
171
87
74
33
2
68
108
127
96
141
104
234
104
21
11
52
62
108
105
101
81
124
49
37
72
43
52
65
46
56
0
61
47
48
42
167
140
109
83
26
38
92
139
181
88
0
34
53
170
70
201
25
18
128
120
57
118
133
92
118
236
84
62
92
76
93
136
122
169
64
149
101
83
141
101
135
56
93
132
66
59
76
68
134
161
80
56
100
53
35
44
97
28
0
128
73
135
115
78
102
119
128
121
78
54
70
102
110
93
110
61
44
121
91
33
97
121
39
120
111
31
91
23
105
137
140
148
93
85
83
0
72
156
138
49
44
118
127
191
99
85
63
74
59
61
115
124
90
118
113
16
51
0
39
52
100
56
98
96
116
5
87
153
139
44
69
104
31
125
70
64
66
81
72
163
99
81
74
109
20
61
87
66
62
164
110
109
182
132
141
51
97
182
113
103
86
148
139
85
28
92
95
106
81
58
41
72
71
114
76
19
107
55
43
66
60
72
27
103
58
85
13
134
154
38
70
56
83
75
8
67
116
144
122
103
125
34
133
45
76
19
30
145
41
13
76
80
48
100
33
115
181
64
65
162
125
137
109
72
78
122
108
65
89
65
130
38
120
116
145
149
114
113
138
85
61
47
21
54
13
0
0
100
64
125
76
103
18
96
91
118
131
59
61
113
137
124
138
4
74
28
4
26
111
57
66
99
54
56
45
27
80
42
79
86
192
39
86
71
81
152
41
3
26
75
68
0
0
43
0
0
69
59
65
149
138
85
173
59
67
117
150
170
132
194
83
43
37
138
75
53
81
135
137
71
135
114
102
156
123
105
165
116
103
80
47
126
151
94
61
101
144
106
136
118
60
71
118
121
80
98
69
130
147
98
85
69
45
26
37
20
32
63
93
127
90
152
137
130
99
59
44
53
46
38
72
113
127
117
25
53
140
43
31
58
113
84
99
42
63
109
144
176
148
103
169
149
143
123
52
15
84
142
113
30
107
104
150
204
85
25
178
108
64
115
117
130
90
79
68
57
54
77
68
123
112
119
128
147
23
78
146
145
49
126
85
109
132
120
143
63
39
43
98
127
68
109
79
123
25
57
65
65
95
101
105
49
87
58
88
155
144
91
29
144
103
96
31
47
94
94
53
76
119
50
81
63
113
31
29
30
49
38
187
91
88
94
113
75
68
75
62
43
91
19
56
80
46
51
124
167
150
115
90
29
34
8
64
20
51
72
99
20
1
35
46
135
0
54
89
211
147
96
95
142
98
70
67
155
46
56
76
125
120
128
101
139
111
73
196
102
107
121
131
125
183
137
12
6
84
133
75
161
143
168
78
22
76
68
110
102
50
91
87
53
55
92
0
17
34
38
48
44
42
77
92
130
38
25
50
155
104
119
184
94
82
79
63
66
108
62
42
65
60
65
33
52
14
2
0
85
77
48
102
95
76
146
149
95
46
215
124
145
79
142
74
46
59
159
0
51
73
196
93
146
121
71
84
183
96
148
74
109
126
10
165
70
56
64
121
169
98
176
53
127
46
119
137
129
76
96
63
136
139
110
122
104
63
31
33
33
32
91
148
80
99
89
44
32
72
68
37
15
105
101
74
132
107
37
47
145
21
68
52
141
122
109
95
53
153
197
125
115
86
115
129
133
89
42
65
37
71
120
75
125
110
198
190
176
47
45
57
71
130
146
73
98
38
1
88
92
55
60
59
148
56
49
113
125
29
137
117
124
113
66
100
132
124
143
101
27
45
86
73
74
98
55
79
98
64
53
110
87
98
137
73
72
68
113
103
16
80
71
187
79
83
71
85
141
66
60
31
85
0
28
82
99
173
88
49
58
90
113
32
119
100
79
75
86
95
20
31
40
38
155
75
127
173
166
167
114
113
133
8
76
125
85
143
37
59
43
6
43
81
0
139
0
67
92
105
174
88
88
89
121
110
57
84
21
0
90
152
110
92
21
68
58
93
161
60
57
142
118
80
177
143
45
11
62
38
147
63
87
83
48
74
109
9
39
15
60
102
38
184
58
14
49
40
46
84
44
28
115
93
114
90
22
33
129
116
155
85
118
109
99
89
68
119
112
77
49
105
0
0
67
53
57
46
6
46
74
41
43
123
97
127
152
99
61
130
76
142
64
101
59
100
0
92
67
55
83
72
141
190
88
114
26
160
78
129
119
41
17
161
100
32
135
148
131
105
150
83
66
84
45
128
125
136
70
69
117
28
95
110
120
77
37
39
100
24
0
0
60
100
72
159
114
117
91
29
67
23
132
34
89
138
122
55
76
84
72
76
99
106
102
142
149
28
81
92
97
197
41
99
147
75
79
0
130
128
105
149
96
125
120
136
14
125
86
10
0
100
133
94
139
110
55
110
65
106
46
61
11
96
33
84
69
148
61
76
94
32
72
84
57
154
133
118
89
114
112
38
70
123
59
29
31
78
20
50
96
51
86
45
18
37
78
72
165
165
135
116
136
119
101
145
174
79
54
43
57
11
12
0
29
71
161
118
183
159
81
58
14
54
40
113
94
94
118
67
65
12
58
176
164
150
120
111
138
132
120
57
43
72
209
138
108
72
112
43
84
50
81
54
135
75
59
129
143
123
75
49
22
45
72
122
41
51
21
10
97
128
140
43
75
54
114
108
65
23
160
116
49
50
84
34
2
18
100
61
85
54
63
88
131
56
48
20
20
92
7
125
128
38
109
140
117
158
109
51
97
105
14
71
69
118
115
103
213
155
94
56
135
77
126
81
51
100
0
69
77
8
41
112
51
48
52
12
0
0
0
22
19
130
90
146
84
65
50
105
116
147
46
66
120
110
63
110
42
49
35
71
86
189
215
110
126
80
101
73
15
81
108
82
68
55
221
11
72
83
35
107
81
120
122
107
130
89
143
60
87
58
20
148
166
44
76
84
50
79
79
102
49
133
160
130
168
84
135
88
113
131
107
154
84
73
57
21
32
118
107
150
155
92
123
148
123
102
51
105
176
177
74
122
101
101
25
106
70
108
137
130
141
117
177
190
107
113
24
4
56
157
126
82
83
77
59
59
68
80
75
62
99
7
55
131
122
67
95
116
70
40
79
96
125
107
99
51
75
98
79
64
52
180
71
7
47
28
14
34
68
62
42
0
0
0
116
145
153
102
155
109
70
126
152
95
116
105
123
53
61
30
0
136
109
131
59
112
174
123
78
90
76
91
104
179
116
89
149
207
112
116
143
75
44
102
22
131
83
94
12
43
82
136
43
116
53
105
57
140
67
18
12
82
165
132
104
112
80
87
67
33
38
64
77
100
100
58
24
14
37
71
11
24
19
202
106
81
67
26
42
50
75
111
0
18
162
130
35
67
22
94
125
124
0
53
80
62
100
95
125
64
12
70
154
119
135
136
65
101
1
17
22
110
131
111
154
185
54
128
96
127
100
64
90
28
72
19
42
118
178
65
90
125
58
33
0
5
0
0
77
70
156
175
190
138
47
62
72
48
144
120
39
10
48
66
133
84
137
183
233
68
128
70
131
70
107
126
85
18
69
118
59
135
32
14
0
8
60
153
126
110
134
113
125
123
117
38
107
145
36
72
44
54
40
106
105
52
123
89
87
151
93
38
82
111
48
136
108
112
119
102
123
89
96
68
8
66
128
126
88
110
141
65
83
144
56
137
130
132
137
73
229
255
94
99
84
76
77
130
58
90
129
83
80
68
120
17
91
101
153
68
133
49
89
103
97
105
81
119
71
43
107
77
27
123
82
92
58
78
100
66
95
75
91
123
38
52
126
94
54
145
127
79
58
103
50
97
27
40
50
19
27
29
179
68
136
167
140
123
60
46
90
62
93
53
67
71
99
47
19
86
90
87
86
7
177
98
85
28
156
143
125
99
93
7
129
44
61
63
47
180
107
109
107
56
140
82
39
118
145
152
48
80
21
66
36
39
72
1
54
77
113
96
78
105
36
51
120
94
132
68
43
35
40
164
171
78
61
46
77
26
67
89
67
36
73
100
22
35
81
51
112
91
59
91
134
67
131
115
139
98
126
16
93
84
128
123
21
75
28
35
82
127
120
104
119
26
1
118
152
53
102
119
89
87
203
88
57
102
142
178
47
39
41
129
131
95
142
93
129
114
132
62
59
0
25
1
183
42
42
169
200
162
123
142
128
22
113
201
103
177
33
21
139
66
124
36
26
65
98
191
210
28
83
47
152
113
167
124
59
136
129
131
72
16
13
27
255
134
138
131
130
114
59
99
96
119
24
78
95
93
65
37
146
162
93
136
116
106
132
77
30
111
47
74
52
135
91
80
87
86
64
255
104
78
207
136
105
75
100
111
66
50
101
63
42
152
75
117
130
205
203
146
105
71
83
117
121
134
124
139
145
32
64
125
52
152
71
105
100
52
60
72
57
138
87
96
60
16
82
101
112
80
91
83
113
136
56
66
115
107
59
62
65
38
44
92
72
61
176
42
64
56
97
40
60
7
68
27
59
52
162
160
29
125
113
68
103
97
59
109
79
69
65
78
79
63
76
88
149
139
106
63
20
82
63
67
38
160
109
61
71
90
46
71
66
180
107
45
68
33
63
107
88
214
99
36
150
110
127
79
24
36
108
135
0
90
20
28
164
144
97
54
84
57
193
227
64
157
142
129
66
74
53
63
130
78
50
42
133
128
68
149
29
87
100
39
40
96
98
93
61
112
178
199
87
83
126
89
57
53
95
113
128
56
37
14
2
44
106
102
58
84
145
199
37
115
113
72
120
104
130
74
64
220
7
28
91
200
78
38
63
69
111
9
54
99
81
28
93
186
0
31
56
108
50
91
36
68
97
114
160
74
131
151
99
88
125
83
87
46
86
40
90
147
44
47
60
115
137
125
97
197
89
95
76
186
120
170
155
166
125
52
43
63
24
148
192
172
161
54
76
89
68
112
79
37
56
140
100
92
24
92
194
139
32
78
29
79
82
68
85
38
43
107
146
83
131
111
100
58
255
213
55
63
49
36
2
71
161
118
49
37
142
79
57
71
98
31
93
50
127
159
94
158
73
65
147
66
97
116
110
68
39
40
95
105
112
142
93
72
76
101
173
203
63
141
36
198
117
103
70
108
127
125
142
54
142
137
130
90
62
51
36
93
65
37
55
173
0
26
74
79
73
80
81
130
83
82
96
106
77
63
47
59
46
26
29
61
58
35
132
64
116
112
60
58
102
95
89
73
43
43
109
86
47
22
62
121
117
76
225
160
64
110
152
184
147
127
0
42
17
150
110
19
10
98
63
46
88
94
3
86
122
109
63
52
83
109
0
70
110
46
68
93
132
111
41
93
39
71
74
111
0
70
10
101
107
131
58
55
94
89
83
163
136
137
72
55
48
93
116
154
98
124
49
74
68
54
60
46
144
184
138
69
18
38
70
125
49
48
121
151
150
91
152
9
48
90
141
120
18
113
159
16
13
66
175
120
41
44
71
44
28
8
79
29
86
163
44
14
33
87
60
108
62
147
80
159
146
142
117
215
5
79
39
66
32
62
59
0
79
173
68
56
47
39
110
56
73
100
9
7
64
114
126
135
85
80
162
81
62
14
66
0
89
122
129
148
130
174
82
85
91
90
121
127
180
140
113
63
48
172
136
43
58
36
59
69
23
104
39
52
58
65
53
122
61
138
108
30
164
184
6
30
30
17
24
119
149
102
55
98
74
64
95
60
36
52
129
136
114
82
109
88
116
138
141
91
67
122
80
15
90
90
95
93
137
116
104
61
84
79
211
137
139
103
153
76
54
103
123
117
135
122
50
135
138
58
52
32
75
35
71
75
76
100
80
38
119
89
20
15
42
38
73
61
131
30
129
92
82
120
51
40
30
36
32
76
40
170
105
89
130
100
124
122
3
3
9
67
65
104
128
165
129
100
75
91
76
201
211
94
141
83
50
176
146
105
62
98
178
120
101
78
119
88
142
95
176
36
42
45
127
29
94
55
37
67
42
120
42
4
5
0
110
88
65
67
54
78
29
118
121
61
168
82
30
42
55
21
107
34
167
211
132
134
0
90
133
143
176
92
115
56
68
20
5
133
25
95
99
89
49
0
60
116
112
133
93
134
148
173
42
95
157
66
145
91
88
39
131
178
86
13
72
135
113
37
34
89
62
61
109
83
155
119
140
0
0
68
123
124
114
99
77
105
118
133
69
97
165
0
51
45
109
89
99
81
95
123
141
57
47
22
91
75
69
130
112
115
132
130
170
92
107
101
115
129
103
46
79
69
94
83
17
115
121
120
142
110
73
35
139
99
143
139
140
85
85
69
84
224
95
69
80
54
51
95
139
43
69
127
91
69
36
27
77
25
47
92
255
97
85
68
57
72
21
144
114
80
95
100
103
140
85
31
54
73
154
169
66
104
87
141
99
116
138
101
68
112
118
96
101
74
89
131
118
133
19
104
133
83
98
25
129
27
128
55
127
111
144
132
116
28
76
135
65
17
100
100
17
104
54
82
117
46
78
17
106
3
87
111
92
99
101
78
54
114
100
81
124
121
36
35
63
94
80
103
66
119
104
123
136
130
18
56
44
45
55
52
115
114
184
99
124
102
80
128
103
127
151
153
109
4
156
94
151
60
99
123
105
133
135
138
137
81
110
121
77
31
55
122
97
113
27
75
44
80
95
89
8
72
11
95
81
64
108
89
144
154
168
63
104
47
13
27
35
11
137
60
99
17
146
128
100
36
143
186
144
162
129
74
59
106
149
118
45
93
81
25
47
56
0
21
102
100
128
149
135
207
165
36
41
120
41
0
142
121
21
133
189
66
66
92
84
175
38
67
117
115
93
135
47
68
32
13
90
100
108
120
109
23
112
121
54
117
107
52
49
120
39
140
91
153
193
153
208
245
187
68
110
80
119
110
153
136
111
112
227
239
102
69
100
92
118
95
95
92
74
68
59
119
81
65
85
94
85
69
129
151
102
66
173
117
108
127
128
119
86
128
207
73
168
76
83
94
106
101
141
63
103
92
90
141
56
43
88
47
104
117
68
101
170
116
121
47
114
22
215
69
132
155
60
18
81
87
163
140
83
48
95
193
232
113
75
150
97
88
138
212
129
73
104
143
78
115
89
138
104
147
178
125
139
168
121
94
97
28
97
142
83
118
66
50
156
149
99
126
17
30
73
79
106
33
15
0
108
113
16
98
75
80
42
126
74
160
93
61
139
104
56
51
69
164
77
127
123
110
99
0
22
12
5
55
142
127
85
13
85
26
61
70
54
162
130
122
83
136
68
58
25
81
63
96
172
84
30
6
23
137
105
98
74
93
29
65
78
71
0
91
91
76
105
67
17
109
58
97
49
101
47
18
82
105
104
127
142
121
150
63
28
59
69
69
48
36
133
0
81
66
27
64
120
148
34
139
92
88
113
31
80
63
151
111
29
49
22
113
15
18
86
44
22
39
145
102
165
145
129
127
151
112
149
56
72
89
100
153
54
255
64
12
7
99
109
60
118
72
68
34
45
5
12
95
68
112
206
174
148
229
255
196
254
203
138
103
131
152
255
255
255
221
79
128
148
115
184
197
87
146
130
102
91
136
161
68
139
21
61
50
109
66
77
54
32
117
115
98
55
99
79
45
53
98
110
119
79
49
172
94
75
62
146
80
147
123
79
96
34
51
143
116
128
158
130
133
128
69
17
48
78
20
62
33
36
99
64
83
82
45
50
106
80
100
31
93
65
255
122
162
102
59
25
117
23
166
149
73
102
109
183
80
129
161
65
78
123
186
79
158
115
113
88
127
1
152
131
120
133
83
79
102
138
83
67
42
75
148
167
86
73
129
40
82
74
3
154
52
88
83
47
66
105
9
13
40
0
81
114
1
80
70
50
126
109
133
108
154
144
107
119
132
75
110
118
75
110
58
94
43
66
117
51
103
136
136
49
123
147
50
60
14
87
84
128
116
72
105
71
186
120
73
105
125
122
13
29
35
122
109
179
82
149
178
86
71
38
1
28
76
129
111
85
87
144
125
109
94
155
86
75
47
74
96
187
130
195
105
91
90
19
96
43
30
163
109
114
87
89
59
116
143
153
151
82
188
70
94
64
144
0
206
73
88
72
112
103
81
62
71
24
56
13
53
156
107
105
128
170
62
69
97
70
81
95
88
89
79
173
76
21
2
144
69
0
0
148
105
72
18
7
19
132
124
108
156
196
194
117
151
223
196
229
229
198
183
127
175
166
104
0
130
127
75
169
235
138
139
193
134
100
189
86
90
13
96
65
148
103
150
90
89
88
30
101
123
84
84
222
109
52
85
89
58
53
63
57
94
163
113
92
93
79
161
128
87
155
79
50
114
41
51
160
113
93
117
61
26
105
106
47
10
73
68
95
112
111
12
33
22
70
32
88
109
129
54
156
142
118
90
81
0
36
79
169
70
59
167
197
95
72
81
171
106
40
107
151
61
111
130
141
112
98
33
117
109
67
144
74
46
72
91
69
61
44
103
118
122
69
49
149
107
51
50
101
104
31
37
92
169
85
61
38
74
37
52
53
147
58
72
59
74
127
99
62
148
192
109
114
115
106
47
151
73
90
51
41
60
88
110
111
152
71
79
142
108
143
226
148
111
0
15
83
5
116
145
32
111
101
125
89
61
91
71
28
103
158
41
11
176
135
141
54
24
114
15
12
27
103
104
121
89
140
125
85
83
21
123
94
119
166
87
84
129
180
106
136
70
64
71
101
96
91
184
107
112
98
61
111
164
103
125
146
109
193
0
22
90
176
91
146
166
79
78
42
84
48
12
120
38
103
67
18
135
198
147
123
89
0
63
46
67
31
101
22
22
38
125
78
72
0
171
93
85
23
116
30
30
3
76
7
0
31
54
19
164
188
131
141
52
102
58
25
51
89
71
37
48
64
34
187
112
60
240
236
73
243
94
110
64
139
61
66
86
111
188
123
78
131
73
43
29
30
98
89
111
70
144
142
94
82
97
47
121
151
114
45
57
176
146
105
169
110
143
125
150
47
55
91
68
34
56
24
52
54
87
61
87
122
111
146
168
137
48
102
115
81
95
80
83
112
114
190
128
141
60
63
87
142
93
63
103
130
134
88
113
184
159
79
42
133
110
167
106
79
166
116
94
68
150
113
99
81
95
113
102
89
96
53
134
103
122
115
118
127
161
122
88
59
55
110
41
48
133
82
5
94
54
234
221
101
0
71
12
14
0
189
81
61
47
128
81
119
152
155
177
162
157
117
106
143
92
24
23
57
80
109
141
66
82
48
62
53
108
65
102
93
160
97
76
6
135
67
88
82
71
67
56
130
77
30
64
119
118
169
112
88
32
117
147
98
45
128
93
32
21
51
106
77
116
71
216
86
121
101
58
89
84
98
131
124
143
120
34
15
82
212
54
113
92
58
124
123
110
122
86
52
92
66
49
152
107
99
125
124
6
41
99
61
98
205
36
9
39
146
88
0
135
0
71
66
106
187
196
168
166
60
71
157
102
164
63
118
69
94
31
86
82
56
58
122
106
9
56
163
71
29
9
0
42
7
37
0
25
41
176
190
144
62
149
112
154
105
129
111
71
122
40
88
191
130
75
163
237
98
118
43
83
69
0
134
113
147
136
165
76
78
110
82
36
37
30
67
41
57
111
99
176
159
64
58
47
140
109
116
45
22
156
101
155
86
93
139
67
73
101
72
78
77
43
49
130
88
58
144
196
81
128
140
144
204
117
63
122
89
105
84
84
142
90
135
73
65
114
89
76
101
154
139
158
141
144
99
83
141
170
138
107
116
46
96
141
142
91
145
78
139
87
70
65
135
113
112
126
56
140
102
106
114
56
130
136
110
59
155
131
120
141
61
105
138
21
114
51
88
95
107
93
178
109
22
88
0
20
69
55
104
64
42
136
51
139
155
107
95
220
142
166
150
149
77
22
2
95
131
135
110
84
74
2
69
115
5
64
27
3
10
13
16
119
130
106
111
176
103
41
70
39
134
0
103
74
107
141
44
153
92
5
106
132
25
133
75
82
19
143
77
80
114
154
141
111
162
80
64
54
88
104
74
102
51
86
67
0
12
92
184
68
72
83
86
103
172
121
79
72
40
20
92
120
56
117
44
105
3
46
77
93
86
122
61
74
99
122
130
51
101
13
26
7
134
192
184
179
193
83
102
86
32
129
84
118
93
90
120
99
36
67
196
34
37
14
68
59
39
103
76
39
31
69
38
28
3
90
110
140
109
68
85
117
156
68
64
46
121
104
61
10
41
147
158
253
69
251
51
47
36
145
67
66
150
146
225
72
38
112
94
85
79
36
30
22
36
152
127
103
118
140
101
85
110
83
69
98
127
26
39
44
135
71
45
151
63
99
85
83
93
154
28
152
114
81
171
137
161
216
24
155
52
80
57
40
30
48
84
58
68
26
104
118
41
40
66
144
58
111
140
169
145
48
120
134
116
139
119
101
90
95
118
74
119
96
130
119
109
67
92
118
92
80
55
132
125
40
156
102
110
56
138
103
136
84
0
40
89
93
151
165
132
73
72
75
97
73
177
99
97
116
1
123
93
78
12
78
55
130
82
50
80
82
41
164
179
212
123
179
63
112
160
89
77
56
73
121
77
141
113
128
34
155
22
28
72
0
19
51
41
86
173
168
55
47
91
103
97
51
30
81
112
41
125
137
93
76
33
66
52
39
53
61
45
67
0
72
48
64
106
131
137
93
64
111
35
51
94
62
40
106
174
20
63
54
143
70
113
93
137
20
104
93
147
149
123
105
52
65
148
27
67
46
1
59
44
61
70
113
60
174
34
114
137
124
106
132
33
80
27
0
181
221
164
203
164
54
53
18
23
46
40
49
95
75
63
75
119
79
195
198
33
6
51
166
103
103
88
107
81
99
32
5
70
13
0
0
92
22
171
134
64
23
71
128
86
17
56
126
159
72
76
201
109
229
35
129
21
103
55
57
70
39
101
100
68
86
64
85
76
74
54
31
16
61
123
138
124
109
79
125
115
103
35
105
110
97
74
39
31
121
0
27
191
160
98
107
90
72
66
90
45
24
136
125
40
110
104
45
103
169
33
75
105
112
65
23
47
46
86
80
20
65
63
45
138
98
52
100
159
158
9
41
131
117
120
122
131
102
160
100
96
131
76
84
147
108
107
119
85
55
61
88
107
125
90
81
129
81
47
120
95
209
133
77
115
46
63
171
162
96
80
60
145
103
55
104
25
78
101
94
195
91
48
0
13
58
69
123
83
83
56
131
121
205
235
148
68
65
81
65
111
59
72
81
168
63
114
66
37
84
103
60
72
116
58
59
33
65
63
159
149
165
131
9
119
118
48
40
11
99
65
74
149
197
135
159
126
129
206
204
176
179
82
76
71
45
26
134
130
84
97
38
88
88
48
31
103
82
73
132
93
67
43
106
122
131
67
151
79
125
177
93
114
47
116
58
72
87
0
3
12
26
52
101
125
126
115
124
117
119
65
97
3
154
47
12
36
35
10
187
190
210
79
69
24
33
16
0
66
7
62
34
158
84
98
88
157
104
171
0
66
81
31
191
110
116
165
151
20
0
0
143
0
76
23
108
195
57
151
75
95
166
142
97
28
149
187
47
113
153
207
233
128
3
24
35
9
44
70
0
116
148
64
64
137
88
86
91
69
55
88
22
56
74
140
120
118
96
112
120
107
50
117
98
91
99
111
43
210
55
73
96
121
82
48
99
101
60
123
44
23
118
46
37
141
60
42
128
47
79
78
90
103
76
45
72
68
51
86
85
70
49
29
106
72
110
14
178
97
70
69
134
179
122
43
75
65
52
92
144
139
58
81
67
42
114
113
57
139
51
77
118
34
87
142
53
74
122
87
117
147
155
64
155
119
77
163
180
79
62
102
178
86
86
84
89
69
64
133
84
70
34
20
24
0
131
179
120
65
50
218
190
241
189
88
48
75
130
43
166
50
67
78
104
167
109
39
46
106
60
127
60
32
62
21
115
90
93
40
217
141
191
100
86
124
134
98
34
46
48
48
109
104
42
123
100
160
111
227
245
217
171
191
138
162
136
118
36
47
58
138
98
172
111
78
117
70
57
55
180
31
92
208
141
126
72
130
117
150
55
77
47
138
47
99
155
31
105
34
56
69
74
138
140
146
38
117
42
195
114
33
84
138
102
3
76
93
103
127
157
129
42
50
26
19
49
20
45
23
36
0
154
80
58
2
61
81
148
30
86
196
56
195
99
111
127
1
13
14
51
116
77
22
150
123
169
65
187
118
82
109
132
15
132
197
213
103
87
228
190
190
28
69
0
0
30
124
101
52
100
79
20
98
124
69
64
81
67
4
86
36
75
26
95
106
97
126
52
61
225
54
79
51
34
106
170
74
117
107
125
107
117
117
50
38
182
42
92
83
77
134
132
108
159
32
93
103
72
110
65
75
117
141
62
78
76
59
79
74
88
63
40
68
91
72
27
240
89
24
107
108
90
67
64
126
97
56
64
110
94
92
50
122
63
105
123
100
168
112
124
121
62
70
81
63
71
74
134
74
125
179
102
111
82
107
178
177
124
103
175
117
95
141
183
150
80
102
159
108
118
8
10
18
55
180
134
92
57
110
156
255
255
187
89
66
110
59
38
160
62
85
128
99
103
55
71
92
92
45
70
117
15
99
0
133
22
67
31
181
132
101
114
123
84
108
96
96
0
45
15
63
128
103
47
47
54
84
145
156
139
185
189
118
215
107
124
59
62
67
93
86
138
114
13
88
72
82
62
49
37
179
100
90
68
90
61
87
54
0
67
137
81
84
123
54
26
1
0
71
39
10
122
104
159
110
73
17
80
22
78
94
70
145
71
53
72
108
77
40
8
13
14
0
0
69
89
8
68
30
123
98
0
84
70
85
116
117
56
74
80
65
181
44
139
38
9
43
114
59
156
0
137
123
183
104
75
65
74
95
91
63
29
122
200
106
30
108
232
141
84
9
22
44
81
34
64
8
130
138
117
0
114
75
122
60
64
57
71
96
94
135
32
0
79
73
142
128
140
193
75
35
41
67
133
111
94
114
152
121
123
94
63
75
87
186
112
34
145
58
59
34
92
101
132
75
62
128
62
37
88
129
130
101
74
57
66
86
68
136
91
73
44
72
67
116
214
108
31
108
99
119
31
58
110
111
95
74
119
134
86
59
88
78
120
132
161
128
53
113
125
124
119
78
55
87
107
53
92
132
156
55
55
101
130
194
167
153
129
197
126
144
211
143
104
164
199
170
118
138
63
82
84
175
137
50
55
112
122
172
238
184
139
78
63
100
96
120
143
45
105
114
43
113
56
30
162
71
133
56
80
66
118
83
74
34
93
27
108
92
195
144
172
106
100
72
111
102
47
60
132
154
141
142
121
78
54
85
113
75
136
117
107
84
127
149
116
141
119
138
161
135
127
103
82
74
7
25
38
85
74
92
60
97
147
86
75
46
25
59
105
85
103
98
75
102
8
42
56
15
0
97
126
75
134
144
18
96
83
29
59
91
153
123
51
71
12
30
28
25
40
47
0
39
16
112
61
75
23
6
50
54
117
77
71
42
80
50
33
85
103
60
36
96
0
23
98
167
93
84
63
138
79
33
79
109
9
33
123
117
9
102
169
46
46
75
153
146
119
19
68
26
43
0
50
31
167
115
169
50
160
58
76
34
17
32
53
51
79
81
135
20
49
86
125
124
153
193
125
55
89
52
74
18
80
132
135
182
99
141
70
103
122
112
138
204
5
135
94
44
107
172
113
139
72
116
100
55
106
166
126
33
32
79
49
61
87
72
78
67
126
134
97
71
173
194
65
48
89
113
61
63
78
49
60
76
98
119
57
97
143
128
121
108
76
142
140
108
144
132
106
153
60
70
54
97
98
48
124
99
129
150
177
201
209
170
156
151
163
208
243
163
149
146
201
191
128
124
124
138
69
109
210
101
64
108
65
97
191
255
214
86
55
44
165
99
86
87
46
109
76
113
127
113
98
106
120
92
100
88
103
39
81
24
65
175
127
101
89
163
153
117
149
94
130
114
166
113
44
113
131
111
146
92
150
127
66
112
161
175
161
202
195
123
132
101
117
124
114
155
102
135
84
13
12
21
25
35
84
24
89
64
140
97
17
89
68
81
86
94
105
171
140
111
144
128
85
32
18
43
89
76
77
151
134
80
126
81
80
101
105
81
58
19
69
41
41
111
93
97
61
105
64
60
89
76
60
36
81
79
73
107
97
118
35
35
57
39
9
72
90
58
67
0
61
145
73
64
96
162
44
32
47
48
130
20
21
98
145
75
119
144
96
101
83
99
159
157
74
52
91
69
33
47
149
80
193
50
100
198
42
131
101
45
43
22
82
120
97
131
61
87
77
111
197
161
127
46
59
126
86
11
61
125
76
95
147
178
99
90
72
44
120
48
4
87
52
110
39
82
101
136
151
157
79
23
100
85
102
139
75
71
131
142
71
90
90
81
61
78
25
44
80
197
184
135
88
67
10
9
31
29
93
60
92
140
131
108
124
87
56
96
115
112
141
106
113
147
193
133
130
96
32
128
67
115
134
104
131
147
204
213
176
158
168
179
219
252
255
248
228
180
206
182
162
130
162
137
83
191
121
83
101
146
92
94
12
114
161
160
91
108
60
139
123
173
146
120
157
72
75
60
97
83
157
178
110
66
133
48
56
39
95
73
96
104
141
33
134
150
148
107
207
153
119
64
104
144
146
183
95
105
153
57
140
94
0
72
52
169
55
150
72
106
63
60
115
22
31
94
99
14
23
70
50
54
42
5
78
157
87
78
87
74
91
172
51
62
123
167
141
28
50
50
99
56
87
105
139
87
25
68
71
49
72
65
66
80
128
167
96
65
36
52
70
130
109
163
62
77
112
86
8
51
57
54
159
49
45
41
0
3
78
145
121
131
139
151
97
30
46
32
56
138
99
211
141
156
81
62
131
126
102
77
43
6
69
134
112
139
36
77
46
132
38
15
222
229
155
9
65
106
47
7
48
86
152
155
81
119
60
47
46
48
67
12
61
86
108
139
136
153
122
123
102
89
60
59
106
93
0
69
91
98
33
128
179
163
93
103
54
72
103
28
143
41
42
11
138
82
113
82
60
63
152
121
84
111
51
63
40
95
76
132
148
84
77
88
88
132
98
24
182
156
135
90
20
25
67
79
46
60
24
77
124
73
38
92
72
40
78
95
98
58
158
89
50
171
164
125
143
110
106
111
186
116
158
177
151
185
228
179
165
193
253
219
216
216
210
254
255
212
171
164
155
157
154
88
113
108
65
74
130
142
62
47
79
127
84
80
104
125
70
60
182
171
91
75
47
99
70
109
97
23
170
164
71
97
41
117
30
107
101
85
47
95
30
144
172
135
137
73
49
118
157
79
153
148
107
118
237
139
165
145
78
6
53
29
169
14
86
60
71
119
143
83
71
19
92
64
78
33
85
46
67
69
81
141
55
89
90
80
61
102
180
235
53
74
95
129
122
45
48
39
34
73
61
137
91
122
83
99
78
133
44
69
82
105
107
100
66
174
55
63
100
16
118
71
151
115
31
80
57
60
58
74
118
103
0
46
109
54
61
46
62
144
107
138
81
107
120
52
38
85
46
102
77
143
66
178
52
65
112
120
5
13
158
118
111
0
103
167
106
141
38
246
184
225
4
60
90
0
78
71
41
122
99
30
46
104
80
47
38
73
57
45
55
73
145
125
145
119
136
143
102
62
53
92
82
70
149
64
55
62
53
198
159
99
99
135
98
119
0
133
38
3
84
133
67
60
27
112
148
124
95
30
70
48
38
76
74
65
125
131
66
90
73
115
107
74
78
163
134
138
17
19
72
95
76
67
64
27
74
60
109
86
139
92
77
62
54
67
99
152
139
133
136
160
107
121
116
126
145
136
122
160
199
166
220
250
238
241
255
221
218
226
255
219
255
255
205
182
191
152
170
136
182
186
117
75
103
57
172
17
40
78
104
99
81
37
71
115
15
105
103
128
80
97
128
75
93
101
42
50
142
140
1
56
75
63
96
106
53
89
35
15
117
140
141
156
24
1
111
161
57
127
102
44
75
157
133
137
115
60
54
110
52
82
35
19
138
113
96
85
136
69
4
153
0
100
18
89
133
59
52
144
76
69
119
84
87
122
86
93
161
100
110
60
121
77
126
107
128
137
57
55
112
154
199
142
142
88
111
66
48
120
86
67
144
161
124
199
61
110
52
130
110
106
57
64
83
80
80
101
76
102
120
35
25
78
51
103
111
79
43
47
161
146
0
9
14
86
55
42
84
50
104
20
56
102
112
141
39
72
35
69
163
114
42
131
125
86
78
112
77
215
214
159
6
85
29
0
105
83
124
41
129
40
38
98
54
0
93
116
60
64
93
93
62
107
119
113
102
114
78
99
168
93
58
166
79
115
74
49
195
140
133
167
137
62
120
113
76
0
0
126
142
68
73
56
178
190
88
29
48
137
89
66
133
62
92
140
106
92
104
135
128
83
38
111
159
145
148
54
20
41
96
17
62
138
130
100
121
150
131
132
88
104
85
19
105
105
72
115
148
27
108
147
99
82
138
81
108
189
211
190
244
255
203
247
254
220
223
255
255
255
255
222
218
253
248
191
172
197
196
199
148
170
111
132
81
80
148
135
94
77
82
120
89
50
102
68
124
94
155
159
116
123
115
37
109
64
15
61
79
46
0
2
11
64
112
63
49
118
34
109
120
142
94
2
1
152
151
130
165
25
12
50
91
38
53
20
50
148
75
66
59
203
151
88
101
69
92
76
52
58
79
0
61
107
73
154
42
134
137
68
48
111
126
147
210
104
144
162
179
102
67
45
27
143
144
160
123
121
32
75
150
157
142
103
16
38
61
29
38
117
73
104
90
112
130
128
132
119
41
70
95
82
58
56
25
28
155
153
17
15
17
0
0
16
16
100
76
100
148
135
147
65
30
80
125
91
62
89
85
87
57
38
33
45
73
89
88
74
39
161
176
97
108
82
134
68
110
32
202
221
191
22
0
88
56
217
68
86
71
98
54
67
161
64
30
89
79
62
54
134
90
184
107
95
140
91
77
103
94
138
20
84
110
33
85
74
57
162
160
103
158
112
122
25
119
138
110
104
139
128
101
47
41
86
104
101
41
87
36
90
134
74
77
125
156
116
96
137
161
117
67
101
168
122
127
149
114
87
6
26
22
89
97
70
62
88
132
107
113
94
79
44
52
81
82
125
121
47
54
77
127
99
136
126
119
136
155
182
223
255
255
211
255
212
225
255
255
255
255
255
221
218
255
203
253
252
255
238
188
127
92
42
14
30
34
120
153
91
83
50
62
114
89
89
69
183
100
19
194
34
90
174
87
43
130
56
65
121
12
51
34
17
64
26
106
92
82
67
86
105
85
94
65
8
146
133
115
70
70
51
52
70
37
56
37
113
54
56
32
51
105
152
94
87
59
124
86
160
81
119
82
107
100
120
68
95
91
121
127
24
93
138
113
191
89
154
139
130
131
95
81
69
171
128
104
150
65
119
104
115
85
23
128
66
68
88
67
47
136
70
102
91
103
104
63
96
59
23
148
95
74
0
37
64
20
91
145
77
8
35
7
0
45
14
88
115
165
150
129
203
66
52
12
0
21
128
140
38
168
93
16
0
12
8
120
0
99
84
120
166
103
52
158
3
81
38
57
99
204
219
171
60
81
130
171
125
137
123
52
34
48
178
1
52
11
43
66
78
102
101
114
23
67
104
20
31
56
128
89
68
153
62
77
110
115
48
79
164
133
121
125
86
78
54
126
128
91
130
148
113
119
92
133
91
86
102
126
97
52
174
145
88
143
82
163
134
137
127
86
66
80
142
123
81
28
103
157
104
62
61
79
35
128
69
95
72
132
123
100
147
68
38
83
40
65
111
120
86
63
80
62
126
116
156
172
210
255
255
225
229
255
255
255
255
224
225
255
255
255
218
220
255
255
219
255
216
205
136
68
27
35
57
63
63
82
181
151
115
137
135
129
127
99
146
34
62
44
52
151
53
116
81
46
164
128
0
45
47
43
84
72
85
73
60
129
140
84
102
32
44
69
78
59
72
148
32
158
0
32
47
79
25
79
150
152
54
67
40
36
28
91
115
170
119
99
152
59
144
104
173
84
73
80
53
43
156
146
86
60
104
120
128
89
164
99
98
13
66
39
61
25
52
152
119
110
47
18
41
76
66
51
88
79
109
128
67
118
70
55
116
64
65
116
93
89
22
174
15
28
20
77
21
5
62
57
21
103
86
14
3
31
26
62
41
52
91
137
205
81
8
0
20
0
45
70
43
55
0
135
52
72
58
99
82
134
96
103
96
121
34
97
119
39
64
45
108
171
57
154
204
211
85
3
21
132
124
78
89
122
52
103
46
21
2
68
61
111
74
60
102
90
98
124
58
82
115
88
70
115
114
56
78
143
67
90
103
172
131
61
71
101
165
17
60
230
175
44
139
125
140
87
107
105
104
85
23
46
101
107
133
54
90
66
69
138
139
138
47
84
156
163
22
122
127
61
71
132
87
84
100
15
155
167
116
54
63
112
69
94
72
25
115
87
85
68
135
111
62
103
142
137
176
183
250
255
212
255
255
229
220
223
255
255
255
223
255
255
220
218
255
255
216
255
231
219
153
106
93
128
114
57
63
112
44
123
47
140
110
107
124
143
135
112
54
63
115
45
0
118
175
69
49
108
36
44
79
120
112
51
36
95
6
57
94
93
94
64
53
0
102
96
2
86
81
42
180
48
85
0
54
137
94
95
155
89
69
141
63
68
102
104
98
131
89
49
55
134
109
65
27
86
73
38
51
173
106
133
52
78
115
151
136
124
72
53
5
83
49
50
58
112
118
71
34
57
31
65
88
102
122
154
163
82
125
178
163
144
95
53
53
72
86
97
91
80
38
98
91
87
59
27
10
76
165
68
7
47
0
24
2
69
48
20
33
132
113
9
36
44
22
0
9
181
47
166
120
101
88
175
106
141
165
87
73
122
93
127
92
93
149
126
6
70
53
186
101
54
156
102
154
223
92
0
111
56
133
91
74
38
92
76
24
0
45
58
38
9
80
92
140
171
67
53
70
166
86
90
142
54
95
146
141
37
120
84
172
204
79
75
116
169
48
101
198
95
95
111
95
99
83
71
132
104
54
36
64
110
94
115
81
63
85
70
108
112
117
80
144
93
145
52
81
129
124
19
126
108
55
170
90
110
155
153
115
131
151
55
65
82
38
60
108
134
103
29
98
122
130
105
86
153
253
255
221
220
255
228
225
255
255
229
226
224
224
220
255
255
217
255
255
214
206
236
222
130
105
103
125
119
58
78
107
119
145
61
93
109
80
115
146
111
81
164
81
56
25
148
0
156
6
4
149
22
95
80
155
94
43
76
29
42
100
156
135
100
51
45
0
82
70
61
0
0
59
77
114
30
19
38
101
111
118
113
164
111
124
69
77
78
29
29
31
42
48
158
129
80
58
73
121
63
107
90
142
97
89
87
35
90
124
117
133
151
39
52
64
20
65
87
113
89
82
117
109
82
72
105
127
88
189
161
131
100
41
95
159
122
147
60
75
132
99
132
86
11
119
77
70
0
0
88
29
102
78
25
31
104
59
51
66
138
40
12
156
74
60
108
52
66
0
19
106
54
133
51
164
140
112
117
64
142
122
82
163
116
182
75
70
157
103
59
55
85
148
86
83
131
108
89
197
221
119
47
1
91
148
46
58
63
93
31
28
42
52
65
50
64
29
113
125
79
82
128
121
82
197
62
75
128
117
75
102
104
111
163
191
85
122
139
170
40
41
97
127
108
128
100
74
94
94
64
61
25
39
56
131
89
85
90
48
93
59
101
63
120
173
31
85
146
188
73
34
109
23
123
98
37
64
112
95
97
195
136
120
74
78
87
114
65
71
67
117
112
26
90
93
132
117
116
183
221
229
225
255
255
229
255
255
255
229
226
225
225
255
217
216
255
215
255
255
250
233
192
125
168
142
180
109
73
87
36
133
141
106
78
83
112
121
136
79
60
70
36
157
72
193
100
194
19
40
71
53
62
106
38
56
132
167
57
73
113
140
74
127
54
21
0
116
73
3
33
17
0
113
98
39
10
125
73
148
167
95
100
92
49
103
11
11
34
39
44
42
152
100
34
1
124
93
99
66
119
96
98
119
87
0
86
139
179
112
96
147
27
36
90
44
34
98
90
123
117
113
108
75
72
127
76
33
83
110
86
130
23
85
48
74
95
196
64
105
185
74
113
59
118
50
52
23
65
63
0
66
82
8
9
66
91
57
125
46
27
146
38
0
26
67
93
43
19
110
96
88
22
66
88
56
73
205
147
171
4
89
138
177
75
73
0
78
77
41
48
54
114
73
114
101
116
164
120
131
151
115
0
60
126
71
93
39
52
60
18
41
73
61
75
44
63
125
98
81
164
170
149
86
130
58
139
135
151
75
153
141
92
118
147
123
185
127
127
79
16
126
122
23
115
153
100
170
102
89
80
15
47
78
57
62
132
71
89
59
37
74
78
60
64
47
110
56
146
133
76
141
96
122
95
107
106
125
77
56
122
124
91
48
82
105
40
106
213
6
66
95
60
71
96
105
130
161
255
255
225
255
255
228
229
255
255
228
225
255
255
227
220
218
216
214
213
214
255
245
180
210
234
204
211
202
158
131
102
83
86
60
66
102
108
133
145
151
116
112
63
41
77
100
66
225
140
32
47
18
82
22
23
31
119
120
163
122
63
73
66
41
146
35
75
8
63
82
16
31
15
33
171
0
88
104
104
92
113
91
45
56
38
65
49
35
107
53
38
87
121
157
94
80
67
179
100
99
33
95
150
130
121
79
51
102
170
160
106
93
105
0
14
82
25
53
150
67
90
52
125
43
49
142
98
45
76
89
122
44
119
50
154
102
6
0
184
160
76
164
33
84
154
3
34
34
69
18
95
75
106
66
67
54
101
49
74
162
0
103
74
30
58
0
114
74
109
49
148
101
145
0
110
118
123
117
85
168
0
106
96
194
6
38
80
82
8
66
0
51
160
206
103
66
67
61
87
120
161
114
103
64
63
37
65
63
35
61
27
48
98
111
69
117
53
119
127
80
47
42
34
82
117
102
71
113
83
214
149
109
134
110
33
128
179
184
192
169
40
43
147
99
113
64
97
97
114
127
99
40
51
92
70
54
118
121
29
52
90
46
38
59
105
57
52
74
103
143
165
140
55
113
74
148
69
128
96
69
12
24
87
75
101
119
50
117
71
15
214
81
92
54
72
123
67
193
255
255
228
255
255
255
229
229
229
229
255
255
255
255
218
217
217
216
255
212
202
231
231
200
255
250
248
175
212
168
120
61
22
73
17
165
105
147
116
105
100
182
24
94
76
78
108
76
118
58
80
58
128
101
84
45
66
114
83
111
131
99
139
196
140
84
51
42
67
14
39
25
31
63
33
100
130
137
116
97
97
128
119
46
178
70
99
120
30
10
90
61
117
73
101
52
18
93
140
28
139
129
154
128
133
87
54
76
121
169
177
207
130
135
25
30
54
20
61
146
169
52
63
8
72
86
60
113
1
0
47
0
140
79
109
27
27
91
60
44
185
129
21
3
94
105
114
51
112
128
28
133
99
78
62
79
68
102
118
111
113
101
132
43
70
95
111
122
142
48
136
0
237
43
15
33
110
43
58
24
51
20
35
139
70
13
15
122
135
49
23
20
0
98
71
124
63
98
33
110
121
164
152
86
36
26
0
72
24
74
1
49
7
84
92
62
57
11
103
33
12
64
52
71
32
62
43
57
74
50
42
90
114
167
79
92
140
189
225
170
129
107
90
146
91
149
90
117
105
69
139
108
61
119
84
60
51
118
123
55
51
41
39
50
56
92
133
98
134
117
79
55
142
103
166
102
114
80
94
83
35
0
0
87
112
53
67
102
130
97
7
181
12
75
28
136
136
171
255
255
229
228
228
229
229
229
255
229
255
255
255
220
218
216
218
219
255
255
213
251
241
245
255
249
244
254
183
179
173
116
46
121
85
79
27
32
0
39
93
171
70
40
137
46
54
82
84
126
89
5
27
101
103
132
60
140
56
70
133
106
108
163
168
91
57
64
64
45
89
114
96
109
107
113
112
120
91
121
72
110
87
131
174
157
119
130
127
73
78
166
92
75
117
135
72
8
120
43
161
84
69
86
132
91
95
110
76
166
118
137
177
113
92
24
71
129
0
31
102
34
95
145
78
110
36
114
93
125
92
79
24
99
56
117
107
43
23
44
50
120
112
115
116
200
125
104
82
139
37
72
107
33
2
99
10
116
122
69
82
97
115
57
17
53
101
141
147
114
107
41
65
79
144
0
0
15
0
31
91
56
103
101
143
64
11
34
45
34
18
0
41
75
173
103
78
14
175
171
123
174
168
134
162
69
12
68
0
80
0
64
77
61
80
67
112
166
25
37
221
70
106
107
66
82
49
38
5
40
104
48
0
39
82
62
128
160
162
189
70
188
61
88
105
89
157
140
120
156
103
90
42
58
53
31
88
70
115
107
48
44
60
43
111
33
60
104
78
203
156
118
140
129
113
158
94
79
142
81
118
99
48
78
4
57
66
146
119
164
131
64
97
10
82
94
86
128
234
255
226
226
255
255
229
229
255
229
255
255
228
221
216
255
255
255
255
255
224
210
247
255
255
250
244
247
209
191
191
141
73
104
103
6
26
0
17
48
57
124
193
94
61
128
68
67
56
94
116
85
9
74
169
116
53
32
149
97
62
123
122
126
142
132
78
56
45
13
53
65
91
122
83
112
94
138
51
101
117
163
128
100
122
169
118
98
122
89
98
97
138
68
92
84
68
3
29
152
112
91
21
30
0
72
61
8
167
127
156
93
127
146
121
161
81
118
111
36
22
0
55
96
51
53
89
150
64
78
133
71
115
172
74
198
102
50
44
96
106
89
138
136
172
142
78
66
86
106
96
103
114
104
26
19
58
92
157
64
136
87
77
31
25
98
74
106
177
100
132
114
81
129
111
32
0
12
22
42
139
31
49
97
165
97
115
94
8
32
94
59
95
112
33
79
133
72
133
123
127
110
134
170
187
188
85
19
102
15
0
33
49
77
44
62
37
92
106
29
87
186
166
133
88
7
151
89
92
40
58
2
160
153
25
86
121
165
192
164
126
34
255
88
118
149
75
164
149
96
140
118
74
44
119
47
73
101
71
64
123
48
84
131
78
80
78
90
87
117
169
117
109
141
129
128
54
85
62
129
57
65
82
88
64
136
79
88
112
159
118
98
54
32
85
42
77
60
169
255
226
255
255
255
229
229
255
255
255
255
228
225
255
213
255
255
255
255
255
210
251
241
254
197
242
243
194
198
238
225
157
87
114
80
6
0
59
59
132
58
86
156
165
137
164
64
25
43
123
70
80
54
126
214
73
19
29
123
99
138
119
103
87
129
57
29
8
6
0
26
0
123
136
113
42
29
114
63
120
76
42
0
117
170
137
83
101
67
48
143
127
23
128
68
43
67
62
101
132
103
153
146
51
27
62
40
0
128
132
108
36
94
53
99
72
101
120
90
88
0
38
52
51
49
57
115
100
43
68
91
57
69
174
120
126
175
181
163
200
200
226
204
193
157
184
65
176
69
124
54
97
39
74
69
66
20
55
98
73
123
66
40
48
49
93
92
86
149
73
88
55
69
67
115
186
160
74
81
55
90
60
59
79
138
0
94
128
16
79
68
109
79
30
141
56
127
196
74
120
68
74
92
178
146
95
73
0
136
222
2
91
78
12
38
85
43
75
105
14
123
56
198
126
166
180
133
151
38
49
73
56
83
75
62
64
165
67
164
180
137
25
150
167
55
136
114
102
172
95
154
132
56
85
89
59
109
95
133
65
87
97
96
92
106
121
57
63
42
109
88
72
117
48
40
84
52
92
78
13
25
0
62
5
24
155
116
215
136
153
136
37
41
61
123
59
63
95
146
229
255
255
255
255
228
255
255
255
255
255
226
223
217
213
212
255
255
216
255
246
248
196
194
194
252
244
186
178
227
156
149
96
77
75
3
5
24
77
114
153
106
117
116
119
172
122
79
69
162
86
174
82
61
145
103
21
115
70
112
70
21
35
92
58
33
24
18
1
9
19
16
89
119
123
75
63
80
30
2
87
0
0
155
102
71
96
73
41
125
122
111
100
119
79
109
18
85
94
101
14
155
158
119
72
52
15
33
100
43
71
49
26
78
94
28
127
77
85
38
69
87
52
41
61
51
80
59
77
100
83
91
69
92
84
134
126
133
160
98
158
86
174
75
71
122
23
131
29
83
99
63
65
45
10
0
118
46
32
0
101
106
110
82
5
42
175
94
88
99
43
140
2
49
81
137
142
89
85
124
56
53
53
68
63
51
77
135
123
45
34
131
52
64
119
82
58
177
129
129
138
41
47
134
112
141
65
23
96
149
171
0
55
0
41
29
31
49
156
109
37
66
56
90
8
130
93
86
84
124
88
83
96
169
96
68
43
81
93
46
56
18
127
199
112
118
176
91
120
188
155
73
67
124
55
106
58
67
119
56
113
49
86
73
98
172
74
73
76
132
30
14
174
151
121
122
84
82
40
54
107
128
108
136
95
19
17
94
115
79
157
83
102
112
113
109
163
214
224
214
255
229
226
255
255
255
255
225
224
223
226
224
220
255
255
221
215
211
207
196
191
194
255
255
255
250
198
241
176
180
142
172
76
25
137
111
45
119
66
82
148
137
152
155
43
145
89
129
0
7
8
68
134
137
71
0
93
125
162
121
114
103
62
46
78
80
0
13
84
0
46
37
127
90
25
88
0
28
2
98
77
98
178
49
85
111
123
133
98
101
72
57
58
72
46
102
116
107
113
171
87
127
137
90
7
35
125
41
26
54
18
71
78
11
103
33
129
158
75
9
7
88
84
147
61
92
0
59
161
109
145
108
61
68
92
101
63
85
85
92
94
77
150
16
25
29
97
0
15
37
15
25
0
120
122
64
35
129
0
34
39
61
57
42
100
68
113
212
108
89
121
128
52
18
25
43
0
48
76
67
52
28
0
51
7
184
63
21
69
17
21
184
69
222
72
140
49
29
125
89
54
2
71
85
70
119
0
83
0
25
51
67
79
153
32
47
51
152
101
101
109
79
35
111
124
102
65
79
15
112
206
124
145
125
115
50
145
99
98
103
70
175
179
136
124
140
50
138
147
85
50
9
78
141
50
38
79
120
58
82
46
43
70
75
72
148
91
55
120
34
59
38
81
92
125
146
122
102
132
99
113
63
56
60
13
10
70
27
72
83
149
134
174
96
112
203
255
255
255
229
255
255
255
255
255
225
224
255
255
255
222
255
255
255
210
211
210
197
188
250
255
252
248
255
204
193
236
177
178
203
124
101
51
175
78
94
162
124
75
119
118
36
163
135
120
32
19
0
56
39
55
130
151
83
89
104
148
150
182
191
123
52
130
11
4
4
59
52
18
97
182
102
148
131
113
22
83
92
188
66
127
89
89
190
111
147
57
81
67
81
96
71
139
130
111
131
150
121
117
171
29
51
156
62
33
186
38
24
73
92
75
94
71
65
108
141
134
60
46
27
0
3
104
82
123
110
152
177
26
81
68
1
124
5
80
33
99
16
87
55
82
75
101
69
84
118
51
0
0
15
19
57
31
0
91
91
82
0
0
0
30
79
88
179
90
151
78
89
72
28
40
16
86
147
96
44
42
114
41
67
2
78
64
0
121
118
122
88
75
67
215
43
51
108
137
157
94
110
59
110
67
129
0
36
119
38
89
75
120
129
173
92
40
70
3
60
81
59
85
134
80
136
171
166
122
129
110
138
83
101
152
146
112
136
113
123
137
134
98
91
109
155
200
187
78
34
146
150
80
35
111
120
90
44
63
139
86
115
53
38
82
99
54
92
214
67
93
139
56
33
25
85
164
127
155
150
108
123
72
72
63
73
37
9
0
166
35
0
30
57
65
160
129
134
183
255
255
255
255
229
229
228
255
255
255
255
255
255
255
255
255
217
214
212
207
207
252
211
207
246
198
210
202
244
235
178
174
230
209
120
92
106
133
83
104
122
121
224
125
167
31
108
125
149
47
67
0
103
46
125
123
156
153
115
56
142
156
121
161
115
94
96
80
68
106
85
143
146
114
168
157
198
94
157
64
124
21
98
66
99
116
87
164
143
97
68
126
68
67
49
43
96
50
101
86
73
126
144
133
22
38
131
66
29
162
64
53
62
98
81
129
197
135
155
159
78
0
15
98
71
47
44
43
91
177
195
182
43
44
59
54
90
12
90
62
108
34
98
47
117
13
178
94
40
71
113
18
10
23
0
76
18
32
93
147
117
42
3
7
21
83
142
126
12
51
83
144
41
38
82
73
82
53
57
189
96
128
91
0
23
69
0
47
103
84
117
97
121
180
97
64
29
137
141
169
85
168
81
78
102
62
163
137
144
168
143
119
128
74
147
31
0
127
119
112
71
68
60
102
130
136
131
76
115
103
70
123
101
79
169
117
40
58
169
95
41
103
75
140
88
147
130
174
103
36
147
150
134
3
98
174
80
53
50
166
64
103
13
85
45
24
88
62
219
105
123
109
87
43
43
113
150
86
74
64
0
73
128
10
10
8
3
52
41
97
119
87
42
96
46
66
133
122
214
255
255
227
229
229
229
255
255
228
223
223
224
223
223
255
255
215
214
209
205
255
255
208
206
203
208
255
252
246
239
238
185
193
182
193
110
136
106
59
160
103
156
147
126
85
73
132
109
128
83
68
39
27
69
144
110
142
124
84
141
116
87
100
109
92
125
128
26
99
85
83
65
26
82
164
161
110
94
139
96
0
111
33
83
132
151
146
159
123
115
98
46
30
109
29
0
133
90
94
108
194
116
118
194
17
68
95
78
63
83
104
73
104
96
146
150
196
161
166
180
87
109
38
114
59
51
60
73
74
55
159
90
107
62
42
114
93
146
105
37
147
199
182
46
96
42
58
0
26
17
96
67
44
43
6
14
53
4
143
95
103
102
8
18
17
135
157
79
13
0
79
189
104
59
116
41
87
76
63
120
172
151
128
165
112
77
143
163
166
41
90
153
46
105
0
66
27
179
130
69
55
54
24
71
1
156
211
126
111
124
69
57
80
139
103
100
37
45
63
106
24
73
87
139
125
111
55
93
82
114
120
77
130
97
131
114
44
25
116
131
126
53
32
78
132
101
101
135
87
56
142
160
141
104
55
68
96
21
48
147
58
90
52
119
59
35
81
106
137
163
169
143
163
101
143
47
72
90
62
87
49
141
171
63
0
35
2
5
105
57
110
94
52
108
100
67
149
205
255
255
229
228
229
229
255
255
255
227
223
222
224
223
255
255
217
215
216
205
208
255
255
198
255
255
217
206
200
250
244
242
242
195
192
213
181
155
131
59
131
71
116
42
180
72
87
115
132
95
72
30
68
112
132
123
93
169
125
176
139
53
41
55
97
82
163
123
33
74
22
52
108
123
92
132
38
110
114
139
156
116
182
102
139
86
81
150
121
128
79
59
95
49
40
22
79
127
98
60
135
177
97
88
128
77
70
117
37
91
161
57
153
85
149
201
152
175
130
77
159
52
107
80
165
52
38
76
62
193
152
88
15
92
104
188
128
128
144
140
98
151
67
45
100
149
73
29
26
75
15
56
93
61
57
1
0
11
67
118
38
90
97
41
40
136
138
152
159
0
14
0
109
0
71
119
71
82
151
124
150
121
101
171
172
130
67
183
86
89
70
92
186
91
114
84
51
186
76
63
49
188
34
89
63
58
115
77
83
102
103
0
50
37
37
56
89
3
12
8
32
56
65
75
96
145
104
82
115
72
95
94
126
92
95
104
131
60
122
82
100
87
107
79
75
142
153
162
154
126
151
137
160
100
138
60
110
58
137
35
71
63
132
62
97
81
27
73
173
103
100
100
91
148
112
83
65
141
175
70
85
61
120
112
69
86
106
0
0
15
62
93
102
54
25
181
97
202
255
255
255
255
228
229
255
255
255
255
255
222
222
224
255
255
255
217
215
216
204
214
255
206
205
255
255
207
199
186
186
232
176
177
233
180
159
130
90
109
97
122
20
86
44
100
139
138
15
92
69
72
43
7
115
113
104
161
138
64
140
9
32
76
107
169
88
162
73
0
119
7
32
82
125
101
44
48
126
134
104
103
131
128
69
106
125
146
77
74
90
82
46
76
79
23
130
88
51
90
144
137
124
39
104
78
104
29
17
25
84
131
57
105
77
123
161
189
162
191
129
121
95
34
71
57
27
36
83
103
169
181
66
101
162
118
70
41
142
67
124
182
153
83
127
131
59
30
31
88
108
79
20
0
106
64
30
0
0
43
16
1
108
31
0
0
158
95
126
140
44
24
2
40
0
121
109
49
0
37
80
103
113
77
94
137
116
103
24
0
46
117
84
157
59
136
76
45
75
97
0
132
49
28
39
31
55
118
0
117
156
108
45
98
221
18
0
80
41
64
33
12
66
37
105
44
98
115
114
63
52
81
116
98
95
143
113
76
151
148
199
157
118
84
72
51
140
121
100
89
120
123
119
73
112
134
56
142
85
46
59
44
36
97
126
102
67
169
18
59
179
23
10
135
157
99
126
145
147
142
85
79
79
32
101
97
92
63
44
123
97
32
68
40
14
86
41
165
255
255
229
229
255
255
229
229
227
227
255
221
217
218
255
255
255
255
212
206
202
204
250
188
186
248
251
252
180
172
173
182
180
183
243
252
199
227
209
108
81
56
85
110
99
102
153
139
127
164
168
92
129
74
8
118
145
156
46
74
91
162
60
89
89
111
133
100
171
113
123
107
125
133
117
76
56
30
90
108
74
108
61
88
105
13
92
57
43
119
169
9
0
12
72
110
126
74
44
135
57
89
0
77
139
120
114
45
74
23
87
135
150
118
38
91
173
159
175
92
157
75
181
18
8
44
107
50
64
141
58
146
143
53
71
94
82
103
123
93
55
204
130
84
115
115
112
124
115
54
75
49
50
82
101
0
55
75
97
83
37
4
31
6
90
90
138
67
80
116
96
32
24
18
63
49
169
47
38
67
83
9
25
2
30
49
62
63
33
62
81
59
106
109
2
64
95
64
163
98
47
83
77
104
147
0
38
3
99
73
82
46
68
22
140
169
120
65
43
108
62
147
88
110
35
71
64
85
113
128
52
99
54
46
82
72
72
67
128
141
156
102
87
174
138
130
46
127
124
63
60
107
129
72
26
106
10
99
69
109
26
141
80
82
137
121
76
0
145
141
111
152
36
26
90
88
144
192
150
149
66
63
54
89
41
150
53
101
175
28
69
153
74
119
60
54
123
104
173
255
255
255
229
229
255
228
228
227
255
255
220
216
216
255
255
255
211
255
254
197
250
237
174
187
252
251
183
167
170
169
235
236
245
255
240
191
215
151
112
97
107
104
110
146
136
104
128
65
75
122
153
43
97
117
69
163
49
97
80
89
159
110
56
79
79
141
105
102
133
108
127
133
102
51
68
65
116
108
71
53
120
91
37
126
35
71
24
55
68
125
70
0
77
169
120
166
125
136
160
55
64
121
131
130
92
46
47
85
127
126
47
158
82
83
15
114
115
144
76
180
132
142
106
26
51
51
57
76
84
73
177
56
70
69
49
146
88
85
98
91
82
85
75
186
43
108
105
72
92
61
57
1
21
85
34
23
25
104
133
79
70
35
1
112
51
58
112
115
145
6
69
10
31
19
61
50
29
52
30
121
58
0
41
11
0
111
100
30
64
87
78
27
99
80
0
101
0
156
112
91
114
102
67
62
26
21
0
111
35
171
10
25
35
1
125
100
62
0
138
57
106
92
96
67
36
81
73
113
120
118
91
53
53
70
93
94
23
68
100
27
68
35
62
138
116
87
94
144
130
32
12
112
2
62
139
99
169
97
61
46
92
105
115
85
116
116
126
101
170
113
70
83
101
90
108
62
232
129
138
50
41
41
36
15
105
102
74
78
21
58
40
33
117
45
62
109
186
255
255
255
255
229
229
255
255
228
255
255
224
218
213
255
255
213
255
255
255
194
191
244
235
186
200
255
197
195
190
196
249
248
253
255
241
184
163
155
195
106
65
141
143
81
121
120
140
136
62
72
33
136
101
83
47
33
162
57
156
116
156
113
138
56
151
85
132
71
68
121
19
68
46
87
52
115
98
67
80
68
85
94
97
96
88
92
39
56
19
145
57
64
91
172
72
124
111
127
112
105
68
28
99
121
43
59
54
54
157
3
14
67
185
72
133
21
99
116
121
111
131
104
123
88
51
28
46
176
53
55
137
154
22
69
33
86
85
118
198
117
102
119
160
145
97
79
23
70
99
92
54
58
59
28
0
105
42
105
52
5
58
48
123
168
111
89
99
113
81
139
3
4
43
77
145
57
100
118
126
164
97
126
2
20
54
46
54
104
67
63
22
0
0
45
64
92
109
95
102
139
97
169
81
49
0
16
53
40
66
64
106
75
62
0
0
37
51
105
5
86
79
64
114
61
157
54
58
59
37
45
47
74
67
82
44
92
108
83
81
94
16
105
113
111
80
80
111
66
69
117
62
122
77
22
74
130
110
97
120
162
33
170
130
126
70
108
153
139
160
81
168
91
124
153
144
132
83
189
157
123
131
62
119
70
45
79
88
171
19
6
94
105
14
155
97
0
147
200
255
255
223
229
229
255
255
226
255
255
255
222
220
211
255
214
213
255
255
255
196
193
240
185
194
255
255
203
207
198
198
206
198
195
237
222
220
204
152
141
101
62
68
150
99
185
144
67
140
162
58
49
102
109
104
61
101
131
148
108
139
139
93
112
71
116
68
118
107
128
122
47
58
108
93
103
101
92
86
68
51
107
35
78
66
74
82
54
99
58
134
20
93
25
55
60
105
72
147
145
121
82
127
78
62
87
69
88
29
74
67
144
85
166
95
57
54
55
73
42
135
122
92
106
69
109
35
0
61
118
61
234
66
81
97
60
96
73
81
105
157
118
114
114
59
52
109
41
128
38
78
79
69
34
0
0
57
33
46
167
114
38
74
108
157
32
86
82
96
123
189
92
79
26
26
29
56
87
75
101
117
56
95
105
75
18
163
53
72
86
51
94
111
49
54
58
209
84
179
86
82
133
65
37
122
41
55
41
124
91
23
63
53
114
53
50
82
117
72
83
79
154
117
133
57
91
75
67
65
119
104
101
104
55
92
108
92
74
96
82
86
11
39
33
108
73
59
93
66
188
125
121
137
56
58
133
129
145
78
64
237
121
175
72
46
79
66
127
110
127
143
188
145
55
129
145
187
128
129
120
134
141
20
112
102
105
102
136
210
122
0
48
59
85
119
117
40
154
227
227
255
225
229
255
255
229
226
226
255
221
255
220
209
255
255
210
255
207
203
192
192
187
190
254
255
255
255
205
196
252
190
195
196
188
176
160
199
204
142
152
143
77
103
55
164
144
68
86
147
137
103
86
71
15
79
72
90
156
85
137
88
83
86
126
110
58
35
77
115
162
127
146
135
114
107
77
68
72
52
77
50
5
136
105
105
71
32
22
123
106
106
81
0
0
117
60
95
133
43
87
39
134
98
28
129
64
47
149
93
109
207
165
135
22
82
76
20
132
65
77
123
152
191
153
92
69
46
91
227
137
63
46
134
83
122
46
56
89
65
81
89
142
167
48
85
168
110
18
8
90
10
19
39
75
75
94
89
89
72
196
132
125
10
16
30
40
39
53
95
160
109
80
81
72
0
12
99
0
68
98
162
147
170
115
50
189
174
66
14
105
15
94
40
63
45
174
127
107
162
113
103
95
95
89
0
45
34
128
106
71
5
137
103
0
0
35
58
63
7
50
151
94
92
98
43
62
127
135
88
122
59
98
26
96
114
136
130
109
77
108
39
28
54
18
0
66
191
98
140
115
77
48
63
70
98
70
46
32
90
104
139
87
114
77
92
109
117
119
90
132
167
69
84
128
200
110
123
146
179
124
107
128
102
31
128
143
36
139
199
146
3
7
43
129
120
137
231
255
255
255
229
229
255
229
229
227
226
255
255
255
208
203
255
255
197
198
202
190
172
232
187
251
255
255
201
248
208
198
245
253
255
255
248
240
186
166
155
145
161
102
87
96
69
140
160
144
103
116
157
89
62
52
66
84
61
93
104
88
139
136
184
62
50
43
74
119
57
122
160
139
168
126
174
124
87
114
172
130
126
143
173
129
78
83
126
26
35
60
103
63
44
90
20
122
126
52
93
66
104
143
20
43
38
143
114
106
49
98
88
71
149
85
90
84
88
120
47
81
149
90
54
93
110
133
17
99
137
122
126
101
53
97
89
89
128
67
86
98
59
81
93
39
99
66
134
71
23
48
37
118
109
120
124
175
64
103
113
63
113
17
105
66
17
7
55
41
17
0
43
45
116
80
65
18
75
83
79
49
101
71
37
62
81
108
95
78
10
94
50
34
13
66
48
106
104
86
155
73
159
18
46
76
51
68
72
90
75
95
178
80
32
50
114
62
60
77
138
107
62
133
158
91
55
18
79
99
140
137
113
56
99
69
69
61
113
123
84
121
129
83
78
114
85
37
5
0
120
115
131
71
92
41
82
127
128
86
64
94
173
37
113
88
76
104
121
122
130
95
169
78
86
140
134
162
133
192
117
107
135
130
88
49
65
103
113
69
63
116
198
13
36
44
164
168
130
248
255
255
255
229
229
229
228
255
225
224
220
255
255
255
197
253
199
194
250
255
186
167
179
181
251
255
205
197
190
199
203
255
255
243
237
237
192
183
168
150
192
164
104
96
96
69
65
147
152
57
92
128
108
89
94
58
54
41
88
154
121
128
149
161
62
62
48
81
116
84
71
164
154
138
163
158
64
130
174
203
150
173
144
151
124
96
87
64
60
60
68
120
69
92
146
43
84
147
112
52
57
118
131
102
107
66
131
110
47
72
105
70
97
141
82
87
60
75
53
0
74
97
137
92
33
47
116
94
182
32
150
127
48
76
33
127
26
100
68
40
43
90
127
99
63
52
134
76
62
0
153
149
237
234
195
159
86
149
161
46
59
0
36
87
99
76
71
139
66
75
94
37
89
117
116
94
81
131
49
122
113
99
118
91
6
62
9
142
146
95
85
13
70
58
52
63
1
56
61
76
40
97
37
74
101
60
46
102
110
49
41
192
95
61
86
117
34
0
25
0
16
91
119
83
150
37
98
79
30
110
118
118
118
102
70
31
34
69
57
43
119
123
114
106
113
56
145
165
42
97
115
153
91
84
27
104
67
155
90
46
109
113
108
51
51
52
92
122
94
61
99
137
125
79
93
149
113
145
169
170
59
179
125
123
121
133
89
109
67
52
111
138
180
47
55
202
149
160
255
255
255
255
229
229
255
255
255
255
221
216
255
255
254
243
192
194
247
245
251
178
161
176
231
249
200
192
198
189
197
255
255
236
220
216
176
186
216
213
146
138
169
95
93
107
68
74
113
171
128
119
77
148
77
117
77
37
107
107
28
123
95
121
166
76
135
133
102
59
97
93
161
162
152
149
100
87
171
195
225
169
171
183
206
139
141
151
107
62
26
165
94
112
47
103
137
62
25
148
106
104
59
32
94
80
107
71
93
40
76
96
38
107
145
125
127
14
48
64
29
2
54
91
97
87
13
43
138
64
82
93
128
95
111
75
64
77
47
92
57
114
28
124
83
160
39
123
30
103
171
136
238
184
148
93
70
2
110
167
64
126
166
63
74
91
44
73
125
37
136
71
39
122
51
59
108
41
88
109
132
65
120
47
11
86
56
7
151
155
164
94
95
102
72
42
100
74
19
0
72
45
162
84
179
114
73
100
108
112
96
78
56
105
84
74
147
48
6
25
17
48
105
29
54
142
0
67
112
114
114
124
68
126
110
89
71
89
96
75
14
38
98
100
95
127
36
30
100
118
46
42
187
161
70
29
45
118
109
24
41
42
84
83
50
67
114
98
105
40
78
129
126
76
66
103
98
58
102
111
174
65
71
130
108
81
68
183
155
92
57
118
145
248
130
94
124
106
207
255
255
255
223
229
255
255
227
227
255
255
213
255
255
254
186
185
242
250
185
242
221
154
171
233
249
246
231
180
183
255
255
194
174
214
212
166
162
145
207
198
138
122
114
96
158
122
157
103
98
164
116
108
153
67
104
6
69
41
119
91
110
70
99
183
172
141
50
96
58
117
146
186
160
179
115
119
133
143
191
253
200
206
235
172
128
112
108
120
47
19
111
50
81
87
32
167
137
131
134
13
27
100
62
91
101
85
75
13
34
43
25
42
162
174
127
80
35
89
25
88
11
28
106
141
120
106
126
134
56
132
75
89
59
81
42
83
44
1
132
21
121
120
53
25
194
97
133
67
150
108
36
67
54
58
36
0
94
33
59
51
108
134
97
74
83
67
50
87
42
160
72
44
110
142
45
35
75
129
159
70
33
51
0
11
51
54
9
95
80
123
10
102
69
116
114
78
48
34
35
58
55
156
87
173
93
153
4
136
41
72
182
65
57
115
66
111
60
5
68
129
119
141
39
54
203
8
168
165
106
76
112
40
34
47
34
73
123
41
6
0
35
57
43
98
93
61
20
9
61
90
43
112
170
98
63
12
117
149
126
72
48
88
35
94
157
123
120
64
58
120
179
62
51
53
79
115
40
73
95
115
36
102
52
54
0
59
85
81
13
102
108
131
129
201
52
92
133
183
255
255
229
227
229
229
255
225
219
210
255
255
210
255
250
183
174
188
173
183
190
171
145
165
186
188
177
227
183
244
208
179
229
181
216
166
202
207
139
141
194
134
118
109
78
138
127
99
86
23
62
120
114
191
72
90
5
100
39
105
26
120
84
154
111
172
160
143
69
79
255
119
214
164
192
139
147
115
152
166
239
134
178
237
160
127
167
170
172
106
97
57
94
41
83
63
164
180
148
147
109
111
62
13
29
56
13
35
26
10
32
7
67
102
140
112
32
27
53
8
130
39
72
170
160
105
100
168
126
145
107
98
50
64
21
54
41
78
13
96
13
83
214
119
70
120
87
105
104
93
49
62
76
64
45
55
24
33
32
62
5
2
46
0
92
107
101
81
108
80
56
52
14
121
147
134
54
49
109
124
191
68
33
17
23
58
87
71
166
136
70
22
0
16
83
7
87
63
8
60
57
106
17
100
99
114
71
43
81
65
81
127
63
69
138
0
69
74
64
0
20
17
82
92
75
207
116
139
136
136
55
26
53
68
102
55
88
97
0
4
20
100
94
108
105
85
75
234
62
72
115
85
97
99
112
44
20
101
81
99
106
113
48
56
129
12
82
61
63
84
97
95
152
73
37
64
61
26
115
113
154
110
28
102
44
76
102
30
79
56
5
13
117
94
12
132
138
181
255
255
255
229
227
229
229
224
255
211
219
255
191
201
255
188
173
167
161
172
167
178
152
142
171
179
170
166
223
228
185
173
198
242
241
239
184
209
201
184
181
171
177
177
162
139
162
92
95
150
55
160
60
202
180
73
47
40
49
39
125
81
120
96
140
180
139
168
179
129
180
172
181
214
194
173
162
164
166
135
142
166
215
139
162
155
130
122
108
177
188
193
159
40
61
68
9
59
117
105
25
153
70
122
61
42
115
43
73
5
119
54
41
99
128
168
79
106
108
29
54
82
145
107
51
44
17
3
47
158
152
94
104
127
48
20
31
156
89
171
148
80
119
133
89
177
122
59
132
75
189
66
79
16
39
38
31
119
88
5
80
30
0
29
32
32
76
60
107
47
69
36
22
17
66
128
114
108
53
42
166
133
101
10
76
16
42
44
79
80
122
36
126
123
113
73
86
28
120
100
46
89
97
114
123
138
139
34
107
101
123
100
73
80
81
102
19
10
89
6
87
121
159
0
40
52
28
174
139
163
27
23
91
85
55
107
90
85
52
56
97
0
59
39
61
60
133
167
28
82
47
50
130
58
95
149
44
37
80
105
119
77
58
35
16
121
30
49
39
60
48
98
127
141
56
24
66
58
60
53
45
102
118
70
82
0
105
33
97
25
55
20
26
131
47
45
92
145
190
255
229
227
228
222
224
222
219
255
255
255
205
241
244
251
183
166
218
207
217
206
216
148
152
180
173
173
173
173
130
225
219
255
247
235
184
177
203
192
180
171
174
126
118
165
121
164
123
176
157
101
134
131
238
143
64
33
62
124
46
83
119
122
102
161
188
178
218
149
144
118
200
164
225
211
171
227
220
192
156
165
161
176
156
150
205
193
142
110
204
180
211
165
128
130
72
65
66
86
97
133
116
122
224
166
64
84
158
70
61
124
50
52
68
127
200
69
138
64
94
95
65
67
6
10
70
24
0
60
128
148
178
154
198
115
53
101
73
77
88
67
151
158
160
116
81
32
73
70
94
132
125
20
4
17
0
90
115
57
30
30
68
0
61
16
120
49
62
65
50
57
0
78
81
3
71
95
82
109
27
0
140
124
8
108
26
72
38
78
34
77
22
39
179
168
83
79
51
17
52
114
107
66
101
36
168
107
22
128
24
75
45
77
103
41
78
92
12
41
34
61
80
132
0
146
99
38
114
121
77
30
27
67
89
107
116
54
55
73
78
58
18
0
126
137
69
90
81
68
64
140
35
31
33
89
151
32
24
79
90
185
112
63
50
13
82
110
40
41
46
47
81
146
157
84
67
17
15
46
110
94
135
100
107
134
49
81
0
114
34
125
62
59
132
81
67
193
150
202
212
229
225
226
219
221
255
214
214
255
248
196
240
231
187
226
211
216
207
204
192
196
197
161
183
240
176
173
218
149
219
212
200
240
226
176
165
201
188
201
166
125
116
105
192
118
165
186
172
106
125
191
171
249
80
77
50
105
95
147
121
145
127
133
205
206
186
191
160
135
139
162
215
228
178
169
236
174
194
173
174
168
235
172
147
207
205
153
118
143
177
183
181
143
128
64
77
18
17
100
112
161
114
119
145
114
97
126
63
175
48
65
66
50
92
139
91
134
38
56
36
85
130
78
0
41
3
0
60
188
201
125
115
199
195
0
48
133
166
31
149
197
85
118
171
82
58
114
95
109
83
68
11
68
95
32
176
95
129
100
0
31
13
40
25
168
69
58
60
51
13
3
38
11
66
140
100
48
42
35
3
61
78
26
74
35
10
157
84
80
79
72
102
99
179
82
138
154
147
39
157
28
34
79
115
79
83
75
94
31
45
80
98
108
67
133
89
0
0
114
85
61
15
26
118
63
105
102
67
52
99
69
20
50
104
85
37
26
34
0
0
21
0
9
122
152
114
61
182
166
83
188
63
58
106
138
59
61
15
130
124
102
113
113
67
43
42
102
46
14
61
98
150
89
82
17
39
64
86
111
131
94
18
48
118
108
38
99
0
15
117
97
123
146
61
76
154
163
204
221
229
226
224
255
217
210
255
255
252
178
184
183
168
175
166
158
161
209
198
185
182
193
215
231
238
221
220
225
158
168
153
229
227
222
226
213
206
134
147
96
140
116
128
152
71
128
203
159
140
208
203
179
173
96
108
104
120
52
145
177
208
161
145
191
221
196
148
195
163
158
179
215
172
194
178
189
186
182
179
169
230
234
232
204
165
158
150
129
162
189
143
190
142
165
135
84
4
57
110
117
139
63
97
112
194
95
131
175
75
59
13
26
75
11
80
85
87
171
122
122
109
141
191
172
19
66
68
71
125
88
102
171
175
147
0
27
72
165
155
220
238
105
206
165
52
98
87
67
111
110
67
16
70
89
77
138
106
34
60
58
6
127
49
14
72
24
0
75
49
0
0
92
97
186
113
79
87
51
37
106
85
21
15
138
77
66
82
27
255
157
195
150
92
120
82
132
115
94
81
96
105
69
10
109
61
97
11
122
39
116
136
121
73
37
113
72
9
44
40
8
46
62
0
116
91
130
33
69
119
114
100
0
155
148
113
87
76
87
75
0
24
101
44
0
159
79
111
104
157
116
97
146
88
159
93
50
33
98
126
106
121
127
104
98
63
36
30
24
22
22
115
131
29
90
89
112
78
113
126
136
112
70
125
103
104
87
112
57
63
83
56
143
155
52
87
131
223
199
217
225
255
218
255
255
200
246
247
188
171
229
231
168
173
163
166
163
160
204
191
183
188
211
173
222
217
221
230
144
170
213
219
170
169
227
215
213
128
115
84
167
125
160
206
82
142
227
148
207
255
121
141
255
189
110
110
91
0
100
108
213
213
152
182
178
166
178
206
197
217
198
172
174
195
188
190
248
227
236
165
179
180
230
215
180
156
200
196
111
129
101
124
168
148
147
109
128
93
18
115
118
100
111
108
119
89
43
112
43
62
81
91
74
4
80
38
74
127
137
109
83
75
71
113
63
162
120
93
89
91
93
157
145
27
36
43
82
30
112
167
128
163
126
161
84
102
181
133
137
61
133
70
74
103
151
68
15
5
34
69
34
17
107
73
14
0
91
0
0
31
46
1
0
81
29
39
76
68
62
111
21
0
3
54
74
89
51
102
195
61
47
142
104
65
38
63
93
57
124
27
85
117
35
125
84
103
76
95
159
50
104
81
67
29
141
86
9
22
3
10
1
36
13
71
107
189
114
96
130
74
73
132
146
84
98
93
38
98
42
29
0
0
133
5
124
99
77
72
70
58
123
97
157
135
119
138
124
125
126
169
80
73
50
170
47
37
100
9
21
45
68
149
100
90
123
75
72
98
45
132
81
73
48
145
94
155
86
44
48
106
116
107
148
102
106
212
248
198
217
214
204
194
187
188
177
248
237
191
190
235
242
238
239
182
194
189
195
239
179
161
189
208
170
215
224
175
169
156
214
220
224
172
171
201
187
152
144
119
130
197
119
237
162
112
154
216
138
195
222
83
147
237
110
223
145
107
0
153
69
115
175
235
231
252
227
187
177
191
248
252
192
177
165
237
226
243
248
165
188
178
173
229
217
237
233
208
218
153
117
124
181
163
154
52
67
82
127
142
121
89
96
41
49
113
43
151
149
82
71
82
0
71
76
139
85
142
166
64
44
85
97
208
144
164
208
125
91
62
56
90
17
0
0
0
0
77
94
72
121
108
162
87
98
91
120
61
151
85
104
108
77
102
84
108
73
45
4
7
20
25
72
54
30
114
0
0
92
84
50
32
0
43
122
29
122
37
66
47
163
13
73
0
109
70
114
62
112
40
153
89
97
13
161
111
137
190
87
144
0
0
41
43
96
109
114
124
156
24
78
35
75
62
69
106
129
63
69
1
49
169
126
42
88
25
99
143
103
121
86
70
151
95
76
54
70
106
112
98
55
16
133
99
18
85
83
101
37
83
101
144
149
144
156
124
110
135
51
112
108
35
78
10
102
40
74
62
63
0
125
0
154
192
132
114
107
76
97
109
130
52
90
64
90
68
142
125
120
80
106
131
60
141
104
123
218
242
238
252
254
195
192
192
245
248
255
203
204
193
199
247
248
243
195
201
197
209
200
247
231
204
155
165
215
226
177
229
214
219
226
177
174
218
210
143
149
145
107
110
208
231
238
141
117
224
219
152
203
196
137
203
237
83
168
135
194
3
159
146
151
186
227
172
177
227
177
168
193
245
237
177
233
218
232
224
237
238
221
179
166
222
226
218
229
224
157
161
152
183
192
181
79
141
76
137
113
128
125
62
103
37
97
67
27
127
108
106
86
76
0
0
108
77
16
181
130
118
41
124
117
97
149
93
96
158
95
115
87
129
53
84
43
13
4
1
45
0
65
152
105
224
120
48
84
30
74
143
98
101
104
134
92
98
74
52
88
46
2
119
56
89
123
54
63
0
0
0
47
5
57
98
10
93
45
96
88
65
50
168
74
90
105
128
111
107
86
106
169
109
94
7
133
87
178
147
85
5
130
109
80
107
21
14
51
52
162
109
26
0
25
61
136
7
90
179
93
41
17
87
68
33
61
74
66
99
146
102
126
123
110
52
72
64
124
110
194
106
143
50
46
150
116
112
34
74
58
28
76
166
185
114
105
121
107
48
76
45
86
117
71
68
31
169
79
21
57
57
9
42
18
11
183
161
66
109
128
78
71
88
70
82
67
80
100
96
122
119
89
133
99
88
87
179
137
169
184
180
242
202
197
200
253
254
198
212
204
249
188
205
196
251
241
199
202
201
215
255
255
244
219
209
215
163
180
178
185
173
177
184
186
230
219
173
156
154
208
120
106
187
178
217
170
173
228
209
167
209
186
155
182
158
103
202
125
148
84
191
167
184
194
213
156
153
176
160
167
184
213
227
235
223
219
228
239
232
228
233
230
218
240
244
239
188
236
185
173
156
193
196
117
88
96
92
84
145
91
114
27
37
92
142
153
99
162
41
101
96
107
115
124
70
38
76
87
54
52
61
184
215
91
47
13
108
53
122
56
96
85
84
61
110
7
69
118
106
83
93
95
72
117
113
69
59
65
137
53
94
79
122
115
147
57
58
63
46
50
39
65
16
54
142
102
35
0
0
51
26
72
131
115
74
20
65
85
137
66
153
159
86
114
66
68
124
69
31
75
132
25
84
61
120
10
128
48
46
37
120
122
104
71
48
24
32
112
89
38
12
99
60
42
7
77
32
148
125
59
84
160
23
59
106
88
88
88
110
142
158
102
64
61
60
93
123
134
168
29
60
46
76
114
73
76
68
40
93
59
99
104
121
74
125
103
137
55
0
44
127
135
78
68
169
99
69
100
60
23
89
90
80
93
112
123
102
83
88
129
125
89
78
69
80
58
106
104
126
130
95
122
162
173
149
206
146
169
185
239
248
206
203
250
245
244
185
194
242
233
231
193
190
244
232
186
199
251
207
255
249
189
226
214
167
167
188
181
189
185
187
194
247
184
176
184
167
169
224
74
134
213
229
171
160
179
208
189
175
173
137
188
176
205
130
242
211
166
142
210
206
193
192
207
184
145
224
202
218
227
191
218
239
219
225
225
250
240
229
250
191
186
213
255
255
255
210
213
188
224
161
153
109
121
154
154
76
90
34
80
22
0
39
114
81
46
7
116
138
99
98
92
48
0
68
176
68
111
65
92
31
133
194
22
52
139
47
87
131
123
169
121
71
73
56
94
91
88
130
77
198
85
77
115
140
0
91
87
62
85
61
114
116
195
105
39
49
3
0
0
9
0
47
88
107
76
0
38
60
163
70
33
74
128
0
55
62
118
126
107
94
77
69
39
123
109
149
59
50
59
84
166
172
37
19
2
144
21
34
66
50
91
81
69
12
142
84
72
19
127
87
31
96
9
106
93
30
96
233
206
56
32
21
119
28
33
66
99
174
176
87
79
100
19
82
65
54
131
94
90
166
80
89
41
34
23
26
75
88
67
108
104
151
120
99
144
142
76
65
103
134
38
27
168
81
24
226
7
31
110
61
77
75
107
146
65
95
93
143
111
73
71
49
71
82
132
134
164
180
139
150
180
192
183
218
164
231
191
196
253
251
196
184
174
221
227
232
234
225
226
230
237
237
233
227
250
253
199
251
241
181
225
217
172
176
193
187
193
192
194
199
200
189
236
237
221
184
183
96
213
156
255
208
165
196
195
179
179
114
185
141
116
197
96
141
227
62
116
241
210
225
239
158
105
147
212
212
212
228
208
156
169
223
235
227
250
255
242
255
206
207
220
212
255
210
219
214
191
191
186
172
125
126
148
116
159
140
98
59
81
28
25
74
74
66
83
112
85
123
112
23
99
47
91
125
88
96
120
30
34
83
140
12
42
74
65
64
72
104
94
108
130
130
54
99
168
112
112
41
159
85
111
93
111
15
63
49
43
36
62
79
199
37
158
119
67
44
0
5
69
18
78
120
53
71
124
164
49
197
83
0
10
170
45
76
67
92
105
99
24
60
64
57
70
134
126
105
33
127
195
229
10
7
18
45
68
0
95
0
73
107
42
25
0
97
0
100
120
110
78
135
37
77
0
145
75
165
175
137
117
40
41
41
0
10
57
114
163
105
69
38
67
36
125
118
97
149
163
145
175
74
156
36
81
75
57
55
56
43
79
48
106
95
53
62
210
34
188
214
81
46
50
89
87
66
144
7
85
39
48
9
37
116
141
102
136
75
79
113
129
110
137
140
143
181
172
208
209
210
163
162
205
228
224
237
239
246
198
195
243
240
229
224
219
219
215
221
216
223
224
232
187
188
228
251
255
249
249
187
229
224
162
171
183
185
243
248
194
196
198
199
192
234
180
164
189
236
149
173
154
196
175
171
207
143
135
126
141
169
117
156
92
49
6
120
12
190
233
197
230
173
156
95
157
198
231
163
224
227
160
167
159
186
188
255
255
255
214
255
255
223
210
255
214
221
214
196
193
185
225
199
182
166
126
79
94
158
99
68
35
39
116
70
107
92
4
28
76
118
184
156
75
41
128
106
116
127
64
39
36
62
76
86
43
87
75
29
43
99
150
76
90
111
148
171
102
66
56
145
165
81
31
129
82
86
8
54
155
73
69
137
31
82
93
18
27
144
0
66
13
66
121
117
23
27
49
84
119
95
111
73
218
39
57
90
30
112
105
36
107
70
133
46
184
105
115
106
150
140
209
80
4
47
161
37
0
105
0
113
26
136
43
8
64
80
75
149
138
164
154
115
133
88
149
176
83
55
34
2
6
79
76
48
118
117
119
154
108
109
33
28
178
183
117
121
101
229
104
121
172
108
181
91
82
70
19
57
80
53
136
47
128
119
72
60
74
82
115
43
21
93
50
44
111
28
27
44
136
146
97
92
128
150
153
158
181
180
215
215
170
165
212
215
204
201
189
176
160
193
156
209
208
215
216
216
174
185
229
224
224
219
225
222
215
193
204
203
197
216
207
234
183
238
229
233
242
232
177
221
220
203
159
170
132
177
240
187
190
188
241
242
172
184
221
238
177
149
137
213
202
137
167
183
121
149
107
184
119
127
138
132
74
114
11
6
183
124
217
152
151
103
127
199
193
183
231
211
193
235
239
156
234
205
199
255
255
208
228
255
224
212
255
222
209
252
255
180
184
246
169
181
153
180
225
132
97
144
150
124
63
92
71
69
97
67
140
106
93
138
45
126
91
95
24
91
146
132
36
23
107
57
65
107
88
73
91
55
39
100
51
12
150
38
101
71
142
87
134
145
144
40
137
56
23
13
111
94
16
79
39
205
72
38
30
28
144
16
0
44
80
189
63
67
106
43
98
44
66
51
136
49
58
8
154
57
48
28
22
74
77
34
132
84
143
126
81
45
16
8
70
27
94
79
44
36
62
43
76
60
33
38
60
19
139
130
77
106
118
82
174
96
86
67
60
21
60
35
99
29
50
85
49
139
66
61
123
108
74
33
71
85
157
124
73
103
150
158
105
41
52
130
79
73
125
16
36
85
49
70
121
101
55
110
134
127
127
117
111
58
73
110
75
60
68
51
57
112
128
122
36
52
154
165
199
200
212
157
146
156
127
183
187
202
149
171
168
168
180
138
142
152
144
204
164
162
168
172
231
213
166
162
241
209
191
192
159
144
216
213
219
186
183
183
192
182
230
172
219
208
150
149
209
214
162
187
178
191
170
253
218
204
184
234
237
208
177
217
212
232
178
169
137
119
188
160
184
108
119
140
111
71
137
27
49
170
131
137
131
142
134
133
179
165
170
156
142
184
218
238
245
248
214
199
217
207
255
255
215
219
219
255
221
202
255
252
201
184
246
248
165
150
214
197
186
177
133
129
137
62
76
26
64
52
139
176
90
88
140
109
164
118
82
61
41
109
117
38
16
89
135
148
71
0
34
0
14
44
27
49
85
146
65
101
78
113
100
146
111
187
123
93
123
97
49
88
83
117
36
102
75
114
33
0
17
137
0
161
101
71
54
17
43
202
32
14
13
0
119
82
113
50
69
91
92
56
16
66
46
105
95
151
127
223
49
70
55
51
5
42
119
118
65
82
119
122
108
59
0
87
51
28
60
99
49
181
54
62
114
85
48
113
54
0
27
42
0
69
110
39
121
42
57
53
97
155
29
39
63
69
83
85
88
84
46
74
159
91
152
126
54
54
4
72
120
13
42
48
66
75
129
99
104
113
125
71
59
114
95
90
99
54
86
129
152
78
111
104
104
77
99
190
212
219
209
156
135
146
136
120
175
173
190
138
168
165
165
173
182
133
141
189
192
153
154
158
159
203
203
206
201
173
153
128
174
154
149
149
164
209
224
175
222
227
182
172
219
162
153
148
147
155
161
156
179
174
183
168
204
172
193
232
227
254
233
195
189
177
239
182
177
190
161
179
167
111
114
142
165
52
81
88
48
52
80
163
129
131
150
119
126
207
137
157
143
200
223
211
237
189
194
255
255
214
210
255
255
217
255
218
213
219
195
218
202
196
191
252
223
219
200
221
207
202
138
131
173
109
58
82
35
50
116
94
72
164
141
146
122
42
90
66
103
8
103
76
44
64
84
78
106
101
120
107
48
62
66
27
46
90
98
141
66
79
58
69
87
80
52
85
92
119
66
79
100
116
186
82
94
60
154
74
10
38
76
0
83
111
79
32
52
116
204
69
57
52
19
0
100
110
98
117
74
69
118
39
67
82
153
80
88
102
99
103
158
61
41
90
151
190
194
64
32
115
123
72
144
54
2
149
103
66
59
103
88
77
48
34
35
122
62
73
23
114
0
75
134
91
59
0
67
0
114
76
66
0
58
25
85
89
48
51
100
75
60
186
142
119
120
123
31
78
103
72
27
21
69
116
102
125
84
102
70
124
68
42
63
102
92
54
93
148
151
107
95
7
90
125
187
203
212
151
140
152
133
137
124
119
112
115
105
170
121
111
162
160
166
170
171
124
176
177
138
142
144
141
191
145
134
180
101
194
175
110
142
150
134
160
148
211
219
208
158
181
166
212
156
149
144
144
152
157
150
169
220
224
166
202
176
203
234
176
209
236
178
203
156
215
187
119
194
172
120
109
122
152
149
145
63
62
68
48
22
65
154
126
70
176
102
111
208
176
209
204
214
180
153
172
171
173
248
240
203
255
255
214
215
255
255
255
218
189
218
255
246
189
248
212
221
199
188
158
209
193
191
186
114
49
56
40
51
27
95
137
175
128
117
128
31
97
139
184
33
100
85
103
128
196
138
120
119
159
98
123
119
41
76
59
36
30
67
47
93
39
38
15
140
63
117
40
38
6
74
45
42
48
74
35
214
70
108
12
21
64
32
51
31
165
0
41
47
142
88
52
47
60
64
54
87
12
129
87
0
143
115
91
165
119
26
0
92
31
202
136
139
43
165
147
98
105
132
143
91
110
101
96
65
0
53
58
87
86
99
59
176
36
75
69
149
134
35
1
148
95
220
92
35
32
68
36
31
93
52
110
57
12
85
44
131
108
118
88
111
115
69
125
124
88
68
89
117
160
129
71
54
159
72
110
120
37
76
84
49
123
112
54
83
32
155
144
128
134
84
34
48
100
198
202
199
146
129
160
179
130
128
109
114
110
113
98
102
107
106
157
156
108
161
162
110
114
167
175
129
131
129
186
188
124
181
107
180
181
115
131
140
132
143
149
214
215
205
207
228
162
156
152
145
140
139
150
205
148
161
162
217
168
192
172
162
222
186
255
227
181
213
159
164
230
114
192
181
129
106
124
153
159
126
108
99
62
49
0
93
89
120
68
121
99
156
201
184
197
170
159
151
194
162
171
167
233
235
238
255
255
255
208
209
209
255
255
245
255
204
194
181
235
209
229
211
235
170
218
188
194
195
196
132
94
36
87
34
66
150
150
117
111
127
110
155
138
165
15
88
90
148
152
165
70
94
146
142
81
129
66
73
99
39
25
65
69
50
113
7
97
55
43
86
132
100
131
75
108
111
112
60
56
65
199
49
76
0
0
56
90
0
0
94
43
33
38
57
162
28
119
48
80
65
119
17
59
145
69
55
70
179
80
54
74
88
169
107
126
159
85
40
26
64
67
94
123
123
102
144
102
53
6
23
65
42
133
48
35
184
128
13
96
107
60
61
77
85
131
35
72
88
0
56
104
106
128
89
42
120
95
48
88
110
148
121
108
145
118
84
93
168
123
88
80
80
13
16
56
158
102
28
53
50
120
138
46
96
89
18
100
25
69
119
104
74
47
103
92
130
164
159
151
136
126
114
175
102
167
158
161
102
99
94
99
100
92
94
94
95
98
101
98
99
90
96
101
97
104
106
111
115
163
128
180
182
121
125
120
125
112
183
160
182
210
160
212
213
158
155
150
147
139
187
187
200
198
151
152
154
153
177
175
166
174
147
208
255
228
215
201
154
124
217
138
142
133
134
91
161
144
127
155
44
99
46
42
24
43
94
83
4
122
76
175
158
122
160
187
128
194
198
128
139
137
191
219
165
190
255
211
196
190
249
255
255
255
238
238
235
230
246
223
225
220
201
217
217
207
197
198
180
169
178
115
111
84
68
120
190
145
142
88
116
188
103
112
135
61
84
199
71
86
82
82
9
48
145
46
110
119
112
79
58
104
25
43
36
100
86
111
76
61
18
0
43
128
34
45
56
91
63
11
111
90
173
44
2
48
77
107
0
112
62
12
55
13
12
122
81
92
97
88
74
92
43
89
45
91
118
93
53
103
135
45
0
76
158
17
157
186
155
89
105
58
71
121
193
0
128
32
7
81
49
34
97
91
88
66
102
118
133
63
57
57
103
128
37
121
40
67
95
101
110
0
0
37
77
70
64
92
106
140
88
138
120
133
45
83
126
121
115
51
59
74
99
91
24
92
87
36
100
66
81
102
77
65
75
23
99
23
57
56
107
157
158
167
196
186
172
135
134
127
173
150
103
72
154
133
171
87
95
87
90
91
94
144
86
86
94
95
145
146
132
138
86
135
93
93
94
107
156
113
114
113
118
121
117
121
108
113
165
149
183
151
204
199
151
149
194
140
137
137
189
198
146
150
148
152
145
180
234
224
244
217
255
204
241
193
191
204
165
212
188
142
154
179
143
175
133
143
91
77
39
68
34
42
48
77
67
15
101
55
166
169
162
172
169
161
180
200
143
141
195
144
166
156
179
197
214
189
187
193
253
250
255
232
222
232
228
247
229
216
212
212
190
199
216
201
214
192
188
214
109
58
147
51
90
177
143
147
89
140
160
128
132
187
156
100
172
86
119
104
107
79
52
89
49
45
77
99
118
99
65
36
16
82
64
45
50
92
88
60
92
66
103
86
38
98
148
45
35
30
79
115
149
96
66
34
158
0
148
97
67
64
0
25
9
48
73
69
118
36
95
126
11
168
140
83
47
140
212
51
30
131
145
142
122
92
160
162
60
134
98
118
164
192
22
190
71
34
55
70
19
90
33
11
108
96
6
68
53
102
100
57
38
13
36
55
73
138
77
60
65
0
73
32
87
128
148
52
104
92
162
129
83
49
147
111
39
49
96
73
37
52
122
60
44
80
58
58
24
94
33
87
85
112
23
49
23
80
118
152
181
164
192
174
148
148
120
185
152
106
144
156
122
120
154
87
146
97
84
83
81
95
143
81
81
91
143
141
90
126
131
127
73
86
83
80
138
139
152
125
112
166
175
118
116
110
96
175
121
156
143
142
132
148
144
136
135
187
189
190
197
147
147
197
204
138
233
243
232
186
225
255
255
222
175
170
208
162
194
181
181
206
185
121
100
165
142
155
77
57
67
60
79
79
124
66
31
43
88
158
160
153
167
127
173
186
172
129
135
138
137
150
201
222
241
255
182
188
191
188
241
255
226
210
183
170
238
160
223
218
208
192
203
167
190
215
202
205
223
99
90
133
19
90
137
110
167
48
93
145
145
137
73
108
75
120
104
151
76
53
131
153
69
46
9
80
134
120
101
62
38
57
75
87
116
170
118
59
98
63
89
33
152
104
33
0
56
14
73
60
68
80
151
34
74
150
131
102
33
88
68
131
69
95
21
93
31
102
14
73
181
57
111
76
69
76
144
99
57
95
130
95
61
65
98
153
158
142
174
162
138
176
198
0
121
78
0
95
62
53
86
38
117
81
74
90
40
145
134
150
105
89
96
94
48
156
163
52
64
120
59
80
80
52
137
38
90
102
79
195
105
40
137
57
50
27
170
54
79
45
38
80
122
95
51
30
1
85
87
81
144
107
69
82
55
111
170
117
193
181
182
182
130
144
187
112
108
192
144
87
146
150
85
68
96
82
76
84
88
75
119
140
84
126
126
78
87
74
82
124
122
108
76
69
65
85
128
143
103
99
161
166
168
164
107
151
157
152
76
135
130
176
138
137
127
128
133
138
143
142
172
170
155
227
195
181
186
236
249
228
223
247
255
139
244
226
183
189
169
132
190
112
135
104
172
75
100
41
85
71
128
128
88
85
87
48
55
122
153
157
154
113
167
170
120
177
172
136
132
128
135
196
200
253
250
247
151
191
188
219
255
232
208
227
173
175
167
218
222
155
116
130
207
121
215
122
146
224
127
89
115
55
114
116
112
85
93
105
196
116
64
102
87
55
115
8
102
55
90
57
191
122
18
93
38
132
134
110
105
84
90
36
38
46
152
79
69
99
65
43
93
0
52
74
25
72
47
118
18
58
37
95
119
118
64
173
32
114
117
66
100
124
88
45
114
55
64
96
100
78
179
174
0
45
110
118
74
35
109
116
104
67
111
57
50
70
162
195
147
139
125
139
0
98
75
34
23
83
27
41
114
72
51
7
24
126
53
92
53
65
25
123
69
65
33
78
84
0
103
117
63
40
79
41
80
99
96
166
103
102
89
147
85
72
47
63
120
90
112
30
71
100
117
65
16
17
98
89
74
75
48
111
121
92
134
134
148
182
194
195
197
105
116
195
121
89
171
158
92
85
91
150
134
82
70
75
127
84
87
126
122
131
115
113
81
84
131
117
116
67
53
68
66
115
77
122
86
97
94
155
161
165
164
154
151
87
157
90
121
120
168
179
128
181
180
134
139
144
141
205
196
187
242
196
200
188
244
255
235
214
248
255
196
249
159
116
115
119
113
122
103
106
125
120
79
99
82
149
89
66
129
109
93
74
66
36
123
151
113
161
166
164
167
173
122
121
182
182
126
131
136
136
233
233
242
172
179
180
232
254
225
195
179
158
169
181
168
159
152
129
153
144
119
161
142
155
228
193
116
107
134
124
165
53
79
90
111
132
133
112
147
60
65
119
41
161
98
161
100
144
11
4
46
74
123
98
136
132
48
74
54
8
50
116
15
22
49
64
29
81
59
131
52
0
41
67
44
34
81
53
71
157
81
37
70
94
120
161
89
24
92
150
132
39
69
89
158
118
61
112
137
85
48
98
162
81
69
120
122
77
53
150
51
65
96
146
172
200
88
106
58
0
49
54
28
63
12
57
101
87
0
65
0
0
61
0
82
107
0
75
97
0
23
81
138
32
87
61
159
87
89
21
66
87
76
64
177
78
30
110
40
83
61
90
28
8
102
98
21
109
78
54
169
68
86
57
55
73
55
85
101
143
155
138
101
98
120
145
162
127
122
169
135
165
87
66
150
148
89
78
123
81
74
68
68
56
60
71
127
129
116
122
64
58
62
120
112
109
61
56
103
57
41
111
106
123
132
131
139
96
97
153
149
149
124
153
109
97
107
106
164
171
172
173
179
184
188
201
173
146
160
185
171
255
248
255
255
242
222
240
248
192
169
167
90
117
128
125
138
193
156
143
141
155
146
86
144
118
93
62
170
146
95
128
54
94
147
152
140
159
156
157
169
116
122
171
173
174
175
122
115
186
190
215
145
167
167
255
247
209
202
196
159
169
178
185
154
138
89
138
154
152
138
147
206
211
194
212
140
123
156
190
130
122
181
142
159
155
157
134
64
153
138
138
205
169
160
117
202
57
0
196
128
139
85
110
38
32
93
107
116
129
62
46
126
46
51
54
148
127
103
70
106
28
73
73
64
67
69
43
47
150
79
92
90
57
76
83
41
49
14
130
101
74
161
113
76
119
57
91
46
91
93
77
82
47
69
63
70
102
149
85
152
219
162
203
142
118
87
56
40
22
124
86
82
150
147
77
101
92
104
79
47
1
78
72
68
38
5
56
30
44
120
3
67
128
97
90
74
90
21
63
74
76
64
146
65
53
55
67
106
28
35
7
75
90
138
50
67
127
135
42
56
50
39
26
40
101
154
186
138
131
130
169
154
114
105
175
166
104
157
120
171
98
68
135
144
88
75
70
81
63
59
62
111
107
56
117
123
118
121
118
98
108
106
70
53
102
55
51
55
87
53
47
116
123
124
81
139
139
142
96
93
137
89
100
91
101
156
159
168
169
171
178
182
186
196
127
129
187
209
192
255
240
212
211
228
232
223
226
196
213
207
148
130
197
180
191
145
134
216
188
145
160
161
151
53
93
75
180
58
50
132
19
81
145
152
143
164
106
159
167
114
119
116
119
119
174
175
171
178
128
146
179
200
156
192
241
205
224
194
173
175
174
185
156
136
108
129
188
154
136
191
210
157
205
239
166
128
181
190
156
201
196
152
162
101
189
169
180
168
213
161
201
184
174
150
95
64
0
183
28
89
109
99
51
46
53
47
92
32
11
44
74
10
47
80
81
85
94
67
44
112
179
78
101
129
89
97
58
138
68
56
84
15
65
93
41
124
57
154
90
149
103
137
93
180
113
75
112
95
105
112
93
49
69
73
74
163
101
79
210
171
114
77
119
70
121
38
77
2
91
89
119
175
214
99
206
155
94
120
86
98
74
146
96
38
30
190
32
78
55
58
54
94
3
121
0
90
0
20
119
64
131
121
134
87
76
104
86
40
52
78
58
129
113
58
60
59
186
37
83
39
68
42
50
134
179
172
113
81
74
101
155
96
95
115
121
148
142
97
130
151
131
75
84
128
119
67
62
71
85
58
64
59
105
110
99
118
109
111
98
108
48
67
100
93
103
52
55
91
48
41
108
115
119
126
130
130
133
142
87
93
81
89
87
92
149
153
162
117
119
127
131
135
133
135
121
125
224
248
232
253
214
195
213
181
158
206
201
213
179
107
187
208
174
180
178
145
149
134
148
170
145
63
54
100
96
169
23
49
116
95
50
131
151
150
160
116
167
167
117
116
114
115
116
120
176
174
173
124
131
183
122
144
167
175
209
188
186
178
182
179
174
158
147
132
138
193
149
130
180
199
141
208
242
171
134
203
209
197
172
156
169
191
125
170
166
169
224
209
166
126
155
156
147
158
63
131
145
55
173
109
120
97
118
50
79
115
29
113
131
52
15
0
52
25
104
91
48
98
115
142
53
71
97
120
100
153
70
81
72
56
10
109
115
79
85
77
172
142
106
46
33
176
151
86
78
47
23
39
63
48
48
65
79
86
63
26
131
152
146
76
81
70
71
147
41
70
130
111
156
136
44
36
54
86
69
41
0
41
118
31
36
6
37
7
51
38
43
43
128
0
0
3
30
22
50
52
101
101
37
71
88
71
60
130
125
136
59
83
53
95
70
121
94
31
0
136
141
101
151
60
55
97
170
121
121
120
150
110
96
112
98
87
88
193
140
155
93
122
149
140
66
71
118
132
123
97
60
75
58
116
116
105
106
91
107
104
110
52
55
49
103
102
95
99
50
50
40
43
35
46
54
113
67
69
73
128
131
133
87
81
135
86
85
90
98
105
164
167
123
179
183
126
134
109
203
239
243
232
177
208
187
158
173
159
199
192
200
173
165
198
200
189
186
170
187
156
133
174
202
118
45
126
140
78
34
11
122
123
110
108
129
152
161
160
179
177
116
174
115
113
111
165
169
123
122
167
121
121
130
120
141
136
221
172
193
181
174
193
185
165
167
168
143
162
167
145
178
131
133
170
199
164
159
192
155
215
192
182
154
177
163
157
140
159
166
153
145
113
132
130
186
134
177
158
146
108
83
153
107
23
94
170
137
116
100
113
78
62
36
14
81
29
38
132
64
94
118
127
107
99
70
40
52
87
137
118
78
99
0
28
47
9
13
103
218
166
147
75
45
92
110
70
76
115
130
82
57
41
53
54
70
88
97
81
119
78
116
76
124
25
35
128
126
61
136
190
62
109
77
146
107
125
135
31
49
31
36
71
103
114
19
114
43
0
45
16
10
30
2
45
65
56
88
56
62
80
32
106
35
84
56
94
140
127
139
57
108
73
139
80
128
117
71
4
109
122
64
109
33
63
158
147
111
92
98
92
95
88
108
113
83
61
146
173
63
157
122
149
142
109
57
67
67
117
113
59
58
61
111
114
104
106
102
91
108
62
54
54
53
88
59
105
100
99
44
38
41
32
41
48
57
62
65
71
127
70
130
129
135
132
140
82
140
149
155
158
160
169
173
177
127
129
93
183
255
233
232
223
205
187
162
166
166
150
125
127
188
166
213
184
217
207
129
122
172
188
184
209
131
80
149
101
117
56
74
127
112
110
151
147
108
179
172
189
186
117
178
167
164
161
162
167
173
169
160
118
116
119
135
147
167
226
188
193
181
220
202
185
163
180
239
206
185
179
192
184
201
183
160
143
142
147
194
198
147
152
174
139
169
164
168
173
155
183
149
139
158
125
138
128
105
85
152
140
159
130
128
76
45
161
73
52
40
70
90
95
104
90
29
30
57
101
121
58
118
142
79
76
122
105
106
60
72
97
158
105
85
91
79
28
74
56
74
30
181
121
155
96
99
54
81
41
61
93
90
109
52
62
93
59
75
76
139
179
89
78
133
92
4
86
114
138
116
47
131
0
132
64
183
168
127
141
37
125
141
66
19
0
0
147
183
203
117
97
99
40
17
35
62
12
59
116
108
93
61
134
68
156
53
74
100
112
111
148
96
121
11
82
63
100
128
80
67
35
113
63
34
95
117
118
184
135
142
145
85
85
90
91
102
104
148
126
118
165
139
113
150
119
120
61
64
112
114
63
49
49
52
105
98
105
94
93
98
85
80
78
34
38
39
87
91
99
41
43
38
30
31
77
32
41
99
56
49
101
127
127
129
133
131
130
129
122
137
104
128
107
123
126
115
106
127
116
255
250
198
251
230
166
194
145
159
145
114
109
122
152
139
195
196
164
185
209
112
164
99
127
167
125
82
138
47
64
127
99
173
179
181
228
177
111
228
190
224
138
118
138
124
171
165
118
168
169
112
165
112
117
119
168
118
118
129
146
141
156
179
188
183
220
234
249
212
191
201
189
159
197
160
153
134
166
158
187
187
141
179
136
135
155
171
170
195
192
189
190
147
181
131
150
118
190
109
119
191
175
190
138
75
74
114
39
76
63
93
43
26
52
115
42
65
181
148
0
30
96
176
49
48
65
28
60
53
116
66
130
138
52
151
123
31
0
143
155
194
48
53
138
99
158
57
56
99
36
36
125
112
80
58
97
90
78
82
114
103
91
60
64
82
157
61
137
119
232
117
148
114
154
142
156
127
123
185
92
76
122
122
0
0
144
30
47
69
90
1
36
31
46
128
42
50
73
118
24
93
22
146
143
122
74
60
107
60
34
139
110
81
74
57
70
54
73
118
37
36
69
33
14
122
125
122
183
137
135
139
91
142
137
130
94
87
135
89
93
155
150
109
130
129
112
64
113
114
61
63
51
38
101
109
99
102
105
97
95
92
32
80
81
82
34
37
28
98
40
46
39
28
78
74
29
33
87
49
96
83
115
120
79
134
134
80
84
76
78
94
117
113
166
131
112
107
177
125
248
255
213
200
182
215
164
132
145
146
119
116
201
190
224
154
194
228
134
255
162
181
160
117
174
164
88
150
55
27
62
88
155
168
171
162
128
163
251
220
240
206
186
144
135
176
118
122
168
168
162
163
162
116
122
164
169
116
114
128
122
145
169
228
237
212
234
239
224
191
137
130
142
211
179
196
131
182
221
185
195
190
165
163
117
132
167
159
186
192
191
194
177
151
159
161
126
149
123
141
199
203
135
157
74
41
137
49
138
52
121
61
33
18
0
89
27
148
0
42
29
43
127
119
97
5
70
110
42
18
52
45
187
166
98
75
38
28
86
86
168
124
162
115
133
155
137
175
106
121
71
75
42
38
51
61
41
60
133
131
72
95
156
73
37
139
131
109
180
152
155
147
148
108
171
152
140
112
66
32
123
122
175
62
12
34
84
80
138
55
44
28
108
0
47
75
56
89
57
19
42
118
131
195
23
108
88
140
80
94
64
65
13
73
120
111
47
63
117
61
44
38
18
114
139
59
103
140
83
134
140
160
150
165
151
148
148
84
100
137
141
158
125
107
144
69
63
112
70
66
51
55
30
109
111
99
96
100
94
92
95
39
33
31
82
82
83
24
89
94
90
41
74
72
25
27
22
27
39
91
76
100
108
130
135
87
140
144
137
81
83
103
102
172
169
119
130
192
128
169
243
255
236
174
145
133
135
143
138
133
116
174
150
189
218
153
238
142
246
167
132
160
144
189
162
122
105
112
99
36
96
104
95
135
244
200
232
249
234
192
212
198
202
145
181
175
126
117
169
162
162
162
116
118
111
166
167
159
118
112
136
164
165
230
209
238
180
187
223
152
182
191
171
214
173
166
200
161
192
208
192
173
154
162
173
144
144
162
174
173
233
245
171
191
225
192
165
131
138
184
136
171
119
82
57
87
65
151
14
61
113
72
0
120
141
78
0
27
87
112
39
62
187
98
31
226
65
101
93
134
40
132
167
102
100
0
33
35
34
85
111
142
111
72
33
32
169
70
140
35
21
55
48
65
125
103
109
134
75
78
140
97
142
101
157
151
138
181
154
95
214
153
47
186
82
144
193
154
238
61
114
100
78
184
153
97
94
13
117
62
43
55
176
30
84
115
93
74
25
106
103
118
169
35
146
142
89
96
35
74
68
76
107
122
76
53
67
71
81
21
41
16
119
148
79
99
105
113
104
144
165
143
166
162
143
150
85
144
148
137
157
139
59
88
84
67
62
66
61
50
56
52
114
109
101
93
92
92
89
90
38
30
29
29
27
25
27
78
96
79
91
78
69
22
24
67
21
25
86
76
90
99
125
129
82
144
147
145
97
84
101
93
170
103
116
150
183
196
157
181
246
220
169
184
193
150
150
129
126
190
174
216
193
232
135
201
217
146
154
196
114
117
153
141
104
33
92
171
23
75
68
115
219
236
228
255
255
218
237
213
206
211
208
185
179
129
117
119
165
165
163
168
110
115
112
164
162
114
106
127
206
152
174
215
237
224
179
153
163
182
208
205
233
194
181
197
145
150
213
189
184
159
163
173
172
136
149
160
157
222
234
225
194
174
211
182
140
129
123
164
134
122
92
49
12
128
181
56
64
114
82
18
114
141
35
24
77
100
133
80
104
212
98
20
184
77
77
108
101
77
145
77
57
96
161
19
49
120
50
38
1
38
37
0
54
40
44
67
71
0
70
75
0
90
121
128
92
43
107
84
157
138
159
171
143
108
174
142
156
206
82
81
158
131
162
142
153
139
188
173
111
70
97
77
134
62
114
112
114
90
93
150
141
111
65
18
77
17
161
119
92
84
56
171
183
107
169
103
98
50
69
81
38
78
45
51
110
73
33
5
64
112
77
106
109
94
89
110
145
156
95
87
151
137
140
138
130
110
94
96
87
83
74
91
75
65
56
51
61
60
137
110
105
104
45
39
94
89
83
85
23
77
76
75
21
29
21
95
75
85
89
25
12
21
68
73
17
78
25
34
39
66
69
74
139
141
92
108
148
103
94
97
101
102
196
112
216
170
176
231
209
219
174
193
136
138
124
127
201
196
210
223
224
196
146
210
213
221
204
140
132
82
131
80
34
77
105
58
41
51
120
223
182
229
247
195
188
178
160
208
216
210
189
180
181
168
119
115
168
164
167
158
117
110
111
168
166
103
167
187
184
223
165
226
214
205
152
152
188
229
198
214
221
213
198
138
153
206
180
180
165
165
173
166
189
190
201
194
155
167
169
229
173
179
184
155
126
131
164
202
142
98
78
121
105
94
82
108
100
67
93
54
153
130
190
105
120
138
64
156
98
34
22
87
81
85
108
126
102
59
89
53
24
48
105
110
60
13
66
125
45
0
30
46
80
164
85
95
45
5
28
69
119
122
87
105
85
164
122
140
179
89
118
89
84
142
143
75
208
154
0
110
114
162
123
115
99
181
146
114
64
42
15
92
29
119
92
145
36
69
69
116
90
77
22
65
135
142
109
135
98
42
95
116
118
118
57
37
79
91
71
31
130
69
106
97
66
35
10
63
106
118
85
101
104
153
146
154
148
102
94
151
151
151
100
82
167
159
86
88
88
77
84
126
120
114
56
58
69
86
49
52
54
99
43
98
90
86
86
26
23
74
19
70
78
75
89
32
78
95
94
66
68
16
73
64
66
72
24
27
56
64
70
135
135
84
103
158
142
92
76
100
148
181
187
160
179
166
155
191
207
156
129
178
130
121
158
174
129
161
135
201
229
246
175
215
180
190
212
135
180
120
86
75
94
100
60
54
76
130
136
177
184
199
179
175
170
158
204
212
200
192
180
180
167
169
167
117
165
165
158
115
109
112
167
169
157
104
172
167
210
207
148
152
142
152
139
154
227
213
194
210
224
196
197
146
196
176
167
170
166
114
177
191
183
195
184
138
145
161
209
219
226
214
159
179
189
177
198
142
106
91
92
152
156
20
102
90
76
87
68
122
146
141
164
182
103
149
126
59
99
81
120
93
116
106
72
162
81
55
91
56
72
130
89
73
65
112
187
36
135
161
104
66
64
146
94
0
27
17
44
92
136
90
120
91
83
135
90
80
78
115
68
81
106
166
120
250
38
0
1
28
98
175
141
119
0
185
110
126
38
104
53
215
32
132
120
47
47
119
58
31
71
0
82
67
150
181
86
10
121
58
61
144
62
63
63
8
55
126
127
126
32
80
121
62
9
2
92
148
148
84
132
165
156
133
159
126
81
100
153
81
107
107
87
121
125
96
70
138
81
130
119
122
139
114
37
39
77
48
46
48
106
43
95
94
94
91
31
26
23
21
21
81
77
78
72
84
81
107
76
59
20
14
72
69
59
69
65
22
113
120
128
88
94
83
98
126
123
40
104
80
181
253
151
197
135
233
189
141
176
207
195
216
135
228
185
249
117
176
160
244
242
181
198
203
238
148
120
135
128
134
81
89
58
83
61
101
181
160
139
175
156
216
226
166
132
139
207
200
198
123
137
183
123
118
115
111
164
111
114
154
157
165
161
111
106
95
145
161
155
119
135
137
142
144
165
170
192
181
184
205
194
192
183
194
188
169
176
111
124
118
129
132
135
187
180
187
144
193
183
181
188
183
190
165
187
192
110
124
153
118
169
110
159
144
78
45
115
18
77
42
128
88
123
167
139
165
42
68
43
171
99
129
68
123
138
129
128
72
79
141
57
104
123
131
136
173
176
88
133
62
196
29
71
28
132
0
50
63
76
137
118
111
106
72
63
59
112
105
128
40
69
213
144
140
75
0
146
115
88
97
133
147
142
67
51
165
86
75
80
122
58
17
77
155
71
52
37
35
84
134
111
33
0
119
176
131
41
62
118
95
78
113
51
123
89
116
118
128
124
70
57
123
74
19
49
38
101
126
87
142
151
106
107
97
124
164
132
88
114
92
140
158
81
87
146
137
121
80
93
82
71
127
123
73
50
80
52
51
49
105
100
46
97
96
94
38
30
27
25
80
23
27
36
83
84
69
53
52
91
68
17
66
66
65
15
67
9
82
104
68
129
133
85
98
139
129
48
152
105
136
255
172
238
180
210
190
193
178
187
112
134
220
254
193
202
114
167
185
247
202
199
157
255
169
133
133
128
82
80
115
100
101
79
64
108
176
197
133
141
144
140
203
213
207
122
146
180
194
124
188
163
120
118
115
110
163
110
111
103
156
108
111
109
155
145
90
152
142
102
117
128
129
139
225
178
176
183
202
202
201
189
180
182
174
166
162
119
116
115
132
133
126
127
190
198
143
177
181
130
178
129
181
173
186
184
174
147
124
182
124
161
97
97
72
76
132
78
63
126
119
60
70
219
64
67
163
58
69
91
102
127
167
142
102
89
104
73
72
77
97
74
54
114
180
166
64
5
9
54
197
130
148
39
65
30
63
64
66
106
100
110
118
117
76
100
143
160
26
37
143
125
80
187
81
98
155
46
81
121
133
40
164
71
59
114
91
88
111
148
110
60
44
184
42
50
71
90
90
70
64
67
67
79
153
45
23
89
131
130
95
124
120
121
180
229
117
120
125
98
112
119
37
0
24
95
129
109
122
153
152
114
115
100
149
164
103
90
97
102
144
142
114
87
150
131
91
83
136
131
122
65
130
161
118
130
58
55
101
104
104
50
98
98
97
43
33
29
79
82
21
28
35
40
39
79
38
144
120
82
22
62
13
18
4
62
64
13
80
111
118
119
132
142
142
72
64
148
170
202
201
180
172
194
154
140
196
183
229
111
130
158
195
144
183
130
182
199
173
231
201
145
187
151
129
196
152
93
172
111
92
88
85
55
80
98
179
130
110
187
119
179
187
200
170
190
129
129
180
183
151
117
118
114
110
161
107
106
104
104
156
161
157
154
149
93
91
79
87
156
170
113
134
177
180
162
181
159
190
151
132
127
171
165
112
110
114
116
182
181
129
119
121
194
148
139
168
129
129
122
130
120
181
180
171
179
161
141
143
118
122
159
149
120
154
137
67
0
99
46
65
93
97
119
58
67
97
4
78
130
97
125
68
7
96
95
85
37
62
87
17
75
105
143
0
5
0
0
5
111
29
183
70
43
156
38
92
118
47
124
100
92
117
113
180
166
166
109
133
144
189
13
199
120
73
105
101
144
165
77
78
135
108
35
37
70
101
55
80
57
52
1
126
55
58
102
148
91
66
51
62
78
97
112
78
86
139
123
118
84
108
149
48
70
165
97
101
71
125
112
124
42
12
51
76
66
106
95
92
157
158
149
147
152
146
114
104
72
107
157
89
120
142
145
98
105
83
130
130
122
119
128
166
130
120
62
55
104
102
55
52
48
100
99
92
85
82
26
27
24
79
77
35
50
59
78
160
130
62
30
72
70
67
56
57
13
15
17
47
62
61
125
131
75
58
80
102
114
167
170
219
217
197
215
193
215
202
154
109
138
154
210
172
127
111
177
219
234
220
157
162
177
142
126
189
157
156
201
157
163
101
89
59
57
85
157
165
148
172
158
157
175
174
126
112
130
159
185
117
158
165
119
115
110
160
158
156
109
107
158
157
157
156
102
153
87
76
82
155
164
104
182
223
168
154
127
204
180
193
123
178
171
170
110
120
102
121
199
117
124
118
173
137
137
132
174
131
176
129
137
168
184
117
113
116
144
133
146
149
133
144
131
139
140
99
0
64
0
41
77
125
106
147
43
26
65
68
112
98
122
66
118
75
98
37
96
70
20
106
57
35
28
39
51
0
45
31
0
62
10
147
76
47
168
41
88
141
40
104
59
104
129
114
70
60
129
80
68
89
113
40
110
169
64
68
66
106
80
152
38
110
139
141
0
47
93
88
55
50
0
52
95
63
118
114
74
32
29
39
1
93
156
111
149
111
192
135
116
87
113
137
127
11
52
82
56
76
154
90
138
89
41
19
50
78
105
98
92
124
166
150
158
164
141
138
158
92
86
147
88
93
99
103
158
135
133
140
145
124
128
121
90
85
53
64
53
58
49
56
105
100
101
100
91
36
34
28
25
22
80
71
79
103
127
95
89
93
146
98
92
31
65
64
6
3
7
65
28
56
60
118
123
64
56
80
120
127
176
145
207
216
171
216
193
233
161
95
103
142
218
255
161
126
124
152
193
197
220
239
127
215
182
164
177
188
105
182
184
194
136
86
84
66
98
137
136
146
151
152
142
135
122
122
132
160
144
187
95
170
162
174
116
163
160
158
154
111
159
160
155
160
105
103
157
91
81
85
151
155
146
179
206
150
141
131
202
186
177
112
121
178
178
160
162
110
169
185
111
127
118
120
132
126
181
177
180
175
135
189
169
130
113
117
103
111
110
139
150
149
164
145
143
135
163
73
69
64
68
162
69
123
78
50
70
68
160
136
42
57
41
112
143
103
20
121
73
57
26
88
69
118
47
54
11
86
178
59
22
0
199
116
55
162
115
175
106
63
72
83
182
171
126
83
168
48
0
26
103
0
98
87
190
151
101
164
35
101
116
100
59
220
95
29
132
153
155
0
161
139
135
71
106
139
113
61
53
0
41
0
57
130
132
164
183
35
94
62
122
139
152
106
79
44
85
129
174
97
140
144
70
43
36
72
80
50
34
101
135
158
108
145
158
151
161
92
88
96
142
104
64
72
92
139
161
142
123
139
136
127
127
54
103
36
70
54
69
106
109
56
54
52
102
103
43
38
35
35
23
22
38
84
100
53
135
130
203
171
152
124
118
94
18
12
13
50
47
61
23
49
60
60
80
75
84
125
151
150
137
204
208
157
209
145
210
195
141
96
156
150
185
221
178
170
117
153
186
185
185
206
178
165
171
198
89
117
213
134
209
122
101
81
69
154
165
138
116
153
181
137
173
205
109
162
154
176
188
89
134
160
179
172
167
162
159
153
150
86
96
155
97
99
100
149
152
92
92
139
142
133
161
154
116
132
139
171
139
118
174
168
202
119
181
168
130
174
169
178
132
116
121
118
124
176
167
175
180
184
170
176
108
119
118
161
97
96
110
115
158
112
130
128
216
245
171
128
118
16
82
11
33
94
98
125
141
128
76
139
65
61
41
61
184
31
99
168
131
0
25
33
33
41
0
8
113
55
133
66
78
129
123
126
114
142
152
156
6
40
56
102
97
162
177
149
52
94
146
128
47
168
47
120
56
76
56
166
175
58
110
134
121
27
13
188
92
156
156
109
1
140
27
89
118
0
67
56
157
91
93
78
130
151
161
121
75
50
99
104
91
142
39
77
77
146
130
146
104
91
85
74
95
30
73
83
68
70
112
131
149
107
104
101
96
132
150
95
95
92
85
150
81
72
55
141
143
136
152
142
119
84
108
163
37
73
109
124
108
110
109
57
54
51
107
42
35
33
38
87
14
92
88
107
109
120
161
217
128
120
127
128
112
56
26
49
55
0
14
63
43
57
50
84
71
102
111
134
132
131
198
202
146
183
138
216
226
173
96
147
204
255
229
182
155
116
183
223
230
183
184
215
170
119
153
102
182
190
149
202
146
99
86
96
166
177
143
110
100
131
152
176
213
113
114
147
199
192
104
143
108
129
174
169
162
107
99
143
75
87
150
85
95
104
150
151
96
98
142
146
136
102
134
154
144
136
172
122
122
191
173
213
164
198
156
165
195
203
183
176
120
178
158
118
171
167
179
179
183
162
176
95
114
159
169
108
153
97
107
150
148
168
182
117
189
178
124
93
22
36
0
76
165
71
238
46
55
107
69
73
105
137
22
168
46
146
69
72
135
97
23
32
69
36
57
72
54
133
109
138
118
145
197
173
193
201
110
0
0
91
42
61
136
158
77
84
115
38
121
46
51
150
0
9
31
88
63
86
8
144
116
76
39
56
184
163
131
90
112
61
109
124
119
79
50
101
122
74
107
105
126
125
123
249
158
145
44
81
146
108
83
106
103
77
147
198
193
91
72
78
92
60
58
7
31
56
101
128
90
107
104
112
111
103
150
148
145
142
87
95
85
104
76
84
115
150
99
168
134
124
137
119
90
55
50
67
105
118
63
52
110
102
104
55
57
47
93
91
82
102
88
116
58
117
67
99
127
131
198
158
85
132
136
109
56
48
0
9
22
15
144
130
144
144
116
80
132
189
99
196
215
84
107
209
243
217
204
114
107
203
255
157
104
145
189
211
146
240
153
173
209
109
142
110
144
189
188
108
154
98
132
63
104
129
195
163
139
111
142
158
210
194
134
135
118
138
189
193
138
119
118
122
115
154
159
110
84
79
103
15
41
82
101
103
106
153
152
153
141
142
73
142
157
166
216
134
113
142
127
214
143
174
228
187
182
161
132
183
172
175
112
160
120
168
170
178
128
175
180
179
177
167
159
113
108
144
86
142
132
137
152
151
151
106
162
155
106
57
125
0
114
141
122
61
66
127
117
3
86
29
44
0
52
36
122
64
177
101
95
116
52
71
105
94
60
66
10
143
181
146
186
251
149
227
183
123
61
0
62
51
161
87
45
14
108
72
70
22
61
0
76
100
39
98
23
99
97
42
90
78
44
33
53
56
111
0
136
96
48
78
41
25
1
128
50
154
98
104
134
56
152
118
161
163
117
32
114
174
81
69
35
86
164
115
187
139
69
94
76
107
78
52
21
11
2
57
87
106
89
104
109
106
102
101
152
151
143
83
124
127
69
100
114
66
90
143
161
132
69
81
125
89
59
55
78
66
115
116
107
108
110
58
59
105
49
99
104
33
101
44
67
100
140
104
159
192
183
184
109
97
147
134
134
59
65
45
51
9
31
131
126
142
140
170
110
132
161
104
189
123
102
193
218
153
161
124
98
126
203
237
175
187
229
195
221
126
135
148
144
148
97
141
137
148
173
122
143
145
75
86
78
108
144
185
125
155
117
146
163
177
211
123
141
130
118
176
158
199
137
127
124
158
158
117
108
107
103
96
31
78
148
149
98
106
101
152
153
87
142
128
138
149
159
129
154
114
108
152
219
184
166
197
176
220
186
134
185
204
177
112
114
119
167
167
172
171
175
128
127
126
117
126
125
153
169
230
129
126
128
142
144
92
96
152
150
163
77
83
62
106
119
79
85
55
120
67
4
0
8
17
56
62
84
92
122
129
139
109
41
83
77
122
110
45
36
141
176
227
164
223
227
240
135
180
138
59
75
111
111
167
120
52
99
79
49
43
19
106
0
125
161
91
160
89
75
124
155
38
43
41
1
22
149
138
87
104
171
108
83
6
0
47
5
41
59
167
118
160
93
102
112
97
84
117
114
135
133
102
82
54
76
162
155
147
158
89
67
60
132
98
34
79
23
35
72
72
38
90
145
101
152
156
109
104
94
142
142
126
137
82
122
151
127
135
135
151
81
66
73
78
140
120
123
134
127
123
122
114
54
63
63
119
106
54
105
116
40
46
50
71
97
161
187
166
201
183
118
108
157
102
90
91
71
72
58
0
0
100
130
121
146
84
119
189
178
154
176
193
167
98
133
147
138
166
126
162
193
223
228
210
198
227
208
213
209
198
181
143
124
160
126
154
128
154
128
128
155
121
95
105
101
133
168
132
119
113
139
114
184
174
125
147
121
100
146
159
202
204
194
191
158
165
120
106
168
114
99
68
152
145
154
159
106
103
155
155
86
142
136
137
140
144
176
163
151
139
156
176
214
195
155
223
231
156
216
179
195
170
173
152
163
110
112
167
166
121
126
126
126
119
122
110
102
152
207
126
126
123
128
80
81
83
85
140
162
133
44
111
171
121
28
12
41
148
62
15
4
62
50
4
202
158
73
49
201
182
0
46
133
76
103
126
116
49
239
176
165
236
255
191
249
149
168
79
73
120
168
128
154
134
84
136
103
59
94
0
104
46
85
116
119
119
90
115
112
165
132
48
8
81
86
114
141
138
179
152
85
33
80
81
136
71
43
153
58
60
128
143
80
77
132
211
97
56
122
150
123
64
57
104
155
194
99
89
106
58
95
148
73
59
91
40
21
27
47
103
111
139
94
98
144
127
133
96
94
138
99
99
118
131
111
141
126
126
132
81
72
65
131
136
138
144
128
133
138
121
125
113
58
63
121
128
78
61
133
116
50
43
116
150
107
114
119
114
115
115
149
96
87
109
78
115
56
68
0
15
49
151
160
175
90
123
185
188
166
120
123
197
131
105
132
215
184
181
179
147
232
255
179
203
203
205
212
206
146
132
195
165
159
120
125
153
179
122
139
126
148
109
105
90
174
187
192
153
111
130
152
185
131
156
130
132
108
131
127
154
196
194
200
188
181
139
176
172
112
116
103
147
173
153
140
103
105
158
106
96
152
155
140
133
154
146
101
128
169
177
186
234
162
227
202
199
165
135
176
173
174
175
112
103
114
116
110
168
113
116
117
117
114
175
168
160
133
96
100
141
131
123
115
120
124
120
71
129
132
140
22
0
9
19
58
89
59
92
89
54
143
102
147
37
117
109
107
155
88
73
61
72
105
128
103
155
189
229
223
243
250
165
169
125
176
174
100
127
174
231
222
230
163
153
156
156
182
104
106
138
49
157
102
134
78
86
123
61
78
113
86
0
76
111
36
125
110
55
102
91
131
75
10
3
56
66
0
137
32
59
177
107
58
130
80
76
91
103
91
101
72
61
111
107
169
84
117
94
35
43
151
66
98
28
42
24
64
31
40
47
55
79
96
110
110
107
106
107
106
86
110
150
127
79
86
128
124
122
128
131
121
129
130
136
135
130
88
76
67
124
119
56
117
114
131
81
72
141
131
63
48
63
118
103
105
121
94
101
116
94
93
86
94
149
124
18
1
0
28
46
91
133
177
149
176
176
202
166
167
120
140
146
166
209
203
131
192
169
133
198
212
193
210
217
157
157
163
131
199
178
180
157
164
168
145
173
93
151
172
130
117
104
77
159
190
185
204
166
180
155
177
202
216
108
152
104
147
117
168
184
180
132
191
190
158
141
201
135
116
106
105
178
164
147
103
106
159
106
101
157
161
92
137
132
146
90
156
164
169
228
223
130
168
148
144
179
133
137
99
121
125
118
115
123
114
107
113
109
111
163
111
109
160
155
193
111
168
154
143
137
129
118
122
72
65
120
137
138
83
64
19
9
66
132
110
0
77
175
54
33
133
57
81
45
30
42
51
95
72
91
64
102
155
110
118
156
193
242
231
255
222
232
149
131
116
113
79
179
226
203
193
185
195
193
193
135
168
189
105
67
73
5
65
94
102
130
33
18
96
72
59
23
96
96
123
99
48
0
23
66
89
13
0
132
128
86
153
133
74
178
83
131
38
95
57
28
114
38
100
38
69
190
142
120
136
170
72
85
81
82
67
128
53
50
113
73
8
10
17
28
57
75
107
105
98
83
138
142
108
74
156
151
100
87
136
80
68
128
137
128
131
122
129
135
70
81
71
80
130
129
58
115
117
130
75
83
140
143
133
65
67
114
96
110
173
146
90
109
90
88
82
79
97
73
44
19
7
22
48
84
177
166
154
114
164
201
126
183
195
202
202
103
149
135
204
230
189
146
227
187
186
208
210
96
196
167
133
181
117
86
182
153
168
206
168
113
124
193
92
105
166
121
159
192
182
199
180
188
200
196
222
213
111
142
117
138
132
204
172
130
126
190
188
208
201
158
146
138
116
121
172
186
102
101
158
160
106
105
106
162
95
89
96
112
132
80
104
166
226
146
119
138
149
148
117
119
103
167
174
173
184
126
178
157
111
113
109
109
161
160
107
153
92
145
130
150
101
149
143
133
126
76
70
116
66
68
96
83
75
32
79
147
74
69
4
79
187
107
109
127
82
54
49
85
41
86
0
66
99
116
62
37
88
63
145
227
255
236
172
198
230
221
78
88
133
108
209
245
152
160
213
211
195
182
184
185
215
38
60
4
68
23
97
77
191
147
0
6
13
92
34
80
141
169
88
54
0
0
0
131
141
97
37
101
90
37
125
78
185
212
79
39
106
43
79
118
85
88
138
136
135
137
104
21
158
103
54
55
45
88
99
102
48
37
20
16
11
6
84
44
99
124
145
150
158
152
143
131
135
82
99
114
143
93
90
71
132
142
83
132
118
122
147
55
66
76
95
86
134
111
110
128
129
122
141
135
150
147
134
73
102
86
118
120
155
138
155
86
84
75
125
81
71
63
55
39
8
50
85
101
155
156
153
152
189
137
197
215
165
187
114
143
142
183
172
231
115
229
133
192
178
216
153
211
134
126
128
124
131
181
161
148
154
155
108
97
228
119
156
208
92
155
144
193
208
152
209
204
205
206
154
137
126
147
148
164
119
112
141
186
190
183
189
150
202
191
169
123
135
179
196
86
100
158
160
107
159
159
161
96
93
137
151
131
66
140
170
187
164
186
134
124
133
124
94
177
185
173
171
206
130
121
97
169
116
109
109
109
158
158
176
115
105
157
155
104
106
96
133
134
78
118
115
118
69
69
77
87
21
68
136
64
109
112
146
97
119
171
169
127
72
116
156
34
117
5
40
0
52
35
17
133
91
154
195
244
255
165
193
154
169
81
129
104
200
185
234
228
215
255
243
173
255
253
160
138
41
76
74
42
47
128
100
146
182
45
85
37
67
119
88
77
165
196
188
148
119
126
117
112
108
0
34
98
112
124
129
84
75
126
45
106
95
130
183
149
138
125
69
54
138
72
73
190
57
83
37
44
141
98
68
67
48
105
68
14
21
26
41
52
77
141
142
145
149
98
163
133
80
68
78
164
85
91
77
131
140
135
77
124
122
124
91
69
81
104
102
118
130
65
115
137
124
86
142
164
75
105
79
89
74
145
153
111
138
153
134
136
128
126
124
82
51
64
59
80
0
63
87
118
111
83
169
123
136
168
138
143
175
121
120
138
139
183
162
118
165
118
137
220
190
218
128
125
99
122
134
124
158
172
85
111
173
153
87
133
108
187
168
155
64
124
129
182
185
234
226
167
234
198
176
131
206
178
190
130
111
185
185
141
195
184
148
207
181
204
189
206
195
197
185
94
107
157
167
154
164
156
108
101
73
132
116
125
156
164
170
163
111
124
119
112
102
158
154
120
181
149
209
159
119
126
97
114
108
159
109
102
105
166
182
96
148
150
154
103
152
92
90
133
122
115
116
63
73
77
132
129
63
35
44
140
80
89
31
86
54
24
50
16
35
77
126
69
106
21
23
30
123
16
88
208
194
230
190
253
136
135
144
130
69
58
118
244
174
122
209
211
252
245
253
254
255
157
77
61
55
152
115
161
144
149
197
174
0
51
55
124
158
121
94
95
66
182
209
220
225
234
102
134
0
36
83
41
67
123
66
138
103
92
152
79
77
37
88
78
98
129
39
127
117
121
140
30
95
51
103
105
81
127
99
166
112
124
121
67
7
78
26
81
78
131
137
102
110
96
155
145
97
78
118
131
90
104
99
138
138
80
81
134
127
132
73
87
94
112
96
72
73
115
137
83
80
105
103
111
129
142
123
107
144
144
135
122
129
138
131
60
52
52
74
65
64
102
87
83
92
121
156
105
141
146
76
159
186
207
88
99
203
89
126
163
217
203
195
144
159
183
198
169
196
229
110
192
130
111
135
145
157
78
137
127
162
228
159
210
211
180
92
131
40
111
178
141
255
183
171
240
220
172
163
173
202
111
131
194
183
189
175
127
182
134
121
206
154
198
208
198
182
191
214
194
186
255
225
183
183
155
109
103
95
150
120
121
118
137
84
96
102
109
110
122
110
118
112
108
153
199
167
112
96
119
121
101
152
157
155
158
160
208
163
151
156
101
102
153
148
83
132
129
119
64
68
74
77
133
133
86
75
20
14
48
112
67
62
174
159
35
110
90
97
119
57
134
78
74
124
40
105
141
243
202
247
214
216
126
119
142
87
78
79
148
121
149
231
197
189
226
213
223
250
168
135
82
127
193
91
100
118
0
48
80
80
28
0
140
69
122
137
98
25
79
92
137
147
80
76
91
134
144
96
106
126
117
194
195
164
98
85
133
110
93
21
125
82
65
111
114
63
71
132
152
124
113
81
100
78
6
128
122
162
110
109
119
66
74
64
65
74
44
104
131
98
100
102
155
147
101
95
91
126
117
130
140
145
146
82
78
81
84
82
129
81
83
105
107
76
78
72
135
85
78
151
164
100
88
140
142
117
101
95
137
135
112
123
71
61
56
56
65
68
125
149
103
104
158
99
146
149
156
164
88
145
134
222
156
77
165
110
119
179
187
145
225
180
207
189
196
159
157
209
148
212
181
113
153
145
134
80
137
131
179
209
225
190
214
163
74
125
44
90
176
96
233
218
208
229
212
137
179
172
177
143
163
140
139
143
123
178
175
118
118
213
162
219
221
141
182
206
214
222
255
255
217
243
222
170
114
162
102
93
70
132
120
88
75
88
99
105
114
136
112
119
115
112
101
218
123
99
102
114
117
102
151
156
156
157
150
190
160
153
104
101
101
101
150
138
85
133
124
68
121
72
75
80
82
130
146
141
63
37
63
49
0
222
108
73
69
123
0
115
79
86
48
43
96
99
147
185
255
232
247
166
143
137
167
96
96
123
195
180
196
255
191
194
191
216
248
255
185
111
108
75
154
118
149
112
52
30
124
159
213
0
30
221
75
134
59
71
108
160
53
86
50
149
130
69
117
75
100
115
147
42
109
127
93
82
129
131
111
73
117
98
92
8
50
57
63
122
119
68
135
77
136
78
40
77
138
152
131
154
110
122
96
97
12
31
19
23
83
113
137
89
96
103
113
104
102
102
86
132
126
128
146
146
81
77
79
141
88
134
132
74
91
161
138
136
137
133
137
79
139
168
90
96
92
100
101
99
86
84
90
59
44
100
62
53
58
62
69
78
155
162
104
101
142
162
141
138
164
80
137
194
203
182
192
87
116
180
157
183
136
177
158
204
90
144
192
148
167
135
177
138
119
137
115
57
78
194
206
176
136
246
209
150
119
46
55
40
59
108
99
181
164
181
163
251
178
168
133
121
198
189
137
123
120
129
123
122
109
127
150
133
237
245
166
194
255
255
255
255
255
255
255
209
166
126
151
167
112
86
127
75
90
120
78
97
93
106
133
159
159
116
122
100
199
111
94
102
105
125
106
152
157
156
155
87
153
151
101
100
152
100
100
98
145
92
83
77
126
68
71
74
131
81
138
119
169
167
91
101
46
13
170
67
68
144
77
147
54
90
117
53
74
51
148
205
187
248
255
175
170
127
165
134
130
158
185
147
229
202
183
127
151
189
228
255
180
115
61
36
108
114
141
123
144
87
113
125
70
140
167
111
97
182
102
72
13
175
117
39
128
33
178
179
107
0
0
80
165
125
108
105
104
84
130
164
63
90
150
112
86
104
50
107
75
87
85
154
109
150
59
95
75
92
110
129
194
88
147
121
92
109
110
7
20
4
23
75
86
115
131
94
92
157
99
165
104
95
101
92
151
141
142
84
81
135
140
144
141
139
126
132
155
147
90
143
134
136
136
81
159
95
90
150
144
140
95
82
136
92
70
27
73
107
38
52
64
75
130
172
154
153
89
156
146
129
135
167
84
147
217
184
173
223
128
180
156
110
220
191
219
149
218
113
196
193
81
93
152
148
124
74
55
56
119
141
197
186
196
203
209
231
198
87
122
0
59
24
50
121
90
138
178
135
205
170
176
101
85
227
174
140
103
88
129
119
180
165
189
133
143
179
201
198
204
225
216
255
255
255
255
255
210
205
159
114
175
172
96
116
79
82
117
71
142
89
99
173
167
160
163
120
101
255
88
102
91
98
147
158
151
103
103
100
85
77
95
99
96
100
99
150
149
96
96
86
133
132
67
72
76
132
133
129
83
77
84
144
159
140
176
120
84
90
152
138
146
101
67
119
105
153
81
182
223
255
236
255
150
206
117
188
139
202
238
151
147
248
140
145
159
196
229
173
123
121
20
75
75
131
103
190
88
113
108
179
150
60
108
17
138
125
116
25
103
157
77
40
89
178
149
127
79
37
39
28
90
46
0
77
73
103
113
112
100
71
187
151
93
108
148
79
107
90
122
98
155
183
101
119
162
150
120
138
153
182
153
127
144
171
85
108
78
66
66
55
61
84
48
52
78
77
80
88
106
162
101
92
94
151
143
92
94
91
143
143
144
144
144
136
130
148
151
149
88
87
139
142
87
92
97
135
148
141
140
91
135
132
84
124
91
64
40
31
46
62
85
82
112
151
150
93
114
101
147
141
145
130
173
200
126
151
149
120
194
105
100
243
194
211
88
207
167
186
156
104
109
127
83
73
79
60
70
100
110
142
126
159
194
195
220
157
65
179
0
39
48
103
9
0
83
148
128
178
123
112
108
191
193
119
137
117
146
174
126
185
176
192
173
190
168
188
213
255
221
226
222
255
255
255
255
255
211
195
181
194
162
168
87
145
128
128
75
78
140
88
100
130
173
160
105
154
244
84
110
142
142
220
153
146
100
102
99
95
79
100
97
95
99
98
149
148
94
97
90
137
132
68
76
80
83
133
72
95
140
85
97
134
154
172
139
62
167
137
163
68
131
95
126
129
182
171
239
235
196
217
245
151
197
175
221
170
200
210
194
226
162
167
168
165
177
163
100
66
33
38
69
150
123
228
119
69
0
91
82
156
175
129
206
94
135
76
114
110
15
83
70
147
138
145
107
136
139
118
77
30
77
0
74
81
94
134
15
109
23
124
129
125
105
174
98
110
77
100
165
60
98
102
123
114
133
148
153
174
147
90
105
147
136
129
98
53
21
38
11
9
63
80
39
43
72
73
84
76
124
143
86
102
150
100
100
103
99
149
149
141
146
145
146
80
144
152
101
80
92
89
95
96
83
144
135
88
97
140
82
130
120
121
118
114
19
29
35
46
57
94
91
87
155
147
107
106
108
155
140
149
110
151
159
136
187
111
167
150
98
188
231
132
203
72
120
146
126
147
116
136
136
63
43
74
87
118
114
125
140
124
204
137
188
183
35
178
120
68
45
36
43
82
47
123
133
126
115
149
118
168
234
131
159
128
152
175
166
140
133
132
138
171
130
174
233
216
255
255
216
255
255
255
255
255
255
202
210
255
194
208
221
130
163
78
142
84
70
132
123
74
135
125
109
142
154
215
97
110
152
132
230
149
142
149
102
100
158
144
160
148
146
99
98
147
95
90
96
145
138
79
69
78
135
85
82
92
85
135
95
95
101
89
140
141
124
250
194
103
171
125
157
195
126
163
197
182
186
165
223
255
204
162
118
227
240
178
193
255
188
155
192
179
166
110
106
63
90
48
57
139
218
165
184
104
90
59
107
59
166
144
110
144
91
36
84
115
86
72
38
120
136
25
124
166
90
112
137
155
46
65
80
141
86
27
76
53
115
127
93
148
107
102
101
89
177
255
213
134
131
146
161
139
92
115
143
135
109
91
123
79
242
163
140
226
97
74
81
93
80
100
66
72
49
71
6
92
92
46
132
82
74
131
81
137
145
88
84
104
98
149
147
145
95
151
146
90
94
89
90
90
90
131
130
138
79
83
132
80
129
120
116
104
46
44
33
117
122
72
77
89
149
173
170
174
146
96
107
162
88
70
128
93
86
153
151
187
120
130
147
121
135
121
197
115
134
142
98
130
177
171
125
122
78
67
136
122
89
157
126
169
132
159
133
37
127
0
57
66
12
57
35
63
6
35
72
145
135
195
199
211
127
161
162
112
151
173
134
142
183
155
110
185
184
195
206
255
255
255
255
255
255
255
255
228
223
255
255
255
214
186
227
240
167
163
202
72
92
142
95
119
158
107
206
192
125
149
159
142
145
151
104
149
157
145
136
133
81
90
109
100
95
95
144
150
93
94
94
89
85
80
134
83
86
88
139
86
136
84
84
93
91
84
95
144
149
162
181
163
123
125
148
203
193
135
184
136
145
191
199
125
164
174
167
194
177
251
255
200
149
164
141
70
23
44
110
153
176
229
221
255
144
108
120
69
112
56
0
41
101
128
56
145
111
27
197
75
57
97
78
79
24
27
0
0
68
104
74
34
27
184
83
105
62
83
64
60
129
83
78
72
137
77
59
94
103
121
99
131
80
69
125
90
110
10
66
34
77
81
125
147
126
99
183
131
184
145
99
77
80
12
25
75
55
59
52
70
53
83
56
57
82
78
126
71
86
92
90
141
143
99
98
97
93
91
91
93
83
85
87
133
135
130
135
133
117
125
71
119
111
107
49
90
95
99
124
72
83
121
132
92
170
166
173
143
152
99
118
110
85
131
141
74
159
186
163
123
158
153
111
138
131
208
98
118
164
99
196
170
154
152
171
120
129
143
175
142
130
149
207
192
140
93
10
149
35
53
44
64
72
0
0
31
18
34
110
123
215
141
158
112
202
139
168
154
132
147
206
209
112
145
209
166
183
214
255
255
255
222
223
255
229
255
226
225
255
255
222
222
212
206
255
240
255
255
202
139
127
91
163
121
134
157
216
149
142
156
92
160
135
185
86
110
152
143
136
75
143
102
97
146
148
93
98
93
93
93
89
86
85
86
87
140
141
137
137
137
137
136
89
89
83
88
135
142
141
157
144
102
89
127
130
172
146
149
158
152
201
147
138
144
156
188
116
161
197
199
255
196
188
91
76
103
161
169
255
255
213
201
179
138
101
106
54
91
141
158
146
33
62
103
146
149
65
66
81
90
59
31
77
78
4
13
66
69
106
56
132
95
77
76
133
99
126
102
24
140
161
79
41
25
58
88
121
36
15
64
115
66
83
44
40
50
21
84
86
106
81
71
198
133
117
172
176
144
86
110
98
108
46
46
57
77
52
13
0
11
0
65
15
30
105
68
79
77
78
131
135
135
139
97
146
87
86
88
134
132
134
134
126
130
127
77
81
65
122
67
111
100
95
93
34
34
48
112
121
91
131
134
93
159
164
159
140
150
141
123
108
137
98
165
95
168
173
163
139
204
234
181
125
124
147
174
175
179
190
138
121
82
176
173
135
149
143
197
199
109
175
218
142
147
82
73
69
23
43
53
47
6
2
49
73
20
20
93
126
149
145
99
179
201
157
216
134
118
201
180
130
135
144
153
208
180
222
223
255
255
255
220
255
226
226
226
227
255
255
255
221
222
220
255
211
216
223
255
255
206
231
179
160
177
240
208
245
226
197
196
150
139
230
160
168
161
96
134
132
150
97
98
144
149
94
96
92
93
92
90
87
89
141
141
141
141
136
137
138
138
137
138
87
85
90
88
94
83
145
140
136
65
152
93
154
185
94
112
143
186
82
85
151
170
155
129
151
193
225
251
188
199
179
156
209
202
255
255
255
254
231
187
116
81
65
0
120
84
130
186
155
180
164
145
153
116
54
15
184
64
22
17
117
24
118
58
16
62
56
94
134
0
82
135
183
70
78
171
182
102
75
75
40
63
116
167
97
91
63
111
67
110
52
121
139
77
167
144
123
66
42
136
62
121
173
148
147
74
89
80
46
52
61
30
67
40
28
60
10
0
59
55
0
27
43
57
61
64
83
83
130
123
131
135
92
85
129
123
82
84
130
127
67
122
119
77
77
71
68
62
103
99
83
79
29
42
49
119
136
147
147
148
145
164
148
146
125
135
183
87
137
83
159
122
162
165
163
198
181
243
113
201
194
148
194
160
146
203
165
164
152
186
164
156
102
95
156
255
181
170
156
137
152
108
106
118
0
28
63
5
4
18
54
0
62
74
120
105
110
99
200
222
214
237
182
169
159
180
220
120
173
191
167
225
240
216
226
229
255
255
255
255
218
221
255
255
255
255
255
223
225
225
223
229
221
255
255
255
255
255
224
211
255
255
229
216
255
255
255
249
255
255
166
197
182
148
126
145
158
148
157
144
149
146
147
144
92
91
89
87
89
141
141
140
139
135
137
87
86
83
86
84
83
89
141
132
75
80
92
86
67
83
127
143
128
92
87
103
72
58
71
142
101
74
146
211
247
254
225
255
152
176
255
255
204
249
250
255
235
199
168
94
21
7
21
19
34
0
8
93
162
206
148
139
58
149
37
91
66
38
17
145
136
85
8
82
47
23
52
57
100
21
116
86
86
98
130
119
105
103
97
62
49
85
141
114
120
44
89
86
79
134
149
143
81
169
134
84
65
65
131
128
99
203
110
109
73
63
61
40
73
76
53
66
116
55
57
2
6
57
58
12
13
62
9
36
49
114
125
127
129
130
79
132
129
128
69
82
81
75
77
77
124
107
108
113
112
61
62
106
50
27
21
32
43
51
68
74
97
153
146
137
159
148
157
113
129
116
83
157
93
152
139
122
181
121
199
125
180
123
215
176
129
160
190
172
168
205
182
169
181
111
107
78
126
231
240
197
142
134
158
190
166
151
129
53
73
22
11
7
7
1
0
57
0
96
88
104
143
171
208
164
184
200
174
198
238
182
204
211
175
169
169
244
255
227
229
223
219
255
255
214
217
255
223
255
255
227
228
228
229
226
229
255
255
255
227
229
229
229
255
255
214
219
229
229
221
255
255
255
224
210
185
229
186
176
155
161
144
150
146
151
92
145
143
143
91
89
89
140
141
88
139
139
135
138
139
138
82
85
82
80
133
134
133
75
73
86
87
72
68
124
124
98
69
65
75
46
104
74
84
79
139
161
138
189
249
255
218
255
224
213
114
103
142
203
208
216
166
158
7
0
6
0
117
2
15
28
126
110
75
158
174
123
127
94
37
113
151
67
71
94
32
135
119
107
87
107
17
49
14
88
79
82
109
25
61
100
112
15
97
185
164
77
58
137
132
39
56
105
125
123
135
86
148
149
105
57
67
106
191
25
64
162
103
64
164
158
125
41
79
109
153
157
109
68
39
77
74
87
9
2
48
43
3
7
63
75
82
55
72
72
123
124
73
72
57
50
58
60
97
90
100
98
54
58
62
118
107
49
96
84
84
113
112
68
93
74
74
84
87
132
147
142
179
142
178
156
109
123
124
175
193
104
172
186
177
162
229
195
135
116
154
221
197
186
123
94
129
124
112
164
179
237
255
240
215
118
127
194
196
186
84
90
0
51
21
62
62
75
65
37
71
87
99
70
61
103
146
207
211
239
107
198
243
200
238
239
226
182
219
223
255
255
223
226
222
222
255
255
218
218
255
219
224
255
255
255
218
225
222
255
229
229
228
224
255
255
255
255
225
229
229
255
255
229
229
229
255
229
226
225
255
207
255
169
192
168
94
149
153
89
142
143
142
90
90
142
142
142
142
142
141
137
140
138
136
130
128
133
88
83
83
72
72
75
84
126
142
61
131
122
63
67
60
107
61
43
86
128
135
130
132
118
164
254
255
255
240
184
155
105
73
132
116
171
172
137
125
53
0
38
131
86
198
47
56
56
117
102
160
213
77
94
118
67
106
96
162
0
7
58
32
0
88
72
139
31
121
131
66
54
99
102
48
111
187
30
9
127
186
93
78
134
110
149
90
71
95
207
255
149
179
66
123
181
183
82
100
155
23
103
188
149
139
182
155
54
18
131
176
144
119
170
58
35
101
107
47
5
0
54
43
12
0
58
42
50
56
51
52
120
67
65
65
61
65
62
54
68
110
101
102
50
53
98
85
95
38
100
91
93
108
133
130
99
75
73
91
66
128
121
147
141
187
158
181
160
97
120
184
170
183
172
147
153
154
186
92
140
142
174
187
212
157
125
147
146
143
147
192
252
255
255
185
182
192
191
191
185
167
68
147
55
53
57
58
86
67
63
47
128
112
72
16
84
85
199
198
174
188
158
201
152
213
255
183
166
195
255
255
255
219
223
229
223
255
255
255
219
209
255
209
255
255
255
255
255
255
255
255
255
228
228
229
255
255
255
229
229
255
255
229
228
228
255
255
228
229
229
228
255
255
255
195
236
217
105
132
201
92
148
142
140
142
92
142
137
139
140
88
86
138
87
138
135
128
133
84
82
82
84
69
76
86
81
128
130
73
72
127
53
73
59
113
58
57
112
124
125
67
77
143
150
216
255
255
190
196
172
189
142
94
145
157
128
44
95
72
119
103
8
36
52
23
40
26
141
57
160
165
123
74
86
103
146
118
194
47
115
74
14
44
141
85
60
111
47
0
35
0
73
93
107
161
183
0
15
74
194
12
36
133
43
17
79
12
117
189
158
127
125
85
141
173
166
89
120
124
94
16
223
116
162
135
161
53
105
90
172
187
180
151
32
62
98
94
21
35
37
87
86
52
67
4
48
40
0
39
90
99
104
58
133
70
64
115
64
63
116
71
73
63
105
102
100
59
105
68
31
90
112
116
118
148
141
86
93
92
58
132
148
140
111
190
92
155
189
201
104
141
180
137
196
200
166
166
160
237
139
155
176
166
140
165
166
152
189
204
202
220
255
200
209
245
213
177
133
131
167
78
125
38
68
85
98
72
62
66
45
87
82
64
20
67
117
204
200
144
72
190
156
185
248
206
215
185
185
249
249
214
222
255
255
226
229
225
220
212
255
218
209
255
255
224
255
255
255
255
255
255
255
228
229
229
255
255
229
255
255
255
229
228
228
227
226
255
229
229
226
255
255
255
255
219
209
201
92
134
152
134
95
144
142
92
91
136
138
138
87
86
84
87
86
135
130
131
81
133
134
135
80
78
129
66
70
124
71
70
71
57
63
51
103
106
69
52
48
56
72
74
129
158
173
238
222
186
251
212
173
150
91
81
148
136
80
57
18
0
0
11
44
60
73
36
0
122
85
80
142
96
38
76
124
113
142
20
90
115
19
10
0
124
78
115
59
87
0
34
22
3
54
140
140
109
13
99
18
191
90
73
110
102
159
71
32
106
140
145
85
168
162
171
158
71
57
95
64
124
52
153
109
141
151
68
71
20
35
160
134
112
135
58
77
100
101
83
50
73
130
99
73
68
11
11
11
14
5
57
15
78
36
109
71
69
70
61
61
56
108
105
86
91
89
94
50
95
98
31
25
49
125
127
142
138
80
98
79
70
119
136
162
71
179
137
203
208
201
134
153
169
149
173
207
151
243
205
176
129
144
147
216
187
142
129
207
141
188
255
224
216
186
255
255
198
194
128
123
164
121
114
58
63
96
72
54
74
20
0
32
60
102
100
103
168
219
167
127
166
166
102
186
151
189
229
209
248
255
226
195
247
255
255
255
228
225
223
255
255
202
217
255
255
229
229
255
255
255
228
255
255
255
255
229
229
229
229
229
255
229
229
255
228
226
224
255
227
227
255
255
255
215
255
216
217
216
131
128
145
78
95
93
143
144
91
137
136
136
136
137
136
86
85
135
132
130
78
133
134
132
129
131
126
124
69
69
70
65
60
125
54
94
43
62
44
52
58
115
125
68
119
129
136
151
211
158
215
186
165
131
85
69
128
94
118
62
15
0
57
35
105
70
95
84
43
53
97
86
123
117
114
103
95
99
116
50
139
123
25
43
12
6
44
172
50
105
0
22
34
43
58
141
143
139
114
214
23
76
89
33
65
75
137
37
62
173
96
166
85
158
106
108
86
58
39
111
66
127
39
171
94
193
70
41
127
44
49
208
75
74
92
47
62
90
96
112
35
112
151
98
20
9
13
27
66
72
2
3
6
4
59
69
47
50
63
58
59
102
87
82
71
76
71
20
24
17
81
97
42
38
78
134
132
127
126
130
61
84
118
99
125
100
155
122
171
206
192
169
119
219
148
144
163
159
236
172
187
219
244
154
164
205
184
188
217
169
191
210
214
255
247
255
209
207
171
180
163
113
61
65
144
61
52
40
4
80
13
0
44
18
54
115
99
183
179
200
159
190
104
197
223
130
183
195
225
247
213
173
232
255
255
255
255
223
221
223
255
221
188
255
255
191
255
255
255
255
229
229
229
255
255
255
229
229
229
229
229
229
229
229
255
255
226
255
255
225
227
222
255
255
225
255
247
207
180
218
147
106
84
88
140
141
141
139
86
135
134
134
136
134
136
83
134
80
130
128
81
133
131
129
132
128
131
125
121
119
57
51
97
96
101
37
31
33
65
128
72
68
68
69
122
146
151
202
142
130
88
73
117
44
33
25
70
255
131
48
92
162
92
86
93
146
151
108
83
57
124
93
145
30
24
83
24
39
48
53
64
93
81
19
10
0
126
125
110
103
17
54
116
104
119
112
123
153
124
130
154
75
16
72
84
138
38
141
125
119
123
152
118
47
81
87
43
34
68
186
140
75
23
42
103
106
74
100
69
74
108
95
137
82
35
104
76
81
102
27
132
111
72
33
77
114
126
89
79
29
26
17
25
78
65
61
58
60
17
32
104
51
45
36
66
60
56
10
13
76
83
93
113
45
105
131
75
70
134
92
72
79
143
107
126
152
127
141
167
192
255
203
149
171
186
194
173
219
234
214
244
224
185
200
191
155
178
185
199
220
255
255
255
255
178
201
251
177
169
69
67
92
93
71
39
62
72
4
4
0
0
0
17
0
132
116
122
211
183
247
232
192
169
199
218
175
203
211
229
119
226
244
255
255
255
255
224
224
255
224
218
217
255
222
227
255
255
255
229
229
229
229
255
229
229
229
229
229
229
229
229
255
255
255
255
255
225
225
227
228
225
220
255
215
221
249
214
211
237
219
187
133
142
143
88
134
132
82
132
131
130
78
76
76
75
73
73
77
127
126
73
124
124
70
123
121
117
113
114
51
51
44
92
92
85
40
94
101
46
49
66
60
61
65
112
57
80
196
131
123
39
34
12
0
0
27
78
0
169
94
14
62
64
129
116
74
58
25
26
90
25
86
77
55
123
79
48
62
31
81
93
137
88
40
0
77
106
70
0
41
51
88
114
149
33
141
200
92
134
169
146
31
16
68
104
94
134
102
110
85
108
152
65
104
79
8
118
119
160
140
88
13
11
32
54
73
50
136
126
77
78
126
140
109
52
115
154
100
68
152
123
138
67
82
113
60
44
68
65
67
79
47
94
81
74
78
9
0
72
82
32
76
53
53
0
0
6
11
5
93
103
108
65
111
128
121
58
80
124
80
69
139
51
147
136
51
190
122
144
167
137
118
201
193
135
205
227
226
230
243
209
165
173
198
167
189
194
199
255
255
211
215
220
202
254
255
188
192
99
118
127
118
69
54
41
46
43
52
51
0
37
28
79
93
103
109
173
198
225
245
194
238
167
184
215
164
150
171
174
229
222
228
229
229
228
224
255
255
215
225
228
227
227
226
224
255
255
255
255
229
229
255
255
229
229
229
229
229
229
229
255
255
255
255
255
255
255
229
228
227
226
255
213
218
248
210
193
255
227
255
153
160
105
141
130
131
77
77
76
74
72
74
72
70
68
68
75
73
67
66
67
63
120
121
122
112
111
116
45
45
45
80
66
65
38
77
92
47
49
59
56
115
125
134
138
92
126
110
122
65
37
9
0
12
15
131
70
85
82
138
156
108
116
101
43
53
132
66
149
48
68
86
126
175
95
122
102
99
88
76
108
64
85
29
113
0
26
20
53
43
120
103
210
117
103
138
72
69
134
126
48
136
201
105
115
101
134
84
98
173
165
62
69
43
45
148
9
152
170
107
0
2
9
160
141
108
97
29
96
46
102
122
107
102
51
170
123
54
230
134
175
68
68
120
109
60
74
80
35
53
107
84
106
80
83
67
17
17
64
76
76
54
50
1
1
5
64
73
103
108
118
131
109
116
122
64
31
115
117
87
68
133
50
183
95
194
127
206
152
101
164
122
221
181
187
156
201
236
223
239
215
235
181
211
205
213
255
255
218
211
215
205
229
255
207
190
249
159
104
46
99
95
23
0
48
50
0
0
6
29
98
86
96
119
199
179
154
170
217
188
216
230
217
164
185
169
157
255
255
229
229
225
223
225
222
255
220
210
255
255
229
229
229
220
216
255
255
255
229
229
255
255
255
229
229
229
229
229
255
255
255
255
255
255
255
255
229
255
229
229
255
255
255
255
229
214
255
250
227
152
176
117
141
128
80
73
74
74
123
120
124
70
67
65
117
125
72
62
60
63
76
73
118
110
112
113
120
91
36
54
52
39
83
97
103
48
39
39
47
116
126
125
127
81
137
140
80
130
95
67
58
42
103
106
139
204
114
126
97
59
39
56
63
41
69
73
85
53
73
60
158
131
81
119
132
32
55
56
41
37
100
89
46
45
77
0
138
35
7
59
104
161
150
64
111
111
42
145
145
148
158
175
110
81
66
37
110
139
132
76
33
96
0
36
117
85
102
157
173
30
69
35
108
138
113
156
89
145
88
99
112
145
136
134
104
111
33
164
125
194
55
68
49
64
55
92
104
110
78
47
101
91
84
88
20
19
63
66
63
62
49
47
0
0
8
13
67
101
126
119
125
80
70
135
127
70
123
123
111
103
119
81
117
162
124
236
136
192
92
208
115
184
201
173
210
233
227
173
255
250
179
200
201
209
255
255
255
214
210
225
212
209
214
207
238
184
172
140
85
69
63
103
77
25
0
4
0
36
67
144
75
63
70
151
219
157
200
194
218
193
172
165
155
155
158
246
251
255
255
255
224
229
221
255
229
208
217
255
255
228
219
228
228
228
255
255
255
229
229
255
255
255
255
255
255
229
229
255
255
255
255
255
255
255
255
255
255
229
222
255
255
255
255
229
213
248
249
203
236
202
165
100
86
97
70
54
71
73
125
114
66
109
117
117
111
56
55
70
122
67
66
69
59
55
109
101
104
104
98
51
54
84
73
34
28
82
88
107
64
65
107
106
57
67
108
53
96
50
75
86
66
98
81
141
145
76
60
22
14
30
0
70
12
69
62
107
5
128
45
157
122
76
123
127
33
93
45
58
54
122
41
45
47
88
61
101
96
123
104
112
132
129
162
141
135
86
66
118
136
160
85
113
96
29
84
157
147
30
70
79
61
0
48
67
70
64
114
156
91
73
56
2
24
118
124
177
105
99
119
129
84
71
144
98
116
53
95
9
188
87
50
29
64
66
108
86
105
98
48
38
27
47
30
57
25
20
22
18
15
2
0
0
0
2
6
77
85
84
50
58
69
67
130
127
97
113
120
139
113
76
155
73
212
180
172
190
230
187
127
157
112
206
152
171
105
201
189
246
255
171
255
255
255
215
255
239
255
217
200
255
255
212
195
196
174
178
158
116
97
86
73
78
72
23
15
31
25
137
64
78
113
133
92
216
205
181
206
178
200
165
150
160
159
137
214
238
255
255
255
255
229
217
255
204
167
255
215
145
229
228
228
255
255
255
228
229
229
229
255
255
229
255
255
255
229
229
255
255
255
255
255
229
255
255
229
226
225
255
222
216
221
217
218
255
255
199
217
239
204
165
182
95
92
129
64
60
68
168
106
111
110
113
62
48
48
52
115
64
69
71
72
65
55
110
52
55
111
115
97
42
33
87
87
45
112
67
134
123
115
97
106
62
62
46
42
31
0
0
0
81
68
130
130
103
53
8
3
0
71
49
115
41
48
89
72
63
125
124
126
34
63
31
57
34
135
63
39
39
0
75
114
68
84
58
94
114
128
74
101
169
106
171
149
136
83
78
124
89
56
64
114
95
128
173
87
5
51
90
59
69
59
75
56
119
83
118
123
83
107
172
166
37
88
104
46
96
85
117
73
175
54
105
97
77
92
108
23
78
114
153
56
85
56
99
55
65
91
88
46
63
99
49
64
14
16
9
10
9
9
3
0
0
6
12
30
106
102
46
59
114
58
112
115
125
114
108
105
148
104
77
227
151
179
188
188
193
195
198
115
127
130
152
178
141
181
135
228
235
234
250
255
213
213
217
255
255
179
222
255
255
247
251
196
204
180
159
145
117
106
81
79
90
61
36
82
88
28
73
149
131
137
119
131
169
171
144
177
180
199
143
153
137
192
179
229
255
255
255
227
226
255
210
149
243
255
229
229
192
221
229
255
255
255
229
255
255
229
255
229
255
255
229
229
229
229
255
255
255
255
255
229
255
255
255
228
221
255
221
224
216
215
222
255
255
229
255
213
170
177
198
222
120
139
64
61
106
106
109
104
109
51
50
39
43
109
104
56
60
115
110
49
103
103
49
106
108
101
31
32
41
84
82
82
87
41
110
106
111
110
100
46
49
24
16
4
0
0
7
31
141
92
64
0
54
0
61
143
73
60
70
65
79
66
65
159
150
190
34
129
152
7
96
85
104
112
73
1
4
95
122
99
84
28
37
91
108
89
96
112
185
183
108
122
162
55
38
128
45
16
167
96
129
139
44
54
106
170
75
54
61
34
19
113
88
146
144
167
130
122
185
112
127
76
100
89
57
127
132
109
97
95
81
84
62
142
27
83
108
95
62
98
46
113
32
56
134
138
86
86
95
98
42
3
14
1
3
3
64
7
3
0
7
11
71
94
95
89
61
105
47
102
105
104
121
127
109
125
171
126
147
188
96
212
159
133
144
137
145
122
175
140
145
211
129
134
173
231
236
242
255
255
255
210
211
203
167
233
251
255
236
255
252
255
191
167
138
86
87
149
60
53
57
62
47
53
91
98
101
171
211
190
214
155
233
151
180
185
188
139
149
115
180
188
198
219
229
255
255
227
255
212
167
255
255
255
255
255
255
255
229
229
255
229
229
255
255
255
255
255
229
229
229
229
229
255
255
255
255
229
229
229
229
255
229
224
255
226
217
224
203
215
239
253
255
255
236
182
158
193
188
171
143
63
51
73
127
122
106
104
96
41
44
48
110
100
102
110
114
109
104
105
101
101
105
99
38
34
91
48
33
37
36
89
92
52
107
103
96
100
103
86
11
4
45
50
15
7
74
129
47
13
0
41
75
83
97
89
71
181
137
77
95
147
129
141
106
110
79
100
46
165
52
97
50
129
4
32
1
113
147
177
83
67
67
56
91
92
65
108
134
81
151
128
197
35
131
104
7
127
90
47
18
84
135
158
153
148
90
65
33
86
108
60
149
151
164
111
70
135
161
142
62
155
141
152
134
135
166
58
96
78
77
37
87
134
132
61
138
103
120
50
107
79
78
111
133
102
112
60
54
30
46
75
3
0
0
53
8
3
47
55
8
67
90
109
82
48
89
93
95
97
87
55
119
81
75
160
147
200
122
102
138
130
75
149
168
111
141
134
152
163
151
158
240
157
219
247
234
253
212
209
213
255
255
195
171
211
242
255
253
255
239
255
239
162
133
117
98
89
90
78
49
74
95
140
74
115
113
82
209
228
200
205
230
146
118
117
110
145
144
85
161
183
215
255
255
255
255
228
253
255
255
223
228
255
255
255
229
229
255
255
229
229
229
229
255
255
255
255
255
229
229
229
229
229
255
255
229
229
229
229
255
255
255
255
255
205
224
188
197
235
245
252
254
255
248
191
202
220
160
178
141
60
97
44
64
94
104
90
39
98
106
104
98
98
115
119
65
65
56
103
104
100
90
30
82
82
37
31
24
86
40
39
40
49
98
90
85
84
67
0
46
40
9
4
43
86
97
58
0
21
24
0
28
82
83
80
112
123
111
96
99
121
133
104
23
31
110
65
76
53
30
27
82
60
14
0
148
61
155
22
93
84
133
88
112
50
79
153
69
124
137
126
57
64
143
65
73
134
28
0
138
128
164
102
103
152
108
57
75
98
131
170
183
147
115
129
99
74
135
138
104
218
100
99
50
143
6
80
107
96
35
126
202
119
106
167
64
160
89
131
128
71
57
113
65
60
48
69
88
70
59
88
71
3
0
57
54
50
63
69
35
109
108
84
34
80
98
90
91
49
40
97
129
102
157
186
157
166
127
97
144
121
139
255
200
212
183
107
250
220
149
173
211
231
219
246
255
252
255
214
211
255
255
208
160
201
255
251
255
236
252
238
224
137
115
96
74
74
134
147
96
147
122
154
132
90
97
202
208
197
125
133
120
143
162
156
95
151
98
160
255
255
255
255
229
255
222
255
255
255
228
228
255
255
255
229
229
255
255
229
229
255
255
255
255
255
255
229
229
229
229
229
229
229
255
255
229
229
255
255
223
255
255
255
211
202
191
193
191
198
223
203
189
255
206
207
186
171
149
195
122
106
63
36
18
104
85
99
101
112
47
49
46
70
67
67
66
54
51
102
34
28
89
92
34
33
37
28
88
39
35
32
28
29
77
61
55
52
43
44
0
3
5
0
77
0
89
90
113
34
0
69
96
112
142
93
103
140
160
152
95
59
49
62
85
140
106
85
49
25
38
34
152
36
53
31
42
136
97
142
87
71
82
119
43
102
51
12
53
33
0
41
53
58
53
51
146
94
29
110
127
146
170
110
130
45
71
96
93
69
93
112
116
149
133
137
138
94
233
170
167
91
135
88
85
63
110
85
130
131
175
134
121
116
105
35
123
62
138
154
141
64
78
86
101
170
109
89
92
105
131
105
80
8
52
52
56
24
31
52
89
99
49
30
30
58
37
36
67
43
44
55
164
104
189
204
136
188
186
136
139
116
127
239
217
215
255
234
217
185
136
224
163
221
239
251
255
255
255
213
255
255
246
187
248
243
254
252
249
239
221
139
145
123
94
93
152
157
60
88
184
89
135
145
179
52
145
210
185
196
102
211
150
165
158
169
162
176
227
255
221
255
255
229
228
255
228
224
255
255
229
255
255
255
229
229
229
255
229
255
255
229
229
255
255
229
229
229
229
255
229
229
229
255
255
255
255
229
229
215
255
255
255
255
175
202
253
247
146
193
151
196
217
186
151
114
196
154
110
160
149
225
112
77
44
0
5
105
66
47
56
51
73
63
59
58
47
47
98
21
21
27
38
29
19
24
32
27
18
13
15
11
4
48
50
50
46
43
0
0
0
46
0
60
103
49
50
55
126
0
34
112
77
75
83
140
138
144
39
140
105
0
122
84
0
125
123
35
5
0
45
13
152
125
0
67
186
36
62
92
26
69
107
43
101
106
31
117
0
78
62
75
79
33
48
100
115
40
28
106
136
82
77
122
30
45
63
114
126
100
155
65
83
147
109
121
47
121
95
76
86
74
155
88
150
137
55
19
245
193
58
119
118
72
25
121
151
144
130
138
59
83
169
191
179
128
101
97
163
112
73
73
52
50
55
71
15
14
12
31
92
101
114
55
45
57
50
50
114
56
73
153
136
58
132
202
168
140
121
84
200
144
190
144
174
176
148
209
171
133
188
171
226
239
188
208
205
200
187
255
255
255
202
204
255
239
255
253
233
168
171
193
188
82
162
104
68
16
163
104
123
144
99
67
96
128
248
237
194
176
196
107
82
159
203
210
229
215
204
224
255
255
228
229
255
255
228
255
255
255
255
255
255
255
229
229
255
229
229
229
229
229
255
229
229
229
229
229
228
227
229
229
255
255
255
255
223
215
228
255
229
177
233
111
101
168
55
54
50
47
131
167
123
175
207
207
89
106
87
74
79
181
97
31
1
67
61
75
41
66
34
116
75
52
43
48
54
32
9
24
76
23
8
15
16
13
1
5
2
49
40
0
0
50
53
44
44
44
47
56
52
0
0
59
62
11
34
90
22
26
90
92
114
72
108
86
19
115
183
102
82
138
63
38
154
39
55
27
91
42
45
106
105
79
91
132
35
41
111
64
77
122
80
69
31
78
97
105
0
60
103
69
122
61
43
190
38
51
29
86
96
32
54
81
86
61
96
113
101
159
154
219
174
179
230
98
46
52
98
136
207
123
148
120
99
103
56
63
34
59
134
131
101
93
43
111
130
86
116
50
97
153
128
112
161
97
104
92
127
34
67
59
56
63
28
91
31
32
39
92
98
50
38
16
38
42
42
97
54
48
151
151
125
132
78
85
80
124
142
187
60
112
153
173
139
165
215
160
178
155
194
160
167
241
249
255
202
201
252
237
250
255
255
255
255
255
210
184
173
138
170
175
170
152
117
59
99
123
97
196
127
67
75
121
131
113
185
241
134
132
65
122
198
131
128
208
255
255
255
255
255
255
229
255
255
229
255
255
255
255
255
255
255
229
229
229
255
255
229
229
229
255
255
229
229
229
229
255
255
255
226
226
255
255
217
211
255
216
226
224
182
112
60
130
102
104
67
38
104
18
47
58
98
164
136
106
83
89
187
109
134
13
50
96
255
170
140
72
115
144
82
70
79
81
60
42
0
65
30
31
61
58
32
39
38
37
40
39
41
39
0
0
46
0
0
48
47
50
47
49
53
1
0
55
100
104
92
155
77
137
6
130
97
80
112
107
137
101
121
33
7
0
173
49
80
78
60
115
58
70
32
46
148
3
83
93
116
129
108
109
116
120
98
25
81
93
15
55
81
83
93
105
131
65
129
106
87
52
62
90
46
102
104
51
73
100
15
14
54
85
74
150
20
102
149
67
16
139
107
186
151
88
53
146
101
53
112
126
76
93
93
73
54
97
68
116
99
129
56
170
186
191
193
193
176
157
160
129
30
61
61
64
71
25
71
3
7
39
91
75
66
29
48
36
30
86
87
99
105
108
100
88
129
122
138
121
73
103
165
143
112
175
183
149
172
174
180
133
167
157
178
163
212
252
248
197
186
174
240
201
255
255
255
244
210
186
163
183
209
188
116
117
164
84
73
58
85
97
167
88
97
108
91
131
117
133
211
148
117
80
94
255
199
118
178
215
229
227
255
255
255
255
255
229
229
228
255
255
255
255
255
255
255
229
229
255
255
229
229
255
255
255
229
229
229
255
255
229
255
224
227
255
255
212
201
212
255
238
232
116
173
28
22
110
81
92
39
43
31
24
60
62
79
114
142
93
88
153
159
112
157
64
32
196
216
148
103
20
25
111
84
71
80
78
33
58
60
0
33
47
39
45
41
45
44
39
0
0
46
0
0
0
0
0
47
44
48
51
53
60
57
54
36
13
92
116
132
122
114
47
113
66
95
121
158
114
126
106
0
22
68
54
61
119
90
90
124
126
64
66
62
149
126
18
24
84
44
68
91
114
110
64
35
16
47
37
108
77
71
84
91
108
165
73
158
138
126
67
76
109
114
106
107
57
98
36
62
88
74
109
120
96
50
125
105
75
126
105
177
90
113
89
86
89
55
61
86
62
124
155
98
48
96
119
119
70
119
128
110
124
138
132
130
148
158
146
99
53
45
3
11
10
18
94
93
40
24
16
22
83
72
20
106
102
88
98
99
122
109
152
105
135
104
99
153
211
109
172
148
142
183
195
185
109
227
236
170
165
172
132
229
230
232
183
242
191
144
168
201
244
248
213
207
200
178
134
154
173
183
178
101
105
101
65
82
70
119
150
148
74
101
128
105
104
83
117
97
128
135
106
158
203
112
99
181
224
228
255
255
229
255
255
229
229
228
228
255
255
255
255
255
229
229
229
255
255
229
229
255
255
255
229
229
229
255
228
229
255
255
224
255
253
190
192
198
156
152
158
134
143
116
38
96
39
25
35
79
23
10
54
62
39
43
140
102
85
88
164
136
130
157
3
180
129
163
177
112
33
4
111
89
112
61
67
50
0
0
42
42
34
53
39
0
0
0
0
39
47
0
0
0
39
0
0
41
43
0
0
0
48
46
7
55
41
145
94
108
73
106
60
83
102
161
109
101
114
79
127
91
124
52
39
105
114
92
146
70
88
40
70
0
80
122
79
87
0
42
124
71
74
35
4
73
40
68
164
130
139
165
162
143
134
136
107
104
87
84
152
148
138
90
47
64
16
19
114
112
137
125
132
75
97
29
96
143
82
80
100
125
103
91
61
72
82
67
35
82
106
92
100
105
78
142
97
49
98
112
77
93
159
128
130
115
124
120
47
21
69
58
59
76
101
108
108
49
48
91
76
14
18
67
19
77
80
99
89
121
141
140
149
145
145
122
134
208
219
205
205
137
153
108
77
89
230
225
183
167
226
150
144
136
185
189
184
250
209
176
189
195
252
247
196
180
141
56
87
131
134
177
98
90
131
80
94
63
81
172
131
162
138
169
105
81
174
81
102
112
161
122
155
165
126
149
167
210
255
255
255
229
255
255
255
229
228
228
228
229
255
255
255
255
255
255
255
255
255
255
255
255
255
255
229
229
255
255
229
229
255
255
223
197
222
191
180
198
190
187
87
138
105
105
98
95
45
24
72
30
52
54
38
53
49
75
159
88
140
81
80
158
118
145
143
126
173
162
141
125
74
76
70
105
57
79
67
47
56
43
54
48
44
0
46
0
0
0
46
44
0
0
0
46
45
0
0
40
0
0
0
0
0
4
54
7
53
125
167
21
115
112
97
110
102
100
123
41
65
58
51
27
81
37
115
175
112
119
109
90
97
107
94
61
146
39
106
72
91
74
110
111
31
86
116
83
151
154
127
119
166
44
86
126
98
99
105
118
140
162
92
119
95
40
74
55
42
101
229
162
56
191
122
124
45
117
148
44
127
181
137
76
36
68
60
57
166
39
119
125
119
121
119
107
125
53
62
108
148
167
158
119
140
143
197
162
162
92
57
116
61
88
83
77
42
60
42
39
89
86
53
44
62
0
50
38
23
31
58
75
92
97
108
153
205
196
205
145
152
173
148
120
168
144
159
134
221
206
116
146
165
159
148
191
232
175
189
237
247
199
157
210
252
253
186
180
129
141
122
104
155
140
64
136
106
111
46
120
152
65
106
202
143
122
89
124
161
158
126
152
165
123
239
192
255
255
255
229
229
229
228
255
255
255
229
228
228
228
255
229
229
255
255
255
229
255
255
255
229
229
255
255
255
255
229
255
255
228
229
228
255
225
209
241
255
209
190
212
151
89
84
68
95
65
94
50
26
81
12
0
48
43
15
63
51
116
78
135
119
93
59
85
103
114
162
159
156
91
68
67
95
58
66
111
57
26
75
112
7
50
33
48
35
58
0
0
0
51
0
0
0
46
50
45
0
43
0
0
0
0
0
0
0
59
55
57
71
101
0
19
93
135
105
88
66
166
58
24
61
75
16
101
14
19
64
121
77
174
120
65
51
96
48
88
165
156
135
89
157
155
136
91
85
82
128
130
158
106
72
102
48
77
69
125
115
152
113
111
100
58
58
79
63
11
110
147
216
109
104
53
168
144
135
51
90
63
50
68
132
147
59
112
146
58
125
58
69
124
159
185
125
114
99
62
49
38
115
116
99
102
139
147
213
145
119
172
103
127
71
72
108
71
77
40
38
25
14
39
47
92
54
42
36
38
92
82
3
110
131
164
165
161
161
154
170
152
190
197
201
131
126
203
148
159
131
99
134
127
172
121
116
133
185
111
185
222
203
225
234
234
227
246
255
245
176
154
171
150
163
113
153
70
59
115
129
114
122
119
135
133
167
47
27
83
136
137
152
200
148
137
255
223
255
255
255
255
228
228
255
228
255
255
229
229
229
229
229
255
255
229
229
255
225
229
224
255
255
229
229
229
255
255
255
229
255
255
255
228
229
229
228
223
255
255
195
207
150
92
69
96
61
73
100
63
59
36
7
82
1
50
0
0
48
50
50
0
129
120
108
41
50
102
107
118
123
135
137
125
3
10
71
38
64
80
34
11
0
24
67
132
60
0
9
0
0
65
50
45
0
45
46
46
0
0
49
0
0
5
0
0
0
58
49
0
0
0
0
1
44
60
109
38
115
110
85
0
29
36
92
144
116
83
29
125
86
173
25
168
101
33
225
52
19
85
84
121
59
117
111
75
138
78
54
85
89
149
147
79
101
81
66
69
80
80
89
105
0
79
65
130
91
74
54
136
139
155
81
56
55
119
67
103
159
109
98
65
118
207
58
112
61
150
55
50
131
171
192
89
179
169
140
130
60
94
55
134
145
132
120
98
109
123
116
103
99
103
136
79
87
104
51
93
99
32
50
57
63
103
109
53
50
76
31
34
100
125
82
114
169
170
174
188
162
160
163
197
180
193
176
125
112
126
188
192
175
178
142
86
134
149
126
115
139
218
201
190
180
206
248
253
229
228
185
156
151
200
102
179
112
147
72
55
144
106
98
98
107
137
65
47
66
91
146
152
160
226
244
254
184
255
244
255
255
255
255
228
228
255
228
255
255
229
229
229
255
255
255
255
229
228
255
255
229
227
227
228
229
229
229
255
255
255
255
228
229
255
255
229
229
228
224
220
217
217
207
165
169
95
97
40
56
123
18
20
65
2
63
3
0
48
45
46
2
0
3
101
124
60
41
41
92
95
101
104
119
127
117
125
31
2
0
3
56
90
32
30
8
45
62
25
42
33
0
9
83
60
48
46
0
0
0
41
43
45
0
0
1
0
0
0
0
0
0
0
0
60
59
66
113
65
80
191
101
64
19
55
95
59
97
80
0
2
26
34
140
142
88
129
90
90
79
83
151
29
109
126
124
73
51
85
78
100
101
99
76
72
74
38
100
58
28
23
48
123
91
47
52
98
77
100
53
52
114
151
117
45
129
170
112
139
125
94
80
30
97
25
204
41
142
149
125
127
6
139
161
107
96
166
165
160
178
86
93
41
120
83
114
162
186
119
115
158
169
155
94
105
150
123
134
128
62
107
91
81
75
86
69
47
51
75
57
59
132
99
107
55
105
125
105
157
197
228
191
208
179
192
189
133
152
129
95
60
158
183
240
204
201
46
120
112
108
139
137
157
191
171
151
197
188
224
164
224
148
205
204
119
109
91
90
49
47
107
105
122
104
108
131
53
53
125
146
136
150
165
153
176
187
171
255
255
255
255
228
255
229
229
255
255
255
255
229
229
229
229
255
255
255
255
228
255
255
255
255
228
228
229
229
255
255
255
255
255
227
229
229
229
229
229
228
224
255
255
255
218
198
157
93
109
112
60
67
120
96
58
25
27
6
0
0
42
44
5
0
56
14
77
62
92
84
82
32
33
36
49
111
103
111
111
104
23
8
0
26
21
81
41
0
0
28
39
61
16
4
5
1
48
0
0
0
45
0
0
0
0
0
0
0
0
0
0
44
46
44
0
9
62
46
94
74
148
200
157
38
46
160
96
30
0
153
93
53
102
52
117
110
121
135
120
119
41
119
112
130
185
128
130
90
95
100
128
126
101
50
84
77
114
35
110
58
86
76
28
105
79
108
75
160
55
23
67
142
139
164
57
108
133
105
109
105
167
181
107
81
119
78
139
108
139
92
76
169
102
56
23
17
191
143
169
73
152
129
99
49
124
100
121
145
160
157
207
183
177
134
130
65
110
121
113
124
74
39
12
24
26
50
45
75
36
39
42
94
114
131
129
149
149
127
92
102
118
159
170
157
211
182
132
149
143
151
169
150
150
189
198
155
147
201
145
114
129
104
113
138
163
174
138
117
118
198
211
219
225
104
127
181
86
83
71
37
30
63
40
60
108
115
48
94
68
104
29
75
170
150
207
212
215
151
182
251
255
203
214
229
228
228
255
227
255
255
229
229
255
229
255
255
255
255
255
255
255
255
229
229
255
255
229
255
255
255
255
255
255
229
229
229
229
255
255
255
255
219
255
215
225
128
127
143
131
103
42
61
71
23
100
0
8
1
0
0
42
56
0
1
0
76
61
39
79
78
29
30
31
40
96
89
37
69
110
87
14
13
7
7
0
18
6
50
47
0
0
0
2
17
0
0
0
0
42
41
39
0
0
0
0
0
44
42
0
0
46
45
0
42
50
7
0
61
60
73
115
72
44
81
84
18
109
113
126
90
138
126
45
29
183
111
120
189
51
76
141
26
108
128
179
109
106
145
188
116
104
135
121
117
109
81
71
115
64
123
114
44
93
135
53
83
132
128
123
126
41
145
172
39
111
32
26
112
130
123
172
75
103
142
117
40
104
126
49
87
99
96
68
50
92
176
130
166
117
85
94
68
108
118
100
83
99
109
155
152
146
157
186
120
100
100
90
74
78
45
50
60
64
145
145
63
52
44
10
22
84
96
101
124
70
66
181
180
125
62
31
67
142
199
200
128
172
185
205
211
206
199
145
95
106
183
218
181
182
197
132
117
109
94
89
121
91
92
154
181
160
146
78
107
129
80
79
95
102
89
49
52
35
100
69
5
16
93
111
102
118
199
163
213
239
165
173
189
139
156
201
255
224
227
227
255
255
255
255
229
255
229
229
255
255
255
255
228
255
255
255
229
229
229
229
255
255
255
255
255
255
255
229
229
229
229
255
255
255
255
218
223
255
255
239
130
145
102
48
62
54
35
85
77
91
9
53
42
0
0
1
0
0
0
116
61
42
76
75
22
24
80
90
87
30
48
89
73
110
55
68
0
77
13
20
45
53
0
32
31
0
0
3
0
0
0
42
0
41
38
41
0
0
0
46
46
44
46
0
0
0
44
46
46
54
55
49
62
61
103
2
57
46
0
67
111
131
81
43
131
138
46
168
160
122
64
200
15
93
106
125
143
52
79
114
93
113
115
80
94
115
123
98
71
118
113
108
138
18
0
71
109
50
126
111
150
97
90
32
143
108
127
92
10
95
141
157
104
71
127
21
18
161
120
82
80
93
140
164
109
61
64
142
124
155
126
105
86
41
84
78
83
67
131
188
129
111
163
162
160
153
122
119
74
128
104
76
28
47
46
113
105
141
138
71
114
99
96
44
81
75
121
118
75
84
101
114
199
126
137
134
127
101
193
168
149
166
186
172
118
148
126
108
131
82
162
143
103
103
79
75
120
144
117
117
139
182
67
54
92
115
89
101
112
28
18
89
29
83
122
138
123
128
152
110
61
146
148
119
85
179
173
104
125
115
156
142
182
197
255
255
228
221
255
255
255
255
229
229
255
229
228
228
226
255
255
228
224
255
229
227
255
255
255
226
255
255
255
229
255
255
228
228
255
255
255
255
221
255
255
207
226
254
226
149
187
98
41
115
50
120
99
37
3
59
52
43
0
0
0
5
0
61
22
66
54
81
80
73
72
73
82
87
38
34
98
110
139
60
57
59
14
29
58
55
1
14
0
29
0
22
16
34
0
0
0
0
0
0
0
42
0
0
43
48
45
49
43
0
0
52
48
2
0
45
57
53
48
39
5
0
83
68
81
54
35
68
40
36
83
125
84
153
105
70
156
111
61
21
135
68
79
88
79
150
8
68
83
170
132
106
128
108
87
119
127
86
29
40
90
105
64
97
133
138
122
104
111
33
141
118
124
83
99
134
107
56
86
210
0
60
111
163
68
111
125
116
134
67
75
82
109
92
100
100
101
118
41
29
23
75
77
113
120
125
102
104
108
113
155
82
60
36
49
114
133
127
101
104
142
128
87
108
53
28
45
70
75
132
165
128
160
112
150
146
117
97
86
79
94
81
23
77
152
100
121
182
171
146
102
159
172
95
145
175
143
190
96
81
98
105
67
110
103
49
91
104
121
87
34
44
114
7
31
106
82
49
111
64
54
43
78
141
59
118
101
94
134
151
90
114
140
174
184
131
156
210
205
225
252
212
255
255
225
255
255
255
255
229
229
255
255
255
226
227
255
255
225
229
224
255
255
255
225
225
255
255
229
255
229
227
227
255
255
255
255
220
217
216
221
206
220
202
158
155
144
126
98
47
90
14
75
103
58
52
44
38
0
0
63
58
12
8
119
111
92
39
35
81
77
79
87
40
18
101
31
160
65
53
66
3
11
66
6
0
11
0
18
0
8
71
78
0
0
0
47
46
0
0
46
46
1
0
47
44
49
43
2
1
0
39
49
40
50
0
0
0
31
36
1
17
64
75
101
149
145
34
58
25
27
64
131
121
43
93
128
161
47
45
43
70
106
107
150
72
79
42
30
135
139
89
92
87
136
113
86
139
127
79
75
66
118
155
154
138
75
71
63
139
135
164
39
125
144
125
81
12
96
77
71
128
176
122
145
58
57
50
53
64
99
113
122
64
59
105
113
58
46
48
73
115
130
132
113
109
105
164
160
112
87
43
71
72
23
62
66
73
85
79
60
0
68
26
40
8
60
80
126
182
184
186
163
165
119
126
169
149
142
129
141
140
114
72
67
91
174
107
163
133
125
144
149
168
191
203
134
116
100
82
84
63
67
77
0
46
112
134
125
20
8
21
20
11
52
48
56
37
71
162
83
84
149
126
160
181
131
143
81
120
142
128
156
173
95
175
191
255
196
255
255
255
255
227
255
228
229
255
229
228
255
223
223
226
255
255
227
219
255
255
255
255
221
221
222
255
219
222
228
226
255
255
255
224
219
255
255
217
217
219
217
213
245
173
166
103
68
60
67
23
69
68
36
0
0
47
43
42
0
6
53
9
13
97
67
34
29
75
73
23
26
85
87
81
95
57
147
130
60
83
65
21
0
0
2
5
0
32
29
73
75
98
56
0
0
0
0
0
0
48
43
40
43
44
40
0
38
42
0
0
0
41
0
0
0
0
0
0
50
44
36
120
12
70
36
83
62
150
9
46
72
64
83
146
118
17
94
43
21
34
53
125
137
177
23
66
39
58
97
124
88
64
54
139
143
98
165
171
85
145
167
175
148
160
40
156
117
74
122
153
115
39
109
115
61
108
81
0
154
71
121
198
159
189
84
15
39
50
65
139
131
136
110
89
60
85
29
43
63
99
99
162
130
128
130
184
166
168
99
89
92
39
33
67
105
84
19
126
93
60
77
120
97
48
20
66
80
76
64
89
118
135
142
115
77
98
129
114
149
159
145
152
198
118
104
132
121
107
212
213
96
54
113
124
127
88
97
97
76
45
44
61
116
106
23
61
69
64
0
0
7
40
59
100
88
97
143
75
113
144
61
97
119
94
107
89
77
133
117
102
157
182
191
167
182
248
255
212
222
229
255
255
255
220
228
229
229
229
228
219
229
226
213
255
255
255
255
255
228
229
255
255
255
255
255
255
223
229
255
255
255
222
221
219
218
255
255
255
255
255
255
254
144
168
115
106
66
84
64
49
49
66
11
4
48
38
35
44
0
0
63
63
29
64
35
31
27
76
23
24
30
33
27
49
65
92
112
35
31
9
63
81
2
0
0
0
88
71
62
55
94
48
59
0
17
0
0
49
0
45
41
40
42
0
0
48
45
45
0
0
39
0
1
0
46
0
45
45
41
47
47
94
60
32
95
84
63
30
3
122
116
34
132
59
99
138
129
52
21
97
113
150
67
51
67
89
78
106
128
74
95
97
53
173
94
91
118
131
124
157
121
60
89
0
114
158
87
110
137
61
129
133
44
97
19
57
46
76
71
125
184
142
169
216
174
18
91
154
106
172
119
66
124
96
73
93
54
70
93
129
150
126
137
108
179
171
160
71
63
52
56
126
132
118
94
71
31
20
49
62
69
145
59
63
61
57
97
118
82
68
99
70
88
102
60
109
128
94
101
89
100
64
69
102
95
102
110
107
116
130
190
159
123
65
53
79
99
85
53
57
71
53
15
19
90
110
127
29
26
12
19
27
80
117
59
97
158
103
103
132
50
35
38
105
112
101
54
72
137
116
178
212
161
225
223
205
255
255
222
211
255
255
229
229
229
229
255
228
225
255
255
255
221
222
255
255
255
229
229
228
255
255
255
255
255
255
255
225
255
255
255
255
255
255
255
255
255
255
255
255
222
124
127
79
112
120
40
83
40
62
47
4
48
45
0
49
45
45
0
12
10
16
65
36
33
26
73
21
21
30
35
35
52
69
93
133
57
25
9
58
75
0
0
0
3
51
39
61
60
77
49
16
67
8
0
0
0
0
0
42
39
41
50
48
52
45
42
44
45
45
55
70
43
56
39
42
43
42
64
43
67
73
60
92
89
0
0
0
48
118
107
179
78
14
81
52
107
38
34
95
101
88
61
69
100
62
102
181
122
108
85
55
121
129
95
171
141
138
118
52
100
76
50
164
123
118
76
121
115
78
12
73
118
97
24
22
100
175
208
160
93
68
50
26
40
26
11
47
113
145
46
57
0
77
24
49
133
96
85
111
156
205
147
105
103
77
96
96
88
135
105
99
74
77
13
16
7
65
97
22
42
51
18
22
43
130
103
108
164
125
177
175
132
117
124
167
130
196
173
104
96
75
86
103
112
94
113
121
101
104
107
143
110
99
117
116
113
108
92
84
87
77
133
136
67
83
17
47
30
14
29
61
20
59
102
108
7
4
77
26
86
188
106
108
36
157
147
191
210
211
218
191
241
255
229
255
255
229
196
228
255
229
224
229
228
255
227
215
255
255
255
228
216
224
255
220
227
255
255
228
228
227
255
224
255
217
214
218
255
255
255
255
255
255
255
214
255
255
247
186
208
137
93
182
79
78
166
16
34
7
25
14
3
3
51
49
54
0
8
73
66
129
36
34
73
72
18
19
29
33
85
69
29
59
92
61
1
6
6
40
72
67
53
53
66
50
59
47
40
0
2
0
30
75
52
45
0
0
0
0
0
45
46
41
41
43
49
48
36
0
52
0
37
43
42
43
47
38
46
64
53
49
39
58
25
6
100
141
105
70
46
83
0
17
41
78
49
0
93
121
90
72
133
119
79
105
158
157
98
108
162
133
123
151
147
102
102
95
75
126
66
55
150
95
79
116
118
152
132
54
102
191
180
156
57
158
214
180
95
114
63
103
98
106
81
35
96
146
145
73
61
58
97
72
101
43
132
177
190
127
136
162
171
122
125
172
158
151
111
110
110
67
79
54
12
72
54
3
11
62
12
18
77
53
60
64
70
154
130
136
150
111
148
180
189
96
167
190
176
168
158
102
150
167
176
111
123
139
122
103
131
132
139
110
138
128
93
135
143
164
91
105
95
121
94
38
66
4
20
13
67
106
114
151
136
217
130
134
114
114
68
135
157
82
114
127
156
189
190
163
219
255
221
210
229
229
223
175
198
255
229
229
228
228
227
227
251
255
222
220
255
220
223
255
255
227
226
227
227
227
225
255
255
224
218
255
215
255
255
252
255
255
215
214
214
219
219
249
156
172
113
93
105
91
48
143
59
45
42
15
8
6
64
63
2
8
7
8
21
64
125
84
89
78
76
75
70
74
26
37
16
77
103
86
83
0
0
0
52
72
61
46
0
0
0
58
52
55
0
0
2
70
17
0
42
0
0
0
0
0
42
44
44
43
44
46
0
0
0
0
0
36
44
40
0
46
51
52
47
45
34
63
57
0
0
80
81
162
27
73
119
103
222
36
43
43
106
135
154
90
80
112
126
120
73
67
227
125
114
172
98
143
111
82
63
22
113
107
111
70
139
142
43
76
105
87
120
166
81
76
132
138
182
172
187
163
110
164
110
99
150
192
86
75
63
120
201
167
77
55
30
38
42
88
50
114
100
62
187
131
192
176
119
118
179
191
153
121
132
109
60
87
103
55
30
63
89
103
116
43
71
88
41
69
67
88
115
179
191
157
164
187
191
120
139
163
198
188
139
181
198
208
186
184
189
127
117
148
197
144
160
202
200
198
134
110
146
157
160
100
138
113
150
132
118
106
70
115
81
96
145
125
110
90
151
72
63
101
99
74
135
130
219
172
125
147
226
255
255
189
198
194
209
255
225
229
255
225
255
255
224
228
227
227
255
255
216
223
221
225
228
223
222
223
229
255
255
255
227
224
222
255
255
255
217
211
209
206
182
210
211
214
214
255
210
208
195
95
97
106
68
62
92
118
65
86
63
46
25
71
64
56
1
9
9
9
10
15
61
117
75
85
77
75
74
72
75
26
44
14
73
106
148
111
0
3
0
40
8
3
1
1
0
0
55
47
47
0
0
10
42
0
1
0
0
0
43
0
0
0
43
49
43
0
0
0
0
0
0
0
0
48
0
0
49
0
3
38
64
64
73
0
3
27
18
0
106
70
95
134
168
105
114
35
128
156
101
135
129
109
113
86
134
110
85
243
119
133
126
116
84
79
87
22
38
111
61
105
87
143
61
85
108
71
46
84
159
125
79
77
44
79
106
114
168
109
152
119
141
66
42
88
80
35
82
139
130
161
55
67
45
38
0
47
128
144
172
156
117
106
133
149
72
87
143
145
142
128
103
18
26
93
55
36
44
45
62
16
0
22
43
45
68
88
92
64
163
170
183
190
181
154
156
137
133
137
216
203
209
226
230
229
203
155
207
166
168
224
164
153
204
192
132
127
144
165
163
146
173
185
157
184
96
136
88
117
159
151
149
82
103
161
126
72
84
43
42
61
105
119
86
116
200
201
200
211
232
252
190
199
217
227
228
229
255
255
236
229
255
225
228
227
227
255
255
225
222
229
229
229
224
224
226
229
255
255
229
255
255
216
201
201
255
216
255
204
201
167
207
209
213
255
255
210
206
255
156
88
94
79
137
170
160
69
108
102
88
63
61
63
61
9
14
7
9
13
9
63
111
68
80
72
16
19
22
29
31
41
49
3
52
157
180
0
63
0
42
68
68
67
59
51
40
4
48
41
62
36
0
11
0
54
0
0
0
0
38
0
44
42
50
0
0
0
0
0
0
0
0
2
1
0
0
2
41
0
60
43
47
43
0
43
71
0
93
158
157
115
157
60
7
20
138
63
110
139
103
110
121
50
162
118
154
114
169
140
112
89
145
69
35
78
45
61
100
0
68
156
133
90
126
104
114
60
107
71
83
62
47
103
16
93
86
113
91
84
74
53
82
127
141
117
78
54
138
127
103
60
95
29
103
99
66
57
106
82
89
84
90
95
140
62
80
90
75
51
108
44
64
116
38
70
69
98
60
8
4
9
67
82
114
133
153
107
106
94
104
127
184
150
221
232
240
187
177
173
229
231
172
186
245
229
218
220
176
167
215
177
171
163
197
209
196
201
136
123
167
148
162
164
164
169
180
127
134
138
165
124
113
99
140
150
159
140
103
113
160
142
182
166
156
223
255
222
255
255
255
255
208
235
255
229
228
255
255
255
228
228
228
228
255
228
226
228
225
255
221
223
217
229
227
255
255
255
227
228
255
255
255
255
198
255
255
255
255
255
247
206
209
255
255
216
207
204
188
83
85
80
156
155
169
92
157
95
126
119
88
71
3
59
56
7
6
60
57
56
49
97
22
25
71
18
18
19
23
76
81
3
48
82
145
142
59
34
9
115
72
6
0
52
0
44
44
46
38
41
0
41
0
0
3
0
0
0
0
43
0
0
40
48
0
0
0
0
0
0
0
0
0
0
0
0
0
41
0
51
51
51
51
0
41
43
62
105
102
3
5
102
0
94
58
207
68
146
146
89
97
145
159
94
153
123
85
176
85
149
94
140
98
99
58
21
19
18
26
105
86
87
142
149
119
133
55
19
10
126
154
117
75
73
94
98
80
55
81
121
141
156
147
148
130
60
77
128
71
38
58
70
62
73
105
47
63
68
128
90
96
141
182
188
83
78
75
34
12
62
68
67
62
23
85
85
106
55
33
80
133
121
125
155
186
189
113
101
118
133
208
211
225
236
190
201
255
254
195
241
192
248
255
255
255
222
227
197
226
194
185
179
230
218
213
203
140
140
151
137
191
180
154
159
110
122
182
169
164
75
77
177
168
201
233
183
240
255
155
214
255
255
255
229
219
255
255
229
227
223
255
255
255
255
255
255
255
255
255
228
228
255
229
255
255
255
229
228
255
255
255
226
255
246
255
255
255
255
255
199
134
201
255
255
255
255
226
243
255
255
214
214
215
217
217
255
255
216
109
108
92
146
123
156
133
101
119
37
44
19
15
63
57
57
10
7
8
54
53
2
51
79
28
23
21
74
25
31
84
80
0
54
62
135
87
56
5
3
86
54
0
0
0
0
0
48
53
42
45
0
44
42
48
0
0
0
0
45
43
0
0
44
46
0
0
0
0
46
43
0
0
47
0
0
0
0
48
0
3
42
43
0
1
0
0
50
52
62
85
75
0
48
95
162
114
110
16
49
134
127
146
165
83
104
103
96
148
70
67
38
37
13
104
72
23
51
54
63
159
109
59
166
72
109
70
73
82
0
155
99
126
139
59
111
163
148
64
168
160
156
141
78
103
54
66
126
125
65
48
80
31
69
83
133
60
110
139
132
98
99
141
109
145
144
56
118
99
44
15
111
83
84
79
71
70
82
65
24
86
76
82
116
105
127
154
112
100
122
162
201
164
223
241
255
206
255
248
192
198
198
250
255
207
248
240
243
195
255
255
253
178
174
232
230
220
150
143
152
157
200
202
181
167
148
114
114
193
157
176
124
200
180
140
243
241
226
237
179
228
255
255
255
255
255
229
226
255
255
225
255
255
255
255
255
255
255
255
255
255
255
228
226
255
255
255
229
228
255
255
225
221
211
203
146
255
255
255
255
185
223
198
208
218
213
255
234
246
255
206
214
255
217
217
215
207
245
255
135
105
99
82
47
158
114
122
105
88
59
27
74
63
5
56
62
7
8
57
58
59
115
40
40
33
79
79
31
37
91
45
0
48
120
79
86
0
0
0
90
55
1
0
0
0
0
43
0
0
48
43
45
44
49
0
0
0
0
0
0
0
0
42
0
0
0
0
0
0
43
40
43
0
0
0
0
0
0
0
4
0
0
0
0
50
0
0
68
67
56
54
55
79
99
98
23
77
44
0
141
150
137
153
69
58
109
118
113
63
65
78
118
75
136
80
16
81
58
71
127
81
148
146
77
73
74
64
75
2
109
107
170
115
90
115
115
68
161
177
146
82
79
78
77
27
10
135
111
124
69
43
117
126
88
91
52
109
132
149
91
138
118
105
82
126
84
71
144
48
54
107
96
113
92
53
49
60
81
49
40
87
90
115
100
117
122
96
91
105
116
131
152
226
235
239
245
247
199
207
209
203
193
186
236
229
233
238
228
242
233
183
173
170
219
224
224
216
195
140
161
145
125
105
118
111
169
129
141
145
212
231
227
235
188
194
184
136
222
246
245
255
255
255
222
226
229
220
255
255
255
255
255
227
255
229
229
255
255
255
255
227
227
218
255
255
227
228
227
255
228
226
220
215
185
137
229
220
207
194
216
254
255
217
222
219
255
255
255
255
255
210
255
255
217
212
218
188
200
120
105
112
91
58
145
163
107
111
134
94
85
76
59
61
60
8
7
9
10
14
51
115
40
39
29
75
74
26
32
34
29
0
5
69
108
94
0
0
50
92
4
3
0
0
0
0
0
49
48
49
45
45
45
49
44
0
0
0
39
0
0
42
0
0
0
0
0
0
0
0
40
44
0
0
0
0
0
0
0
4
41
0
0
0
48
46
0
0
68
0
2
61
70
67
2
1
11
68
31
107
140
149
108
112
166
172
73
160
155
132
169
153
137
156
64
28
0
2
66
145
128
176
108
91
153
77
81
22
69
76
145
176
83
44
140
124
144
138
80
52
110
75
70
62
39
53
128
115
126
105
66
91
82
22
0
55
94
121
78
79
108
180
165
113
138
71
80
58
64
64
132
138
150
123
106
114
96
85
24
42
38
72
70
102
128
144
78
74
111
99
180
183
209
229
227
241
240
202
206
192
187
181
168
162
215
205
220
231
227
216
220
237
239
222
208
206
152
154
146
146
131
123
154
159
127
143
145
73
140
114
211
240
218
209
230
163
197
182
239
243
255
255
218
225
199
255
255
229
224
255
255
229
229
227
229
227
255
255
228
227
227
255
255
210
229
227
226
255
255
255
228
227
255
255
221
226
228
198
255
255
171
212
255
217
218
227
222
219
215
255
208
211
219
216
255
255
251
209
85
91
79
109
67
86
180
118
132
47
113
81
73
55
64
65
7
6
9
12
18
54
116
39
37
30
24
24
27
33
34
88
54
5
50
92
18
0
14
45
84
0
0
51
56
52
0
39
51
53
49
46
43
44
47
48
49
0
0
0
44
0
46
45
43
0
0
0
0
0
0
40
45
0
0
0
0
0
0
0
54
43
44
44
0
0
46
44
48
57
47
0
41
56
57
30
67
47
56
0
57
115
120
128
110
100
37
63
116
84
57
106
129
129
121
53
117
13
36
100
30
88
183
93
146
110
99
111
100
88
154
153
18
44
135
94
148
149
44
61
88
115
99
50
94
87
58
53
46
134
106
75
116
86
51
97
136
92
86
138
76
99
181
166
118
137
169
93
151
97
141
103
34
32
73
38
103
90
54
113
44
83
80
105
122
110
121
87
85
119
208
192
193
205
178
232
232
233
189
187
183
236
190
165
148
144
197
192
102
169
174
173
178
183
192
216
212
191
147
135
148
144
124
129
73
145
157
149
154
154
199
150
176
184
178
209
234
197
152
227
234
242
255
213
210
166
204
251
225
203
255
223
229
255
255
255
255
255
228
228
255
255
255
255
219
226
223
224
255
255
255
229
255
255
255
255
222
255
227
197
209
255
255
198
213
215
225
216
215
215
215
255
210
255
214
255
201
201
255
118
89
109
70
85
131
56
141
129
43
57
21
71
56
60
61
59
57
60
10
68
68
122
37
36
34
78
78
28
85
86
26
13
83
127
93
52
63
69
0
75
51
0
47
54
48
51
39
52
52
47
45
41
42
45
48
46
0
0
0
0
43
43
43
45
0
0
0
0
0
0
0
47
42
0
0
41
40
0
0
51
44
44
42
0
0
46
41
0
0
47
0
0
35
0
0
48
47
90
75
50
75
86
132
116
92
62
88
131
46
52
96
185
53
168
70
50
42
83
53
19
114
191
78
66
75
134
148
36
168
59
48
81
52
134
161
131
57
64
54
173
133
145
118
159
18
39
68
58
93
95
44
12
74
97
101
153
81
83
126
142
161
134
150
160
147
85
107
141
138
108
55
38
38
55
67
120
100
60
56
48
66
108
42
57
111
138
133
79
86
104
177
204
205
205
157
207
227
172
177
185
237
191
191
158
113
94
161
121
126
174
171
134
139
195
203
222
213
205
130
134
117
98
119
177
220
255
169
210
28
68
48
9
124
49
66
91
77
168
159
139
180
131
107
142
221
199
202
211
178
183
214
228
228
228
255
255
255
228
228
255
255
255
217
229
225
218
222
255
255
255
255
255
221
219
227
255
255
217
207
206
202
255
246
255
221
228
217
255
255
216
255
209
211
213
212
215
186
221
63
112
117
119
49
68
92
112
57
98
48
17
73
60
52
53
60
56
6
60
65
74
120
80
80
30
19
71
73
77
78
24
46
127
142
126
54
64
49
56
74
55
2
0
0
0
0
0
0
0
46
45
39
41
43
0
0
0
33
0
0
36
37
39
43
0
0
0
0
0
0
0
48
42
46
47
46
43
45
40
50
45
43
40
0
0
47
0
0
0
4
0
0
57
0
0
44
49
33
46
121
100
120
44
126
128
66
125
1
61
68
187
79
63
90
107
121
59
30
0
61
184
92
133
39
145
132
122
99
148
62
79
70
62
205
138
0
65
57
207
173
69
78
178
68
35
121
116
56
54
72
37
86
131
98
107
67
141
102
143
157
157
180
189
185
138
75
65
123
148
130
140
64
42
108
109
80
111
98
144
165
103
82
75
84
136
59
63
110
163
176
156
177
139
127
125
127
133
174
153
160
164
155
74
166
171
141
223
120
102
120
110
157
186
146
168
169
105
132
68
100
149
139
137
129
140
117
98
51
90
117
101
120
117
120
104
113
115
143
132
95
159
180
128
57
77
119
100
109
165
124
182
207
219
220
216
255
255
255
255
255
255
255
229
210
212
205
254
236
223
251
255
255
228
229
219
255
220
224
220
255
255
220
218
255
255
220
255
255
255
192
198
210
165
203
203
250
239
133
128
142
109
46
117
11
33
73
56
17
64
63
56
45
0
0
45
42
0
0
5
29
66
81
80
73
75
24
24
85
86
71
92
119
134
131
62
11
0
68
58
0
0
0
0
0
0
0
0
0
0
44
0
0
0
0
41
39
46
42
47
42
0
47
41
37
0
0
0
45
42
44
52
55
50
43
43
44
46
48
44
46
45
42
45
0
0
0
0
48
0
0
54
0
0
0
0
45
43
50
174
165
119
193
89
23
64
11
21
21
85
55
0
75
121
36
60
3
46
13
130
217
84
83
121
155
143
98
136
132
93
77
37
137
93
82
62
67
75
191
103
123
101
183
109
24
34
0
31
51
94
52
32
168
35
67
94
96
118
127
141
85
162
140
149
156
137
120
109
86
114
37
45
50
60
88
47
130
91
134
156
82
80
57
36
47
135
174
152
133
145
202
198
151
206
188
127
102
100
121
80
115
181
121
159
103
141
145
190
134
136
97
176
115
187
132
137
155
147
93
115
81
70
104
46
130
88
64
92
106
89
16
43
17
65
19
36
57
165
175
185
111
96
100
109
83
118
98
136
110
84
142
201
173
229
193
255
216
229
255
255
255
224
226
216
198
197
255
254
220
223
232
255
255
228
223
255
255
228
219
255
228
255
255
255
220
225
255
255
205
199
201
211
173
204
254
245
188
226
122
107
77
109
76
18
13
19
60
93
28
0
47
42
46
0
38
47
0
0
4
49
57
29
82
67
72
24
25
36
37
60
84
101
147
61
0
9
7
96
51
0
0
0
0
0
1
47
0
0
41
0
0
42
42
45
45
41
43
43
43
43
5
0
41
36
40
44
42
45
45
48
52
54
50
46
46
46
48
49
44
47
46
39
45
49
0
0
0
0
0
48
49
0
0
0
0
46
44
49
190
83
117
167
97
30
83
16
86
0
131
41
19
133
136
106
72
27
19
61
18
143
158
136
165
169
136
99
167
113
126
123
104
173
112
92
138
197
104
172
61
143
114
98
134
111
43
43
33
60
60
51
49
122
132
96
94
47
130
120
127
85
108
108
159
148
179
174
141
120
78
45
22
42
64
144
79
132
130
95
70
85
144
102
79
66
130
89
152
137
126
159
144
169
201
191
133
111
115
195
154
145
142
155
114
169
143
147
150
177
117
147
146
134
137
109
144
132
135
151
90
61
47
44
25
74
74
45
38
58
30
43
51
77
58
75
43
32
128
133
163
162
203
212
133
37
72
99
143
92
110
129
181
175
193
205
255
229
225
229
229
255
255
255
255
197
199
243
255
255
239
249
255
255
255
229
255
255
228
220
255
229
226
225
255
255
222
254
255
255
255
255
255
237
255
255
239
198
252
127
111
81
133
59
53
33
18
58
37
0
49
46
44
46
0
0
0
0
5
4
117
104
27
80
69
74
77
29
38
92
75
105
63
94
0
0
56
70
43
4
51
50
0
0
0
2
0
0
0
43
43
0
42
0
42
45
40
42
39
39
42
1
0
0
0
0
44
46
48
47
45
42
42
49
0
0
0
0
47
43
46
44
40
44
47
0
0
52
44
0
0
0
0
0
0
0
42
46
48
155
68
159
152
95
94
153
15
71
0
189
48
31
96
109
159
136
133
79
98
28
50
102
215
155
125
180
118
174
168
96
83
97
39
143
161
96
108
221
140
98
80
119
184
54
123
89
87
80
91
81
120
209
163
117
78
62
70
128
113
131
106
139
114
118
156
130
139
148
149
156
63
54
65
72
78
65
123
111
81
86
162
164
149
72
133
131
127
144
116
190
203
185
184
155
92
163
194
189
198
136
78
108
188
105
85
179
204
176
149
73
96
131
125
93
100
163
115
124
127
118
81
101
54
85
61
71
31
12
0
37
53
135
99
90
78
111
117
122
158
142
131
165
104
151
200
106
49
92
177
184
57
136
255
123
224
208
220
217
229
221
227
255
255
255
208
212
253
229
255
255
252
225
223
229
255
232
255
255
255
255
255
255
255
255
218
255
255
255
255
254
255
255
243
254
250
252
215
216
81
137
124
65
73
75
74
73
22
67
0
49
0
0
0
0
0
2
0
10
56
124
100
77
76
74
78
29
35
41
38
35
84
95
54
0
8
0
67
62
67
48
41
41
54
0
0
45
43
49
49
47
44
0
0
41
0
37
0
38
41
43
44
0
0
0
0
44
48
0
47
43
38
37
46
45
0
0
0
0
41
44
42
44
43
0
0
49
49
40
55
4
0
50
0
0
0
41
47
48
159
155
179
157
105
123
73
23
62
82
187
0
141
80
124
152
52
155
107
150
127
24
105
184
134
72
145
131
128
104
84
65
80
26
116
173
100
0
177
118
85
115
194
215
34
126
117
39
80
72
158
158
143
85
132
100
62
75
113
144
133
72
77
57
61
118
143
144
122
128
117
134
68
55
120
59
93
95
163
154
198
188
163
148
137
131
103
167
146
96
124
187
183
198
177
128
137
182
131
123
204
160
126
87
73
144
188
175
177
107
136
124
197
174
114
76
122
116
60
75
160
148
92
88
104
104
104
85
80
37
24
95
79
119
88
121
122
131
101
121
144
154
124
123
148
175
166
73
66
86
111
209
150
202
118
192
144
205
221
229
255
255
224
220
229
255
255
255
229
255
255
227
255
216
222
204
233
255
255
255
255
255
255
255
255
222
255
255
255
255
248
255
209
199
253
248
235
211
228
98
92
38
37
84
69
41
11
19
43
12
0
0
0
0
0
0
58
55
7
13
73
41
26
23
28
31
35
41
39
33
25
132
158
74
1
5
0
14
48
55
52
0
49
49
55
45
44
45
52
53
50
44
40
0
0
0
36
0
42
46
46
39
41
0
0
0
42
0
45
46
46
45
45
45
43
44
0
0
0
39
43
41
47
0
0
47
49
46
42
54
4
0
46
0
0
0
44
47
50
166
143
89
74
130
75
34
61
35
150
32
65
117
159
138
166
149
137
48
37
182
128
52
85
127
87
18
76
61
113
33
91
106
88
137
60
47
89
166
152
205
149
149
98
53
62
73
74
49
57
51
107
100
96
110
165
38
22
109
122
178
133
99
99
92
55
144
65
130
98
51
82
42
83
95
81
105
111
145
84
99
104
158
133
68
44
144
152
150
79
140
173
175
127
201
202
217
191
113
144
144
149
124
138
120
175
166
147
161
132
126
148
138
185
159
160
160
189
135
129
189
215
158
173
171
190
161
162
164
117
166
154
92
118
79
56
34
40
125
173
158
123
118
120
109
160
199
184
145
180
182
116
80
207
196
190
199
181
159
195
229
250
229
221
255
255
255
255
255
255
223
224
216
228
255
251
255
217
222
212
255
255
255
255
217
255
255
255
207
255
203
195
193
195
185
179
176
211
115
51
64
89
52
78
56
18
4
4
2
0
0
0
41
0
39
43
55
50
0
60
123
26
35
33
30
36
40
44
82
72
118
143
182
29
1
4
29
53
4
57
42
39
0
63
53
35
0
49
52
50
47
41
39
0
0
0
41
40
47
44
37
37
44
42
0
0
37
40
41
41
43
48
49
46
41
43
0
3
0
41
45
42
46
0
0
50
41
47
58
41
0
10
0
0
0
0
0
45
57
156
128
143
70
56
13
56
31
90
190
60
26
33
136
135
116
57
92
156
45
141
124
93
29
131
92
56
136
98
48
77
79
96
130
86
31
74
70
48
47
138
125
85
100
30
45
47
26
37
139
43
106
164
51
129
107
124
54
94
83
100
105
137
117
97
86
76
73
138
110
78
117
130
120
93
50
68
129
131
170
158
99
111
106
187
176
177
97
153
199
182
120
184
206
183
181
178
120
106
129
145
142
144
122
190
139
150
199
179
174
138
201
214
199
193
211
214
145
159
155
166
186
178
181
230
179
175
180
169
177
135
119
129
77
136
43
40
25
55
100
124
143
136
149
96
159
96
163
96
150
171
200
231
215
140
216
148
192
151
255
255
228
211
224
225
229
255
255
255
255
229
229
190
222
192
255
255
255
218
210
249
255
241
245
255
255
255
255
211
210
193
210
210
204
247
248
172
164
46
81
105
63
12
8
0
0
65
8
18
0
0
0
0
42
40
49
41
56
38
136
58
32
22
18
28
85
52
85
84
76
155
77
71
0
0
21
53
39
40
6
50
0
0
58
52
0
0
0
45
48
48
0
0
0
0
44
43
39
52
0
0
0
52
45
0
0
0
43
0
42
48
43
39
39
39
43
47
0
0
0
40
42
40
0
0
41
41
0
52
37
0
0
0
0
0
0
48
53
43
130
155
51
87
117
15
54
98
27
10
123
87
72
68
179
110
92
118
48
63
88
165
60
66
113
53
62
117
61
63
161
76
143
58
45
80
155
119
3
53
134
101
58
123
95
127
88
79
144
115
100
157
152
77
28
6
82
66
60
36
88
109
118
158
140
119
102
107
141
161
111
51
70
57
99
110
57
105
107
87
73
124
108
147
196
128
101
107
177
168
142
194
156
194
132
140
130
176
147
161
189
182
126
196
182
140
149
141
119
137
219
174
170
235
213
222
218
160
168
174
234
186
179
187
245
191
190
190
187
181
208
187
130
104
147
128
106
78
128
106
58
116
155
133
142
158
167
123
114
102
91
102
141
182
254
121
169
155
227
214
255
211
211
221
255
207
255
255
255
255
217
203
207
207
208
217
222
229
208
255
255
254
189
189
255
234
225
189
177
193
162
185
207
219
184
187
179
125
110
156
83
84
0
0
64
54
63
1
13
46
0
0
0
43
0
0
4
5
55
129
55
32
36
26
33
38
31
111
107
66
23
0
43
6
10
24
55
46
40
52
46
44
0
2
0
0
0
0
0
0
0
0
0
0
0
41
43
46
48
0
40
40
49
44
0
0
0
0
0
0
45
42
42
40
0
41
44
0
0
0
0
41
39
0
0
0
0
0
0
0
0
0
0
0
39
52
52
48
40
142
156
60
80
99
107
19
0
144
43
91
158
91
70
171
126
137
48
106
91
110
114
53
71
54
48
136
97
60
20
126
65
53
93
78
77
173
200
28
89
133
149
139
142
118
104
83
41
113
120
145
132
125
95
82
41
98
82
66
94
79
138
156
140
138
134
155
84
138
126
63
95
146
155
131
125
102
142
130
51
106
173
163
206
116
121
109
186
178
175
207
128
107
214
143
119
145
238
161
168
174
134
227
213
154
125
197
199
139
233
243
127
140
169
196
164
168
190
163
170
244
248
192
197
255
252
255
249
255
232
221
144
111
99
160
150
95
73
145
124
105
144
127
142
150
152
145
190
115
94
87
126
82
129
208
189
178
229
218
255
243
222
255
255
219
195
255
255
255
255
255
165
209
207
219
217
255
255
222
214
255
255
247
255
255
237
250
255
179
199
198
183
193
212
202
178
229
151
163
95
103
62
0
53
66
39
8
46
59
0
0
0
0
0
0
42
4
0
88
123
46
18
34
24
40
58
51
85
111
52
0
49
55
28
14
72
54
54
46
47
42
0
0
50
0
0
0
0
0
0
0
0
0
0
41
40
42
49
43
0
0
40
45
42
0
0
42
40
43
0
0
40
44
44
0
43
43
0
0
0
0
41
38
0
0
0
0
45
0
0
0
0
0
47
39
51
53
44
41
149
139
100
70
77
40
49
14
125
170
109
70
68
116
119
42
131
38
129
58
177
140
134
44
33
169
128
66
49
61
100
132
0
136
107
27
129
154
89
88
69
210
148
108
90
56
33
73
40
106
132
46
75
30
34
55
129
100
89
112
112
129
147
145
128
93
87
97
51
144
102
99
137
132
149
142
156
139
123
136
128
160
136
156
140
118
129
147
128
196
173
125
135
227
177
170
161
199
112
147
108
119
216
170
159
211
160
160
177
200
183
169
108
115
168
190
187
201
184
190
191
210
211
206
255
252
255
248
255
191
148
114
147
113
111
96
109
160
130
126
125
127
121
129
135
134
152
137
169
133
190
130
102
115
214
156
196
179
202
255
185
255
208
255
255
210
255
255
255
255
230
208
200
221
219
207
223
205
255
201
187
215
255
255
249
246
230
233
173
179
162
187
184
254
216
173
243
181
104
103
136
37
59
60
51
0
4
46
1
0
0
0
0
0
46
48
43
33
121
120
97
10
84
23
58
80
150
92
24
39
0
2
0
46
58
60
46
57
54
50
0
0
45
48
0
0
0
0
47
48
0
0
0
0
0
0
42
44
42
0
43
43
44
42
40
41
0
40
39
0
36
39
42
0
0
0
0
0
0
0
0
45
38
0
0
0
0
39
40
0
0
0
0
48
37
46
48
43
46
101
182
82
119
96
9
17
86
89
127
15
81
92
186
159
78
53
65
113
79
86
109
109
55
103
169
105
82
129
24
58
162
83
126
112
147
206
111
63
117
141
134
152
128
173
106
121
41
77
95
49
60
18
84
34
76
64
93
111
90
152
161
73
104
161
186
93
66
68
101
60
60
35
73
91
110
67
97
123
141
132
233
197
189
111
182
204
187
160
148
176
214
187
189
65
108
134
109
117
203
206
121
146
161
92
194
163
116
176
200
179
202
190
168
211
193
185
186
156
217
202
208
209
206
201
204
255
243
177
171
121
115
118
77
139
132
91
167
150
154
144
165
157
72
91
151
77
111
114
132
86
163
153
127
208
140
154
216
149
170
222
231
218
209
255
255
248
255
240
255
255
215
229
201
223
198
206
255
251
202
187
224
165
235
240
235
251
201
202
211
221
205
205
206
208
189
188
97
120
159
107
63
77
54
6
6
50
2
0
0
0
0
44
46
0
0
84
128
72
104
84
87
89
88
82
115
88
104
53
81
35
11
11
1
0
47
37
43
0
3
0
0
41
49
43
44
46
46
45
48
46
0
0
41
35
0
0
0
0
0
45
48
44
44
0
0
44
42
0
39
0
0
47
0
0
0
0
49
0
0
0
0
40
45
0
42
46
0
0
0
36
46
0
2
46
47
45
42
45
83
180
109
103
40
20
43
149
105
163
44
78
59
172
135
169
124
80
176
77
97
120
98
66
175
148
80
27
57
12
63
128
54
156
99
97
152
151
87
141
145
111
172
119
90
98
118
72
41
62
47
86
8
107
120
189
56
104
54
67
90
152
117
133
138
103
106
114
77
47
59
64
50
86
122
151
146
135
183
145
160
119
127
228
208
226
198
165
168
165
189
170
145
111
161
169
172
152
163
147
155
122
213
167
194
214
185
118
183
190
145
191
170
178
168
181
241
246
189
240
255
207
204
255
255
211
195
188
161
232
155
88
88
54
57
102
150
110
73
143
153
156
155
151
153
123
192
63
113
80
51
109
150
150
150
210
251
255
255
255
217
170
145
255
255
253
254
255
252
224
199
102
255
196
221
201
197
246
255
185
178
209
218
160
190
223
221
230
243
201
214
218
210
252
255
249
215
169
115
100
66
97
74
50
8
42
50
0
0
0
0
43
45
0
47
67
120
140
119
95
79
93
73
82
90
117
98
74
67
92
7
0
55
0
0
46
0
0
49
0
0
0
41
48
45
42
48
48
41
43
42
0
0
0
0
0
0
0
39
46
41
45
40
42
0
0
43
40
0
44
0
0
0
0
0
0
0
0
0
42
0
0
39
46
47
40
0
0
0
41
39
45
45
0
0
48
44
46
44
92
94
125
162
137
21
8
113
170
117
112
151
118
136
97
132
122
108
85
69
94
118
64
110
183
123
11
38
162
71
114
135
44
230
61
87
87
165
145
58
74
145
115
97
97
132
122
52
112
151
78
71
10
118
101
102
93
112
107
65
84
99
120
117
107
108
125
177
121
65
82
48
82
88
110
154
164
155
141
196
211
255
242
172
197
131
127
131
176
219
206
147
172
80
215
181
116
55
102
161
199
235
187
232
235
156
171
165
221
236
180
149
237
248
236
208
255
248
255
255
255
255
208
206
205
255
185
185
150
129
153
159
94
26
43
78
130
115
73
106
100
85
96
144
86
106
164
52
55
82
46
72
145
222
143
218
202
246
255
202
229
141
163
205
255
189
255
209
255
255
206
209
255
209
255
204
191
253
183
181
194
213
221
184
197
180
219
232
242
190
255
252
215
255
226
244
225
204
118
102
74
94
76
42
55
59
51
0
0
2
44
44
45
47
48
96
138
115
70
40
93
103
59
31
162
155
123
19
6
74
64
0
36
0
49
44
0
51
0
0
2
54
42
0
46
40
48
49
38
41
40
47
0
0
0
0
0
0
36
43
36
41
36
0
0
0
0
39
0
0
0
39
41
0
0
0
0
0
0
43
0
0
38
45
47
0
0
47
40
45
46
49
0
0
0
46
40
53
46
66
119
84
46
114
74
63
176
128
66
68
117
102
94
136
139
33
37
53
79
141
64
40
139
197
72
57
86
215
62
117
110
97
132
84
81
125
157
147
103
65
96
118
87
99
209
118
76
192
165
97
66
27
78
178
150
191
89
152
104
59
47
78
107
91
95
164
148
66
28
16
22
63
66
119
147
151
180
215
236
215
94
144
184
115
176
148
145
145
201
181
166
186
194
188
120
126
123
151
135
160
193
180
185
219
129
155
209
201
220
171
222
186
221
255
255
251
203
247
240
255
255
255
203
204
198
246
177
159
97
153
144
137
25
51
55
65
100
80
82
113
87
119
96
35
132
111
106
72
95
74
78
242
158
217
255
184
255
255
252
222
188
184
212
222
205
255
255
255
255
229
228
231
252
251
178
217
225
162
173
221
221
179
184
186
193
187
239
242
253
255
251
253
200
227
184
230
167
162
109
87
130
75
1
53
40
0
0
0
50
47
50
48
50
27
83
130
127
115
107
47
64
51
109
145
186
76
21
0
0
46
46
47
0
40
40
45
54
0
0
47
0
50
41
4
0
0
0
0
0
44
42
52
0
42
40
0
0
44
45
0
43
45
0
37
0
0
38
43
0
0
48
52
41
0
0
0
0
0
43
0
0
41
45
0
0
47
38
44
43
48
46
0
46
0
0
45
48
39
125
71
180
41
103
50
71
159
167
131
98
119
119
80
0
61
47
15
22
94
126
121
75
138
71
108
96
92
130
73
81
120
132
195
129
155
101
132
152
192
94
87
207
74
0
204
105
130
93
121
96
157
129
21
159
150
171
136
113
133
137
81
133
116
108
197
178
166
96
56
42
16
19
34
113
130
149
191
197
197
186
181
189
206
246
217
115
135
151
140
170
134
197
167
87
92
175
180
117
117
244
255
187
189
130
184
167
209
126
136
212
160
164
242
245
249
251
255
212
214
225
252
244
192
200
199
252
229
213
178
107
99
127
90
69
52
72
114
88
81
40
48
185
126
23
98
137
135
140
68
71
72
201
133
254
140
160
255
232
229
212
249
211
180
244
219
254
255
254
227
250
243
212
210
212
219
156
209
223
200
195
224
161
197
184
185
187
196
252
251
253
246
178
220
245
200
174
200
212
105
87
132
69
5
0
4
0
47
53
50
53
51
64
98
70
73
130
80
110
78
0
0
32
99
187
101
0
67
52
44
45
45
51
0
0
0
51
53
48
49
48
0
0
39
4
0
0
0
0
44
44
43
50
44
44
46
45
43
49
0
0
0
46
44
38
0
0
38
34
43
45
39
38
42
44
0
0
0
0
45
0
0
0
38
0
36
41
42
46
43
46
43
42
42
48
49
47
48
43
80
201
130
38
30
106
130
172
117
148
45
90
155
137
27
86
83
68
4
12
114
66
103
54
46
67
155
82
34
92
80
70
159
165
132
91
174
68
55
91
66
131
85
87
25
169
126
115
181
140
226
90
43
115
180
123
169
179
180
111
152
139
149
140
165
176
140
154
70
59
49
21
68
20
98
121
161
112
141
132
167
153
187
130
166
127
150
106
149
129
173
224
120
147
122
119
133
121
140
188
178
191
135
203
179
68
110
167
167
168
230
229
206
237
189
255
255
255
255
255
213
212
255
205
199
249
235
190
170
124
72
132
103
38
61
41
14
69
118
82
38
15
0
102
88
84
63
133
113
113
64
81
114
158
78
169
196
157
242
255
184
246
195
210
168
166
187
211
233
220
243
230
242
229
171
166
203
216
233
185
182
168
181
165
248
200
163
195
255
209
214
174
224
255
250
191
196
144
138
163
158
79
30
64
46
35
0
43
56
54
58
84
131
66
120
129
119
42
0
9
0
43
0
0
0
0
44
44
9
0
0
48
54
45
0
0
0
0
48
47
0
0
0
42
0
2
39
43
50
42
44
46
0
39
0
0
41
43
41
38
0
6
60
47
39
0
0
0
49
46
0
0
49
44
45
0
0
0
40
46
0
0
0
41
38
45
46
0
47
43
43
42
42
40
41
42
42
45
48
109
149
130
52
43
35
70
148
127
150
102
84
54
42
93
164
79
38
16
21
84
69
117
43
34
132
60
86
0
82
58
133
133
164
128
82
141
74
88
143
144
108
79
35
22
155
186
234
104
88
175
100
58
51
200
37
134
128
108
41
64
65
148
140
169
183
170
145
62
64
41
74
109
69
71
97
129
91
115
125
197
142
108
110
198
142
130
92
97
143
197
158
103
124
141
139
138
98
191
173
199
125
125
205
81
152
142
155
121
242
152
193
166
175
210
254
207
222
255
255
255
220
212
233
245
180
149
117
153
94
115
110
86
48
14
33
15
20
21
2
60
26
53
89
76
40
109
110
70
49
82
91
82
111
47
212
136
179
210
176
153
215
228
145
141
147
157
224
209
156
152
202
202
255
164
159
161
210
171
232
190
198
211
244
217
157
194
201
197
201
213
242
255
254
255
185
183
129
129
155
143
77
55
91
92
30
72
4
0
28
116
122
73
72
129
125
108
32
0
0
7
47
48
0
3
61
76
34
5
51
0
0
50
43
0
0
0
0
44
0
0
45
47
47
39
6
42
42
43
41
0
0
0
0
38
35
36
43
38
35
42
56
59
44
39
41
44
0
0
0
0
0
55
0
0
0
0
0
45
45
0
0
0
36
33
41
0
0
45
44
0
45
44
43
42
37
34
42
47
139
127
138
130
119
112
86
103
150
146
98
147
78
73
57
47
103
91
56
58
96
119
80
37
15
82
52
88
45
20
156
118
78
70
71
147
128
125
42
56
125
75
86
72
56
189
128
124
89
31
180
128
140
192
132
165
154
123
97
41
53
147
115
156
155
135
129
76
40
35
24
97
62
66
131
109
78
100
134
144
129
119
178
229
197
185
132
79
110
185
178
160
199
157
165
146
142
115
213
154
153
153
165
54
183
199
138
181
214
157
235
215
191
195
215
255
221
213
206
255
255
255
255
255
233
171
153
166
131
105
100
107
56
18
26
8
29
42
46
42
93
39
76
21
21
125
59
82
46
84
81
51
114
62
88
120
115
125
225
163
161
145
226
133
116
113
180
184
142
131
139
127
156
187
196
179
161
161
201
155
186
142
172
228
195
205
201
180
172
239
255
246
255
172
210
174
160
144
132
153
80
80
67
58
76
133
137
88
78
77
118
128
75
70
81
133
31
11
0
37
0
4
56
48
51
58
53
37
51
65
45
0
0
0
50
46
0
0
43
0
0
46
47
0
38
59
0
0
0
0
0
0
0
0
0
38
39
45
41
38
41
48
0
0
0
0
0
46
0
0
43
45
46
0
0
0
0
0
0
0
0
0
0
0
40
45
0
0
44
45
44
49
46
44
42
35
0
40
44
64
117
69
133
131
162
157
160
116
129
82
51
46
103
26
0
8
85
78
45
49
60
111
29
70
14
10
97
193
60
141
92
51
122
41
129
158
136
138
56
36
119
24
43
68
171
100
130
173
112
92
86
120
133
121
64
103
61
84
95
154
107
74
79
83
52
86
78
60
27
31
63
139
143
99
95
138
108
168
180
155
206
212
199
195
183
112
201
138
107
169
210
141
176
151
126
110
199
140
167
143
222
79
149
238
183
157
214
145
170
153
227
186
199
192
216
255
208
198
255
255
249
247
193
163
149
128
158
135
116
94
100
34
87
34
22
0
11
77
19
6
81
74
102
36
51
76
59
51
16
75
57
52
103
116
78
128
134
158
176
177
143
203
185
111
159
121
178
205
127
128
144
129
197
196
140
132
135
172
192
207
150
185
144
193
215
172
208
208
177
215
238
255
227
187
167
129
137
112
99
79
161
88
70
70
70
127
130
72
65
121
117
70
91
131
114
12
0
0
44
45
2
0
0
0
34
36
58
41
0
44
47
0
0
0
44
38
0
45
49
52
47
0
0
44
58
0
0
0
0
0
0
0
45
42
43
0
0
0
0
41
43
0
0
0
47
46
0
0
0
47
0
41
0
0
0
0
0
0
0
0
0
0
0
49
51
5
51
44
45
43
49
46
43
0
0
37
41
42
77
121
105
153
85
123
117
87
39
157
147
34
42
77
0
81
0
43
67
173
65
98
153
65
76
34
69
93
101
105
60
115
39
135
115
94
85
93
155
112
128
100
57
47
67
90
39
51
172
151
153
115
65
200
54
112
114
69
80
112
128
108
51
125
101
92
49
28
73
50
63
73
154
148
108
86
108
87
134
195
199
190
205
193
175
136
178
119
98
168
130
115
108
143
120
105
166
119
185
141
181
166
132
214
225
230
119
139
171
112
136
181
204
251
167
205
253
255
211
255
255
180
231
180
156
145
123
141
114
55
73
98
84
24
17
9
0
0
0
49
48
58
13
39
113
31
10
69
60
36
71
81
73
65
97
83
97
168
166
137
121
123
144
185
167
118
124
159
183
160
144
143
122
175
140
148
123
136
147
154
162
142
153
202
187
187
198
207
206
170
199
156
186
226
190
142
183
183
102
116
158
152
142
93
81
81
73
69
69
74
83
132
123
134
128
16
66
62
0
0
0
0
44
55
0
38
45
0
48
46
43
43
46
43
39
0
43
0
0
1
3
0
0
0
0
5
0
0
0
0
0
0
0
47
40
46
0
42
0
0
0
43
49
0
0
49
45
0
0
51
0
0
44
0
0
44
44
0
0
45
0
0
0
0
46
47
55
54
45
45
41
0
0
0
39
43
44
42
41
93
131
173
169
135
80
100
145
55
132
112
100
68
76
46
71
57
69
65
158
79
6
142
106
22
33
85
102
117
93
120
64
130
168
102
62
77
58
91
119
106
154
97
82
20
69
97
119
182
167
176
20
25
147
146
202
0
94
62
116
62
112
99
106
120
54
73
56
48
101
95
134
134
128
98
76
100
153
136
166
204
207
217
178
139
129
101
139
201
183
139
95
176
197
141
141
125
86
194
133
138
80
176
222
185
211
160
208
221
191
139
186
190
210
194
190
243
213
203
255
237
213
206
212
233
193
172
108
74
63
89
70
94
86
16
2
2
0
55
48
49
57
28
27
75
98
40
38
114
35
13
84
67
78
73
96
59
148
160
184
145
122
100
177
115
124
119
111
122
112
119
120
146
176
171
136
128
154
148
174
174
126
131
194
194
195
178
205
203
205
197
167
176
142
196
187
162
181
169
156
155
159
93
139
135
83
81
77
81
126
73
80
131
122
50
0
56
63
52
42
0
0
2
3
51
51
45
49
29
0
49
52
48
42
41
0
0
0
0
2
0
0
0
0
47
0
6
2
42
0
0
0
44
48
39
38
0
0
40
39
0
0
0
0
0
0
0
0
53
52
0
46
0
0
0
49
0
0
50
43
0
0
0
2
52
43
45
0
0
0
44
0
0
41
40
0
38
36
45
93
79
164
178
139
102
118
68
134
140
107
166
48
82
29
76
45
84
103
175
111
65
116
140
98
0
45
96
91
165
144
53
163
70
87
88
91
97
113
123
81
107
148
123
125
57
37
123
60
111
115
25
57
85
129
152
109
68
79
53
52
35
91
101
106
138
150
130
146
95
82
125
76
74
92
88
48
77
148
153
177
167
206
182
115
118
227
216
165
112
110
104
174
199
109
119
173
164
117
116
125
154
149
194
150
233
193
174
227
195
161
173
203
206
255
229
250
206
192
164
195
220
155
127
112
177
145
150
125
109
95
90
64
8
45
52
5
0
0
38
0
0
8
58
72
67
75
49
43
64
42
83
59
19
31
25
28
96
113
118
140
119
107
114
73
138
161
108
116
111
112
111
138
168
178
131
134
183
177
149
155
152
192
192
186
201
211
204
208
214
236
170
147
142
114
166
176
167
154
155
98
95
143
145
141
137
78
76
81
129
131
125
118
86
65
62
6
9
70
93
42
30
20
59
51
0
0
34
55
0
0
38
40
40
0
0
0
0
0
41
44
41
37
48
42
0
3
56
51
50
45
55
0
0
0
41
0
0
2
0
0
0
0
0
0
0
0
0
44
49
47
0
0
0
47
47
0
0
0
0
0
0
44
0
0
0
0
0
0
0
0
0
0
47
40
0
0
45
52
69
102
91
85
122
171
137
116
145
167
76
152
77
59
74
62
47
47
88
176
162
8
77
105
90
15
72
147
40
105
110
93
133
85
133
141
77
73
163
129
81
72
140
126
131
44
19
106
75
85
172
49
99
70
104
128
127
77
34
40
51
33
122
160
159
153
209
195
93
91
140
126
117
63
116
94
45
118
160
99
130
244
192
212
158
162
173
190
160
162
76
135
175
161
106
180
137
179
214
139
132
109
152
182
154
152
152
149
207
195
176
142
226
181
175
255
255
250
235
227
165
157
117
120
97
140
138
81
93
83
73
53
10
0
0
16
73
66
1
0
0
0
2
52
62
56
15
98
95
49
96
91
26
12
24
91
90
113
149
97
177
193
197
111
84
93
155
160
112
110
110
159
124
128
180
178
184
177
181
192
188
132
175
199
152
207
213
207
208
210
222
211
187
183
106
109
110
153
144
149
148
146
139
87
83
130
77
75
132
130
125
115
114
95
84
86
75
26
26
50
54
94
91
79
78
25
17
0
10
6
42
39
0
0
0
0
40
40
39
37
40
39
39
46
0
0
53
56
54
51
46
52
0
0
45
0
0
0
0
0
0
0
0
0
0
0
0
0
0
46
0
0
0
0
44
41
40
0
0
0
41
45
0
0
0
0
38
46
48
49
48
46
0
0
0
0
0
46
52
68
101
63
79
59
160
159
110
144
121
71
115
86
84
42
78
44
74
131
74
123
24
16
30
89
60
24
100
81
86
115
81
137
42
62
24
65
29
53
128
135
90
94
95
86
103
87
92
156
103
109
118
0
7
86
85
78
22
36
29
31
111
130
194
177
149
87
95
68
139
146
139
87
75
54
40
46
131
154
101
145
92
207
159
217
169
155
154
181
119
185
115
221
130
181
154
95
137
184
161
166
89
152
93
186
150
123
158
111
221
209
213
136
225
154
206
235
245
248
252
224
213
160
104
113
113
146
51
58
58
72
22
13
3
30
44
41
83
61
0
0
0
0
50
65
78
31
22
89
42
53
90
99
20
28
100
102
111
141
139
170
178
176
161
97
97
147
145
95
104
160
157
111
128
178
163
178
176
123
125
180
194
120
171
125
130
202
152
201
197
149
143
183
116
106
162
98
96
90
89
144
143
80
78
128
78
75
128
130
128
72
61
61
56
106
105
93
100
36
49
45
89
95
89
91
45
94
78
11
16
1
0
0
0
34
37
0
0
41
38
38
41
46
0
0
38
52
55
54
48
45
0
0
0
43
45
0
0
0
44
50
0
0
49
42
39
41
0
45
42
42
43
44
0
44
0
0
0
0
46
41
41
0
47
0
0
40
44
46
0
0
0
0
0
42
0
0
47
0
34
99
48
32
64
137
73
119
168
55
80
101
120
99
102
68
59
81
88
83
107
49
44
73
87
77
125
78
114
129
55
59
87
88
70
106
123
62
110
86
66
90
21
51
85
85
53
143
116
121
109
66
71
27
74
41
91
79
40
48
75
103
192
178
152
141
73
41
104
141
94
97
121
118
48
33
88
36
153
179
120
208
157
231
191
193
165
213
174
101
141
218
74
76
185
69
101
172
181
126
158
64
225
207
150
187
153
110
178
196
177
213
172
222
210
232
244
198
170
232
242
235
231
174
113
112
149
92
98
77
76
75
0
57
112
118
57
46
67
41
0
0
45
47
69
83
38
28
82
103
63
91
105
40
45
98
55
37
63
60
107
128
177
106
97
143
137
138
138
157
165
162
174
179
185
108
183
174
126
120
121
182
173
176
125
129
137
144
192
136
183
186
133
105
109
160
150
96
90
85
138
83
73
75
75
81
128
127
128
72
75
68
61
60
113
111
106
114
101
53
49
93
52
49
47
53
99
97
77
39
13
2
0
0
38
0
0
0
42
40
39
42
48
0
0
39
50
52
51
44
0
0
49
47
42
44
45
0
0
0
51
0
0
50
38
34
38
0
46
40
41
45
45
48
46
0
0
39
42
47
42
0
45
47
0
46
42
0
0
0
0
0
0
51
47
0
0
50
54
56
108
62
88
111
96
125
142
151
113
97
104
51
101
110
140
110
28
68
156
85
66
47
46
79
80
155
116
114
148
75
125
89
119
220
208
150
189
111
91
53
125
66
110
167
129
91
99
102
51
24
23
87
84
87
64
33
26
75
48
140
120
192
147
143
112
103
85
113
120
125
147
103
88
53
43
46
60
90
146
174
147
176
208
148
118
79
120
102
133
121
174
106
170
72
104
133
221
150
164
74
164
127
129
102
115
105
108
91
157
148
146
155
159
205
212
226
216
168
168
203
196
165
230
107
117
90
41
86
19
4
69
26
64
121
120
116
59
27
0
0
0
45
48
22
16
85
99
93
104
102
57
47
48
56
98
112
93
124
112
145
111
109
101
93
88
76
85
83
155
160
155
171
174
108
119
195
173
123
105
107
162
170
190
140
139
125
190
189
141
178
188
134
104
159
151
97
85
82
136
133
133
127
79
79
133
130
128
73
68
69
122
114
116
114
111
115
112
111
60
65
107
65
64
53
48
41
44
41
49
28
16
9
0
0
0
0
41
42
43
0
0
43
41
0
40
50
50
45
0
0
0
0
46
42
42
42
0
0
46
53
44
41
47
37
35
40
43
45
41
45
46
44
47
42
0
43
43
42
45
43
41
42
0
0
41
44
42
0
0
0
42
0
0
0
48
44
49
0
114
58
59
69
123
70
117
215
156
122
84
136
60
93
88
20
208
137
54
112
80
61
152
166
151
194
51
184
106
150
123
147
45
99
97
73
74
133
183
99
62
83
126
112
127
138
93
89
60
49
194
157
98
36
61
82
57
90
111
100
110
116
126
140
146
150
103
97
107
101
98
142
75
67
47
93
94
36
25
35
125
121
205
191
121
117
81
118
74
132
129
125
139
120
67
126
163
109
84
115
105
165
71
132
185
142
87
139
222
123
175
137
129
115
179
183
226
238
238
202
147
227
156
115
115
153
76
61
110
95
77
43
26
1
4
78
116
117
99
49
0
0
44
2
27
24
31
44
52
25
24
46
43
47
105
125
66
148
136
135
135
150
101
94
91
92
130
76
73
141
89
86
159
108
101
161
159
156
153
98
91
85
105
119
105
134
186
178
143
141
183
177
108
160
156
154
144
83
84
91
89
83
84
137
135
134
71
70
71
71
70
122
122
70
69
120
119
120
71
67
122
121
62
122
116
109
50
56
54
44
35
59
45
77
66
12
55
42
0
0
0
0
42
39
0
0
44
45
42
0
4
0
0
54
49
51
48
0
44
45
44
42
44
0
0
44
41
47
0
37
49
48
43
0
0
0
36
45
46
47
0
44
43
48
38
40
0
0
45
1
0
41
41
0
0
37
0
0
0
31
109
76
30
96
99
99
146
172
145
88
112
155
73
86
51
100
100
71
11
111
112
188
95
60
45
124
148
136
154
142
84
118
82
123
34
75
85
84
107
59
6
58
136
57
116
151
53
47
43
111
58
5
29
54
37
132
151
113
68
60
118
135
118
178
159
128
134
82
82
84
127
124
122
56
38
34
91
86
40
85
219
195
167
108
115
77
89
101
124
47
145
139
142
132
115
87
125
159
101
194
139
95
89
193
112
98
207
204
181
187
127
188
151
144
157
180
156
203
173
197
171
113
154
82
133
64
81
74
80
64
77
46
0
55
75
60
63
47
0
0
0
0
6
12
84
25
52
97
83
20
43
42
59
118
124
62
129
129
129
129
140
143
147
92
93
139
71
75
151
91
87
104
158
150
105
152
155
153
99
93
141
100
113
154
121
168
163
124
122
119
115
155
159
153
152
145
140
141
145
138
85
85
134
131
76
72
70
72
71
70
70
122
70
70
121
67
120
69
66
110
118
66
71
112
113
52
54
107
47
41
107
47
42
29
78
72
9
1
0
36
39
0
40
43
43
44
44
40
3
4
0
0
47
46
49
0
0
46
43
0
44
44
0
0
0
44
0
42
41
0
46
0
0
0
0
42
40
41
0
0
41
42
51
45
50
1
0
0
0
0
44
41
46
0
39
0
0
46
91
101
84
118
129
5
108
120
109
100
85
124
121
83
79
41
106
99
82
170
154
158
83
12
0
127
93
109
115
125
171
91
96
95
72
59
64
195
113
50
40
78
52
39
125
115
133
150
58
103
103
67
91
25
87
138
123
66
56
61
92
89
97
152
145
149
107
132
126
132
84
75
71
68
109
91
33
20
87
93
152
131
159
121
178
161
165
65
100
84
94
145
111
54
149
90
105
104
114
214
122
102
113
183
186
95
135
185
182
197
168
163
155
179
183
211
164
132
159
165
168
201
147
129
87
129
109
74
69
101
71
43
89
44
8
76
59
115
48
0
40
42
3
11
53
38
22
55
87
86
71
93
100
56
124
129
73
132
135
135
84
142
143
93
90
94
148
77
134
154
90
91
148
153
148
98
146
153
153
153
96
146
98
109
152
108
100
151
106
103
104
106
151
158
150
149
146
144
146
145
136
138
135
131
75
70
71
122
123
123
125
73
125
124
72
120
119
119
67
62
109
116
118
124
65
63
54
49
109
51
31
93
91
39
88
32
26
18
61
44
0
40
42
0
42
0
46
44
0
3
0
49
0
42
43
47
0
0
47
41
0
46
43
43
0
0
0
39
0
0
0
0
0
51
0
0
44
38
38
46
0
41
43
53
49
53
55
51
47
48
0
47
42
44
44
42
49
44
45
130
54
0
76
56
8
106
111
116
81
168
108
83
63
21
54
57
47
86
148
173
137
43
48
105
140
59
119
96
168
175
97
69
113
75
74
85
140
185
72
75
93
70
26
186
118
143
146
81
84
107
68
81
138
111
74
64
104
78
87
93
93
143
147
138
136
87
82
133
138
143
84
70
62
103
95
40
33
20
96
163
161
156
137
180
170
90
113
89
112
68
134
128
57
95
72
108
110
138
173
104
74
77
157
182
105
144
103
172
188
172
108
108
109
205
170
178
176
78
119
99
182
136
101
90
67
106
67
81
41
90
83
90
85
22
32
62
118
48
0
0
0
6
61
58
37
79
98
85
86
80
90
115
111
77
133
136
140
91
91
93
145
145
90
89
92
95
92
144
94
88
92
89
147
146
97
92
151
151
154
149
149
151
158
153
155
147
152
99
93
99
101
99
153
145
146
147
144
144
141
134
135
133
76
73
69
70
121
122
121
124
124
124
124
72
68
118
66
64
110
121
64
115
123
74
61
53
43
110
108
94
53
49
42
38
32
23
74
67
7
0
0
45
43
43
0
45
45
0
0
0
1
0
0
0
46
45
0
46
0
41
46
44
45
43
45
0
38
0
0
0
0
0
55
48
0
0
41
39
50
42
0
0
0
0
0
44
50
48
47
0
0
0
42
42
44
51
41
0
100
138
50
119
36
0
90
169
112
81
170
117
141
100
130
67
23
102
94
107
74
70
104
183
161
71
64
57
73
89
59
69
146
145
138
85
179
118
205
144
118
166
51
121
56
113
145
142
67
46
85
116
132
120
59
60
100
148
137
151
69
132
133
96
94
138
130
127
136
86
87
133
119
60
49
45
43
45
30
28
124
76
142
151
178
154
105
79
109
76
81
140
105
102
60
118
96
121
162
144
90
166
94
63
172
166
164
95
113
160
161
114
140
47
88
137
165
121
80
148
155
167
151
117
91
85
64
73
88
89
118
65
104
47
40
47
67
122
43
0
0
0
58
56
78
83
87
84
96
90
42
87
123
124
81
76
79
80
139
138
141
137
137
142
145
94
93
100
95
90
89
90
86
91
93
149
95
97
96
99
149
150
98
151
96
152
147
150
147
142
154
153
152
148
143
92
94
89
86
84
83
80
79
77
73
71
68
66
69
69
69
121
121
122
70
68
117
117
62
56
73
66
64
69
124
107
51
37
109
110
103
51
45
38
42
86
75
79
24
16
7
57
51
0
0
42
39
44
7
0
0
0
0
0
0
48
46
43
44
0
0
44
45
45
40
0
0
0
0
0
43
0
0
0
0
0
40
42
39
50
43
0
0
0
45
38
38
0
0
0
44
40
0
0
0
0
0
0
0
81
75
72
156
34
42
71
104
130
138
154
76
166
94
94
51
77
144
80
95
85
124
147
117
114
45
27
86
90
146
83
107
61
144
107
42
154
146
140
126
114
183
75
66
165
105
118
45
50
99
87
67
101
83
91
109
169
160
174
155
133
123
155
143
88
122
127
139
142
138
86
129
126
72
51
40
93
81
23
12
5
39
102
135
166
163
108
103
153
79
54
106
129
108
118
106
75
104
113
102
154
83
102
103
105
155
97
69
140
124
77
158
47
93
74
151
109
79
81
98
93
112
63
65
74
98
88
146
123
104
122
78
127
82
115
118
67
58
5
0
0
0
73
69
44
82
90
99
104
107
49
107
114
56
63
133
83
94
90
87
145
139
141
146
145
93
94
139
90
93
90
88
142
92
93
94
146
145
141
142
139
141
88
86
79
78
80
82
84
130
143
133
139
140
92
87
83
83
82
82
84
80
132
131
129
126
70
70
124
124
71
71
71
71
71
126
123
122
68
62
64
68
72
68
110
104
56
33
102
103
111
32
38
43
84
82
28
33
33
26
74
74
13
4
59
46
43
48
6
0
0
0
0
0
0
0
47
41
0
0
0
46
45
38
43
0
0
0
0
42
41
43
0
38
46
0
0
48
39
48
39
41
42
44
43
42
51
0
0
44
42
44
0
0
0
0
0
0
0
105
91
87
158
111
40
0
53
110
151
164
131
81
129
70
63
77
101
47
49
124
113
134
103
102
13
53
111
56
210
34
68
85
95
116
69
62
119
113
117
179
98
38
115
108
96
45
25
59
97
82
90
141
151
126
124
149
167
166
178
152
101
151
143
146
133
145
94
85
83
137
71
85
75
96
94
102
96
59
54
75
70
123
84
111
146
110
97
190
166
83
126
142
40
87
118
154
92
86
80
77
93
101
150
158
168
125
144
151
108
78
115
149
82
60
127
109
86
89
99
80
107
98
143
96
144
150
158
92
90
138
134
122
70
66
67
115
50
0
47
46
50
86
33
39
35
85
116
41
59
43
70
112
70
72
86
79
84
88
83
142
136
139
142
138
138
144
138
143
88
87
93
146
145
146
91
92
144
139
139
83
85
88
86
77
123
126
83
82
74
81
122
130
87
95
138
130
84
137
136
135
82
133
132
129
126
125
125
74
126
124
124
72
72
72
129
126
125
124
66
71
119
70
121
120
107
60
33
46
98
98
78
93
90
91
93
47
48
48
38
85
84
18
56
71
56
1
4
6
0
0
0
3
0
0
0
45
0
0
0
0
49
44
35
0
0
0
0
44
44
42
42
44
42
43
43
1
3
0
51
42
44
43
43
42
39
50
48
48
42
42
50
0
47
45
0
0
0
0
56
91
130
130
96
153
130
40
130
147
155
169
117
92
100
66
82
55
80
118
66
149
133
117
93
102
12
4
0
178
106
122
102
168
143
148
0
142
90
137
144
119
92
37
30
39
48
67
52
106
95
127
177
172
130
133
164
189
176
123
151
159
99
145
148
98
94
85
72
85
79
81
71
127
95
51
90
14
72
28
60
131
133
75
148
145
104
179
188
162
114
130
102
115
41
66
156
167
204
134
81
101
90
115
116
131
130
129
158
82
166
151
113
104
81
88
156
98
87
124
63
82
94
106
97
127
83
109
177
80
104
179
103
118
55
63
88
7
0
0
0
13
30
50
42
40
21
57
44
60
51
54
116
120
75
83
83
90
83
85
139
140
139
87
143
143
87
149
147
90
93
96
146
145
143
86
81
84
141
134
134
136
81
80
84
134
130
81
75
83
80
116
97
108
75
145
85
84
135
133
132
133
139
135
79
77
127
76
77
127
127
128
77
76
129
129
113
122
125
62
51
65
125
121
105
46
48
30
42
93
97
83
92
89
50
49
47
42
36
34
96
91
84
53
79
71
13
12
49
36
42
50
0
0
0
47
0
0
0
0
0
39
39
36
60
58
45
43
42
45
0
36
48
41
0
0
0
1
0
0
47
41
37
42
44
38
0
46
39
46
42
50
46
46
47
44
0
0
0
72
22
118
98
148
106
106
66
139
156
83
130
112
49
129
82
68
61
83
102
114
140
108
78
87
53
73
37
47
53
100
118
101
102
76
124
136
129
114
125
131
95
18
12
31
46
54
126
150
159
182
135
127
172
114
166
160
105
161
168
114
114
102
140
144
103
76
78
72
87
82
81
74
129
102
49
88
100
82
7
23
55
92
130
66
101
137
192
74
71
103
112
114
53
100
94
155
151
167
131
148
140
71
131
45
115
161
121
149
85
84
127
151
144
109
126
132
50
94
50
77
86
99
137
55
87
63
105
137
91
98
156
73
112
133
92
53
0
3
38
4
3
107
107
49
41
17
54
59
103
71
110
125
125
138
137
141
88
87
86
86
144
146
84
142
144
92
146
93
93
145
93
90
90
142
139
84
84
141
137
134
130
126
127
130
129
128
135
131
85
133
82
105
170
131
155
84
84
135
134
133
134
87
83
80
78
129
130
79
77
128
77
78
77
78
125
119
126
124
69
71
55
49
55
119
100
47
26
39
93
93
80
89
42
41
39
89
90
89
89
108
112
67
93
88
69
59
61
50
34
36
43
0
0
45
48
0
0
0
0
0
41
42
38
3
0
0
0
42
44
0
0
46
0
0
0
0
0
48
0
0
49
39
0
0
0
0
0
0
0
0
0
46
45
47
44
42
0
0
142
121
77
79
55
100
23
35
120
164
101
156
143
99
90
82
80
51
149
79
103
70
130
75
94
104
53
53
124
13
71
65
27
66
147
107
118
89
140
104
101
33
50
48
48
50
60
147
153
168
132
136
178
166
168
170
168
120
121
138
154
106
143
141
91
99
70
71
77
91
87
136
113
122
115
60
53
98
33
40
23
72
87
54
57
84
124
142
101
128
137
97
58
57
118
104
135
156
118
146
131
187
125
168
163
164
137
88
139
110
113
61
116
128
124
157
100
59
52
79
64
103
77
130
120
152
56
129
126
120
88
167
44
36
34
54
42
0
50
45
21
16
63
109
50
45
18
53
68
100
123
118
76
73
89
87
92
87
141
137
83
144
148
86
91
145
145
142
91
95
92
89
87
140
141
140
86
137
137
137
133
125
128
131
82
135
84
85
135
87
81
106
107
182
94
110
83
135
135
134
82
83
87
84
81
80
131
132
81
79
78
79
80
79
131
123
125
78
125
129
130
119
116
116
66
105
102
27
93
98
53
32
85
32
36
32
27
85
88
83
80
92
25
92
95
66
57
62
57
41
38
38
52
50
51
0
0
0
0
0
0
41
43
42
0
0
40
44
43
44
1
0
0
0
0
0
43
49
47
0
51
0
0
0
0
0
0
0
40
43
39
45
45
45
47
44
42
0
3
138
148
156
141
52
103
153
54
197
55
107
120
152
146
54
84
130
94
39
114
85
137
147
72
66
107
0
76
89
37
144
137
114
122
129
103
73
125
88
43
85
96
105
125
112
99
169
170
186
179
179
128
117
111
152
103
82
86
84
140
137
75
75
143
136
81
76
72
147
100
149
138
64
76
127
106
49
61
26
11
82
73
46
26
117
112
145
74
55
43
45
119
51
122
115
101
53
115
145
192
145
151
171
144
139
153
69
154
134
113
101
108
114
55
43
109
87
68
49
65
74
10
52
59
127
113
157
110
94
136
94
65
102
0
0
46
42
0
51
75
31
51
50
49
39
65
102
55
53
69
49
81
124
80
126
144
74
86
137
137
84
86
139
95
93
92
144
144
92
142
88
87
89
141
140
136
133
132
66
70
124
129
124
129
131
82
85
137
137
86
80
122
72
125
143
90
83
135
83
84
84
86
138
139
138
84
137
86
86
85
134
83
83
81
82
84
129
78
79
123
120
63
120
114
113
109
52
46
51
108
101
98
49
104
49
42
21
17
75
93
130
125
48
101
97
77
74
28
73
60
52
40
50
50
50
0
0
48
0
0
0
46
46
45
50
0
51
42
47
47
5
0
0
0
0
0
0
51
51
51
48
0
0
1
40
48
0
0
0
43
44
0
43
42
44
0
0
0
0
138
95
92
143
18
25
78
163
189
77
143
101
115
128
63
77
116
82
19
58
119
73
146
115
108
41
48
69
73
48
124
122
81
108
99
98
105
92
66
38
88
113
125
143
125
164
179
176
118
164
176
117
111
99
83
90
86
95
84
77
114
116
89
129
126
133
110
72
150
97
147
136
110
129
77
63
111
49
20
42
86
88
68
91
39
67
121
57
91
49
71
40
101
108
117
81
130
137
109
162
126
181
218
93
69
150
87
114
99
114
105
105
112
93
46
84
52
60
37
70
11
4
59
48
67
86
134
106
88
91
65
33
124
36
50
49
38
51
19
16
28
90
119
47
45
124
109
109
57
127
124
79
80
92
132
147
73
86
140
90
91
89
140
143
90
91
147
144
90
86
138
87
89
140
86
80
128
130
62
117
119
134
129
80
135
84
85
85
136
84
81
105
64
109
141
82
85
137
85
85
136
139
137
140
140
138
86
87
88
86
134
83
84
81
82
86
130
128
79
121
117
110
64
110
112
106
45
50
51
106
106
99
49
53
103
97
22
16
22
25
87
112
98
106
51
40
33
33
73
57
51
39
49
50
45
0
0
0
0
0
49
52
51
42
49
2
13
51
47
48
1
3
0
0
0
0
0
0
46
51
50
0
0
51
43
51
50
0
0
0
0
0
0
0
42
0
0
0
0
129
79
122
112
50
39
5
124
147
71
139
115
95
104
109
103
106
131
65
47
80
56
142
110
141
99
63
93
67
101
52
95
67
91
68
40
12
66
85
89
48
77
157
175
160
164
116
124
127
116
111
86
88
86
93
95
78
49
59
81
71
130
140
121
122
128
100
119
147
140
141
133
109
131
130
74
70
42
51
58
74
79
82
76
36
49
29
44
66
47
73
27
48
96
51
84
81
46
128
79
79
44
166
149
123
149
95
91
61
120
27
99
109
102
103
84
62
49
33
29
0
71
108
95
131
151
60
50
125
142
121
87
103
50
37
52
58
23
90
81
37
48
65
102
53
121
105
119
67
124
134
130
87
90
141
145
84
88
141
143
144
90
89
144
91
91
148
142
90
88
140
141
136
135
133
128
71
77
117
118
117
135
136
85
141
88
86
86
137
84
137
134
74
92
169
84
88
87
86
85
136
140
137
141
90
140
139
140
89
139
134
136
84
81
82
81
132
128
127
71
116
116
74
115
109
108
93
51
50
105
115
41
41
42
101
97
30
27
33
42
67
97
116
53
52
102
40
37
77
60
53
37
48
50
39
45
0
0
46
45
49
1
49
41
43
0
11
0
0
0
0
3
0
0
0
48
43
0
0
0
50
0
0
45
44
0
0
0
0
0
0
0
0
0
0
0
0
0
0
118
107
91
93
125
6
19
66
64
127
131
117
79
154
102
122
86
75
132
58
72
61
53
74
165
179
91
102
20
172
25
23
80
82
2
33
69
77
107
97
121
76
142
163
132
172
161
165
160
148
87
69
135
150
86
73
49
55
69
115
61
138
125
123
125
118
51
113
142
133
136
132
126
146
126
116
56
60
56
91
82
82
83
30
98
62
26
36
49
61
104
101
57
92
71
38
66
34
84
60
85
46
80
50
89
83
121
69
50
59
87
97
79
101
107
41
116
93
90
41
0
25
36
27
70
68
72
64
112
93
66
90
9
13
57
70
27
45
107
110
104
129
47
54
56
115
97
130
73
69
125
131
87
131
145
140
147
143
141
141
140
139
87
96
91
90
144
140
88
89
89
141
131
131
129
125
121
129
121
120
64
133
133
80
84
82
79
87
86
85
140
119
141
133
145
142
90
88
87
137
136
89
85
89
143
141
140
141
142
140
135
136
136
81
82
126
82
77
124
129
122
113
119
109
112
114
93
105
53
55
107
84
88
97
100
98
39
40
47
59
53
98
93
90
101
52
43
40
32
17
7
38
48
49
36
51
52
40
55
0
50
51
0
42
37
40
1
0
0
0
0
1
0
0
0
46
43
48
0
0
47
0
44
40
0
0
0
0
0
0
0
46
0
0
0
0
0
0
0
58
113
75
64
111
6
7
17
108
22
124
126
113
114
147
137
118
106
123
120
94
92
70
40
52
40
65
46
91
111
76
34
39
34
25
76
108
66
91
149
145
89
119
174
128
174
167
152
83
70
86
132
157
137
62
56
57
55
127
46
82
76
114
74
115
75
52
70
129
131
134
130
131
96
97
58
104
117
100
91
50
31
46
14
96
32
101
13
46
58
82
101
103
41
38
32
107
110
137
111
104
63
106
42
69
59
90
60
64
78
89
117
40
38
93
101
92
88
108
74
75
14
48
31
47
68
118
107
96
63
67
85
54
36
0
47
110
118
66
57
121
112
119
58
64
106
123
128
126
67
61
86
89
88
85
86
140
146
143
143
88
90
138
142
141
89
140
142
89
88
138
136
79
63
66
75
105
111
120
125
127
77
82
84
136
131
130
133
87
130
136
82
83
88
142
143
137
137
137
137
137
139
87
88
88
140
141
141
89
85
82
133
134
128
79
132
126
126
69
76
120
121
116
118
110
61
47
109
106
107
103
96
96
27
90
89
87
44
55
62
65
112
104
97
89
42
53
50
34
8
57
32
0
0
40
46
51
45
0
51
47
44
0
0
0
0
0
0
0
0
0
0
0
0
43
49
45
52
0
0
0
45
44
42
0
0
0
0
0
0
0
0
0
41
39
39
0
0
0
198
81
65
36
85
64
0
0
143
24
60
147
87
146
99
107
131
156
93
138
84
138
116
107
56
36
42
35
47
102
81
78
15
37
93
107
115
62
103
109
158
151
168
155
164
161
156
88
141
149
84
144
54
84
66
63
55
115
114
55
127
119
58
72
122
65
59
112
83
83
133
126
84
99
83
65
67
113
103
99
104
48
31
35
78
17
38
42
26
119
48
93
113
110
42
37
97
96
119
124
40
104
137
59
103
124
74
76
129
112
143
130
69
88
52
93
97
92
105
103
62
82
72
109
102
152
111
105
92
105
121
95
52
38
25
59
65
72
122
110
66
115
119
116
122
60
71
121
124
120
67
89
143
88
86
86
141
144
139
141
142
94
90
90
142
89
89
141
141
88
136
133
68
60
113
70
68
55
114
126
132
85
83
135
135
136
85
85
130
124
125
87
88
89
140
139
137
137
137
137
85
140
88
88
88
88
141
142
89
86
140
136
136
133
81
74
71
126
123
68
46
57
113
62
46
52
43
58
98
97
101
90
85
36
44
35
17
30
39
56
59
108
103
92
94
29
34
41
47
19
67
41
50
40
0
0
50
44
50
50
49
44
0
0
0
0
0
0
46
42
0
0
0
0
47
50
0
2
49
0
0
45
45
45
0
0
0
0
0
0
0
0
42
42
42
40
0
0
0
21
66
101
41
77
135
48
32
102
152
51
173
103
112
101
96
134
138
122
69
76
131
110
136
76
68
44
89
68
15
69
14
36
29
90
62
87
157
158
111
167
171
169
120
158
80
76
129
162
153
120
138
82
81
60
114
57
62
39
72
63
57
49
51
124
40
113
100
126
111
111
126
89
86
95
81
62
52
60
60
109
92
52
35
89
37
29
13
0
57
106
91
110
120
91
60
53
42
94
111
23
70
59
91
127
144
92
73
119
91
80
103
26
43
45
21
52
28
21
62
71
81
89
79
99
134
97
19
17
90
95
95
70
108
67
70
121
122
57
60
58
71
116
125
118
58
58
58
128
125
135
139
136
142
89
89
90
92
89
90
140
138
137
141
91
88
89
145
142
136
73
64
51
102
99
101
64
70
113
124
80
84
85
84
83
86
139
128
125
80
143
139
87
89
91
93
87
139
139
87
87
89
88
140
140
139
142
141
88
138
141
135
83
73
72
68
66
115
111
59
122
123
104
46
46
60
53
48
35
40
36
89
22
108
82
80
45
57
55
46
105
109
116
98
89
12
0
0
3
6
7
47
48
40
0
0
0
0
0
0
45
43
0
0
0
0
0
50
42
48
43
0
0
57
46
43
38
53
53
0
0
43
37
42
47
0
0
0
0
0
0
0
43
44
45
42
0
0
0
72
37
39
70
129
108
166
108
105
59
76
118
166
77
124
62
36
83
141
143
133
119
126
121
42
102
77
41
64
18
67
66
38
55
114
134
91
144
162
158
158
159
153
144
135
61
56
113
166
142
76
73
156
74
62
65
54
50
44
69
62
59
51
45
121
45
109
97
120
103
51
69
90
120
94
134
44
51
116
59
110
114
39
110
74
23
70
52
65
53
62
107
44
108
94
77
43
40
85
101
51
55
45
82
80
73
65
150
57
105
96
45
29
23
44
27
56
29
23
51
63
91
8
64
39
52
32
16
22
47
77
77
81
100
115
118
115
112
50
60
57
120
62
68
111
109
56
64
71
123
135
139
138
145
91
90
91
92
89
141
141
137
85
140
141
86
87
145
88
75
64
55
98
96
44
101
106
79
67
127
81
83
85
86
84
81
131
139
135
133
135
140
88
89
91
93
139
139
87
87
87
89
88
139
138
138
141
140
138
86
79
129
137
125
128
67
59
98
89
51
39
47
23
15
28
58
57
47
44
46
27
41
79
103
59
50
92
92
48
44
52
110
120
105
51
28
4
0
0
0
0
44
43
37
48
0
0
0
0
0
41
43
0
0
0
0
45
48
38
4
35
51
52
56
37
0
37
49
51
50
43
42
0
41
44
52
54
46
49
0
0
0
42
43
44
42
0
0
0
120
88
88
119
112
116
82
122
184
72
99
114
115
111
140
65
73
68
89
147
139
132
106
41
119
79
75
63
33
12
73
78
50
83
135
146
111
166
181
165
154
138
119
138
145
138
85
139
133
109
61
92
101
69
72
72
46
45
54
113
113
109
56
50
117
109
54
41
115
51
51
57
85
45
105
122
91
108
118
110
114
112
49
106
86
82
79
58
63
72
52
65
90
104
101
84
44
27
26
98
107
30
81
71
67
89
95
124
99
60
39
47
53
21
19
43
111
92
92
103
97
75
1
128
41
53
24
73
80
99
18
62
80
83
107
113
109
52
52
56
109
115
63
61
106
112
60
72
65
68
81
140
146
147
93
92
91
143
86
139
143
141
143
139
86
86
85
90
82
117
109
51
42
42
46
58
110
131
126
132
136
138
86
139
137
78
76
81
135
133
138
146
93
90
88
141
140
88
88
88
88
87
87
85
84
136
88
138
84
84
83
77
82
115
114
53
37
67
47
3
46
13
9
54
12
39
43
45
55
44
79
94
88
45
58
103
101
98
106
100
106
57
118
109
56
36
10
3
51
0
0
0
0
0
0
41
0
0
0
0
40
0
0
0
0
0
0
0
39
5
35
48
55
0
33
37
40
45
47
49
45
43
50
43
42
48
53
52
0
5
51
39
0
0
43
44
0
0
0
179
85
152
186
138
115
15
41
187
113
92
129
128
51
111
120
83
98
97
75
132
82
118
73
116
110
70
65
65
73
87
95
123
100
94
138
145
150
138
142
94
106
103
90
97
91
145
155
57
60
118
98
50
72
125
122
41
55
64
107
111
100
108
61
62
119
104
43
52
43
97
46
72
72
114
94
98
63
118
112
121
105
116
43
52
96
79
59
50
82
15
56
88
55
55
122
93
72
34
28
107
40
72
53
49
95
132
112
91
56
57
38
47
28
26
108
105
97
97
102
65
78
75
103
45
108
79
70
76
77
72
56
72
17
101
109
99
42
110
102
108
108
119
55
100
115
115
69
68
71
79
87
94
148
147
92
143
142
138
139
144
141
144
139
84
138
135
135
73
106
106
105
98
49
54
119
124
131
133
137
139
140
87
138
137
134
81
75
130
134
148
94
145
141
139
140
141
89
89
141
141
138
137
135
82
81
86
136
82
82
149
132
65
29
67
8
0
42
44
45
39
47
61
59
9
15
62
77
112
87
95
96
99
49
47
94
111
61
63
59
114
113
115
112
54
44
23
65
55
4
0
0
0
0
0
42
46
0
0
0
0
0
0
0
0
0
0
0
44
49
45
45
48
0
37
39
41
0
44
0
49
47
53
44
42
44
47
0
0
0
46
45
0
0
43
0
0
4
6
150
44
108
113
148
89
83
128
83
65
136
156
115
66
70
58
129
179
164
114
110
121
96
96
92
67
38
66
6
52
51
103
129
103
108
165
158
100
96
153
101
100
89
104
95
130
82
103
83
77
119
84
37
80
67
60
40
119
69
52
58
40
103
120
57
121
50
47
38
79
86
42
58
54
116
69
54
68
64
62
74
70
103
109
93
30
3
4
6
80
65
93
88
112
110
105
87
77
49
4
28
107
91
54
42
168
74
74
102
8
83
47
101
93
76
113
44
41
36
97
32
71
80
95
97
97
36
10
17
0
24
55
66
14
45
106
37
85
115
44
55
52
123
104
42
115
115
61
77
77
79
84
90
149
148
146
144
142
90
91
92
85
140
138
133
85
81
128
117
97
104
106
106
110
113
122
135
134
140
140
86
86
88
138
136
139
140
139
78
80
91
142
141
139
141
92
89
89
89
89
89
137
136
134
133
80
85
83
132
133
111
91
87
73
60
2
0
46
61
46
55
0
58
10
60
56
35
52
111
79
113
48
57
58
62
98
46
104
106
123
72
66
63
63
108
112
96
29
7
4
0
44
42
0
0
43
47
46
46
0
0
0
0
0
0
0
0
43
50
40
55
44
0
0
0
0
37
0
0
48
52
50
50
43
41
43
0
0
0
42
37
50
46
44
0
0
0
0
0
103
157
111
92
27
67
183
95
122
198
125
137
131
56
85
38
169
70
136
135
90
91
94
68
77
25
29
70
84
50
118
82
147
148
148
148
100
103
91
145
99
107
89
64
97
87
79
80
68
60
122
117
50
81
61
77
91
120
61
64
111
113
59
62
51
44
51
26
72
81
34
43
72
57
56
62
82
68
66
72
64
67
68
93
67
8
0
0
0
4
16
13
75
95
81
101
79
51
34
23
43
52
126
45
81
101
111
112
145
73
41
42
102
84
98
54
50
75
47
35
98
98
35
33
124
74
16
71
77
67
15
16
0
14
38
44
48
117
116
57
43
44
97
103
38
53
114
64
75
135
140
93
87
92
146
145
93
95
94
146
90
82
137
139
126
129
66
47
106
93
102
99
56
117
70
77
137
87
88
87
87
90
139
137
135
136
136
138
90
91
92
141
142
142
88
89
142
89
89
92
89
140
133
124
123
125
81
79
125
87
61
53
61
0
44
0
0
53
1
52
0
0
0
0
49
40
38
40
62
80
49
59
52
90
93
106
99
117
108
79
61
110
54
63
114
119
107
101
28
17
9
56
55
67
59
46
51
53
45
0
0
45
0
0
0
0
0
0
46
45
47
0
0
0
0
0
0
0
0
44
51
0
2
0
46
43
47
0
45
44
0
0
46
45
0
0
0
0
0
107
94
107
180
62
159
113
71
94
176
129
146
199
15
68
57
171
61
102
113
83
77
72
64
78
25
55
12
80
87
113
129
147
114
110
149
145
95
107
91
96
93
71
76
91
72
67
90
64
64
68
64
54
123
114
72
99
122
114
104
115
116
49
59
53
37
83
67
69
24
34
80
84
117
29
40
31
67
70
73
110
72
55
31
6
7
0
0
0
8
21
13
24
93
84
97
93
56
40
21
58
97
103
26
119
83
120
79
106
113
75
106
55
39
45
49
49
57
48
24
56
40
41
83
101
125
45
18
88
76
68
73
52
22
26
36
53
113
109
100
44
38
49
98
49
49
63
84
70
88
145
147
91
91
93
145
93
148
146
145
92
79
130
135
123
125
111
41
49
46
107
108
64
125
129
133
137
137
144
137
83
88
139
141
88
83
134
85
142
144
146
144
145
92
88
141
143
143
91
90
136
83
76
116
119
126
131
127
109
58
51
52
0
40
41
48
0
2
7
53
0
0
0
45
40
39
39
42
44
52
35
106
97
85
93
100
113
73
71
123
64
58
66
105
114
62
97
90
52
33
20
58
54
65
73
52
48
49
46
48
49
45
44
39
40
43
45
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
2
0
43
43
49
44
42
0
0
0
47
47
51
47
0
0
0
84
120
105
140
90
122
53
91
104
105
125
49
72
105
55
113
125
105
46
162
84
123
40
65
33
64
21
47
76
131
146
162
111
103
104
159
158
157
102
83
83
80
70
159
124
67
69
80
63
67
63
65
62
71
52
52
112
116
61
41
63
118
102
104
97
73
69
14
16
67
79
65
103
102
79
64
71
61
68
62
61
58
42
67
56
3
0
1
4
16
25
17
24
90
93
100
107
48
36
27
80
94
48
19
129
82
115
89
78
75
31
50
42
32
41
43
45
39
62
33
105
43
38
39
92
95
25
26
33
28
71
81
56
78
22
87
93
101
46
41
48
29
46
92
101
111
74
147
74
92
147
147
147
90
93
145
145
148
147
144
144
133
128
131
64
118
107
49
53
53
112
68
72
79
134
136
83
134
140
137
135
136
139
140
87
83
81
134
139
142
92
146
147
145
88
89
142
140
90
83
128
77
68
117
72
75
119
106
29
7
54
52
0
0
0
1
50
3
11
0
0
0
0
44
39
42
43
47
40
41
66
98
98
92
101
98
115
73
82
67
114
59
63
109
110
98
35
26
42
47
87
65
47
50
73
68
54
47
48
48
50
47
49
43
47
48
50
45
0
39
0
0
42
0
0
0
0
42
0
0
0
0
0
45
47
41
49
44
0
0
0
0
0
0
0
42
0
0
0
116
92
91
79
101
195
99
117
80
114
130
80
84
73
92
147
91
107
85
142
148
142
48
48
40
45
59
103
95
134
99
163
163
163
112
159
144
136
68
79
137
143
144
96
115
139
80
59
66
69
59
119
119
69
52
45
116
107
110
35
57
64
69
102
90
65
23
68
68
10
76
66
89
105
95
79
84
59
111
57
66
31
31
51
53
0
0
5
10
22
75
26
22
82
92
96
110
84
27
36
32
119
33
19
54
91
90
108
77
13
63
38
22
73
46
49
48
25
69
95
93
104
29
49
36
23
101
73
87
82
72
85
64
78
34
100
81
44
43
97
107
25
95
92
101
131
88
140
136
94
146
145
149
143
146
93
93
148
148
143
143
83
128
75
56
108
106
99
50
65
122
129
79
83
137
138
82
84
83
89
142
137
87
85
134
133
81
82
140
142
92
95
148
146
89
140
143
139
140
131
71
67
66
73
76
54
38
19
0
10
50
0
0
2
2
6
1
5
10
0
0
40
43
45
0
0
0
48
0
0
3
38
50
40
95
90
112
122
85
85
58
52
97
124
112
95
46
33
22
52
99
76
42
37
58
76
70
51
47
0
47
47
50
45
50
52
60
54
46
40
0
0
46
50
45
42
47
0
0
0
0
0
0
0
1
0
48
44
41
0
0
0
0
42
46
0
0
0
0
96
58
87
97
72
49
126
195
13
110
195
121
127
139
146
140
113
65
138
85
132
141
120
31
59
21
18
73
110
89
103
103
155
157
156
150
94
94
133
138
85
92
160
122
115
139
126
68
67
119
58
118
118
115
113
108
105
102
106
86
99
107
116
60
55
73
15
69
68
10
75
76
76
90
68
51
114
111
52
58
56
63
72
0
0
0
0
8
15
23
19
33
69
75
83
85
99
77
24
41
51
74
13
88
88
97
65
119
92
37
64
40
31
84
94
59
57
20
62
92
33
107
79
48
39
88
140
13
89
85
72
30
21
26
88
104
70
42
85
109
112
83
47
48
111
93
147
129
94
94
144
145
150
145
96
94
93
95
97
145
90
80
71
67
48
100
105
90
42
128
132
82
137
85
86
87
82
88
135
144
95
88
87
83
78
132
82
87
143
145
95
94
147
146
90
142
95
86
88
129
124
60
119
119
113
70
17
3
0
7
0
0
0
0
0
7
3
5
6
0
0
0
45
47
0
0
0
0
0
0
4
31
48
26
28
80
104
117
128
85
66
65
41
58
79
48
47
43
39
103
103
85
46
0
43
66
79
62
49
0
42
44
47
44
49
51
68
64
50
41
0
0
49
0
45
44
48
49
0
0
0
0
0
1
4
0
46
42
41
46
0
0
0
44
47
42
0
0
0
108
85
77
25
11
94
121
187
132
128
134
163
197
97
149
66
129
255
114
76
119
155
145
99
59
71
66
118
110
102
106
165
157
159
157
149
90
86
85
77
90
82
74
70
121
118
93
59
115
116
113
110
102
62
94
108
93
56
52
33
89
87
102
86
83
3
67
64
63
3
2
66
71
65
91
57
108
99
53
46
57
55
0
7
0
61
22
23
25
84
29
31
61
85
85
87
62
95
36
34
66
46
48
47
4
93
66
155
93
39
94
86
16
46
127
43
57
35
56
42
41
38
45
22
46
108
73
38
33
92
15
17
33
84
85
54
92
123
31
135
114
61
119
123
81
82
140
139
96
144
144
151
147
98
99
95
93
94
96
151
89
62
47
49
95
93
49
71
58
76
84
93
146
89
88
91
87
134
136
130
77
85
139
86
82
80
79
86
141
142
90
93
146
145
90
90
143
77
79
118
117
119
103
56
55
4
56
51
6
0
1
0
46
52
0
1
2
56
1
0
0
51
0
0
0
49
0
0
40
38
0
17
39
9
37
91
71
86
97
118
127
67
121
38
20
114
110
101
95
114
110
85
54
45
49
0
0
78
71
2
46
48
46
54
48
44
60
57
53
41
0
0
0
1
0
51
52
0
0
0
0
0
3
0
0
0
0
34
37
35
0
0
0
42
0
0
0
0
0
102
42
162
114
48
64
73
102
73
93
20
136
175
155
125
50
170
173
2
59
134
152
89
87
19
46
38
82
109
94
161
160
160
158
152
141
86
85
88
94
88
126
125
53
125
94
95
108
63
55
110
115
106
59
53
48
88
28
39
50
84
80
46
32
81
64
59
62
8
7
7
61
69
73
26
47
47
44
44
72
50
4
49
50
57
61
17
37
38
81
92
78
78
69
93
105
89
78
88
35
47
54
79
89
31
56
65
153
45
70
85
88
3
82
107
54
67
45
107
107
30
51
40
38
82
83
76
89
86
73
6
19
90
83
97
48
70
80
121
82
79
81
139
140
145
147
95
93
95
147
148
149
150
94
95
148
95
93
147
144
83
65
103
40
105
110
55
81
131
81
89
144
142
88
89
88
90
141
137
135
81
135
134
80
85
84
82
141
95
96
147
142
145
95
91
90
143
120
58
70
108
108
68
58
52
58
51
42
0
7
0
0
0
0
43
4
6
8
0
0
37
44
55
58
0
0
0
0
45
0
0
7
22
24
85
86
71
61
75
112
127
118
112
115
30
93
117
104
98
109
104
94
42
51
44
0
0
50
96
26
0
0
40
50
50
47
47
0
41
53
55
0
0
0
44
43
0
0
0
1
41
47
49
51
0
0
0
47
38
37
36
0
1
43
37
44
0
0
0
102
57
64
122
89
123
0
95
70
92
93
146
94
203
105
74
76
51
54
88
95
124
74
28
78
28
101
87
134
151
158
155
101
100
94
140
141
136
133
83
80
125
107
49
79
56
101
73
61
113
114
52
41
54
100
110
92
29
88
98
31
28
88
33
83
63
63
62
8
7
8
10
9
20
30
91
34
35
16
56
52
1
49
52
7
13
79
32
39
94
32
71
66
32
44
37
84
27
36
53
46
52
79
90
89
102
102
119
42
60
29
50
37
83
104
106
64
50
61
60
43
31
17
97
79
41
22
86
83
84
78
78
47
51
58
58
127
139
83
85
83
86
142
142
146
96
149
147
96
96
149
149
150
94
148
148
95
145
144
140
76
53
91
51
108
115
64
135
134
137
91
92
144
142
90
89
143
141
83
132
131
83
78
77
84
90
91
144
146
147
93
95
94
146
92
89
135
126
61
45
26
97
6
10
58
53
51
45
43
0
0
0
0
43
38
48
0
1
0
46
40
0
0
54
45
0
0
39
44
48
0
1
16
71
77
79
66
52
8
45
128
122
57
58
50
11
128
119
104
110
99
90
48
55
0
42
0
0
21
94
0
7
53
45
45
0
0
3
36
48
53
51
49
42
44
0
0
0
0
53
44
50
46
0
0
0
0
44
41
45
43
0
0
0
35
43
0
0
43
105
82
51
97
126
151
55
78
0
54
146
47
11
65
102
125
135
116
86
63
68
103
94
30
88
65
86
83
142
100
154
151
98
96
92
139
136
130
71
123
69
70
92
95
77
60
47
82
62
57
50
51
49
103
98
111
94
30
85
90
31
29
79
86
84
63
66
62
60
8
8
10
9
72
30
35
27
23
0
49
54
52
52
56
13
20
84
38
45
104
37
18
15
43
40
25
78
26
31
65
43
50
82
41
98
96
84
33
92
50
43
55
108
120
64
101
55
52
63
61
45
37
18
102
78
108
23
36
26
36
95
92
57
66
71
69
79
90
146
141
141
92
145
144
147
98
98
96
97
97
98
98
100
96
149
148
95
145
89
135
122
47
34
118
115
122
127
138
139
141
145
92
93
91
91
141
142
139
81
128
128
78
79
77
84
93
95
94
146
146
92
97
94
91
87
81
124
76
61
21
0
81
46
11
8
49
51
47
40
39
0
0
0
0
0
0
0
0
49
0
0
0
47
50
53
0
45
36
43
49
0
46
60
63
73
77
72
57
6
24
69
122
56
52
69
9
51
71
119
107
54
39
0
47
47
39
0
37
42
81
0
0
0
0
0
43
44
9
36
45
0
0
0
40
44
0
0
41
42
52
47
51
44
50
0
0
0
0
44
50
46
0
0
0
35
40
44
41
40
39
95
52
106
137
56
126
48
83
55
194
16
19
148
14
43
103
188
136
43
61
124
102
25
40
43
101
110
139
98
150
149
152
148
94
138
125
68
66
62
58
66
43
107
126
57
47
80
55
49
47
52
103
103
99
99
38
30
82
84
32
29
77
83
29
14
63
62
61
8
61
63
69
76
25
33
27
12
3
59
56
54
58
60
70
76
86
104
105
102
103
79
31
39
33
27
22
78
76
113
40
100
91
45
51
93
81
30
95
100
51
56
116
103
118
43
42
50
56
52
95
103
29
59
74
114
24
39
21
86
96
55
63
73
79
129
81
88
92
92
145
149
147
145
97
98
150
98
98
98
99
100
100
97
149
96
94
144
86
131
121
107
46
76
74
130
137
89
142
145
96
93
92
90
91
140
87
85
83
128
126
122
82
82
138
143
144
148
147
146
93
93
92
88
76
120
119
66
53
66
0
15
42
57
2
0
0
0
0
0
42
46
42
0
0
0
0
41
53
0
0
50
48
49
51
45
47
0
0
0
0
0
51
56
67
72
79
16
64
7
50
58
55
48
70
45
9
53
135
116
57
19
0
2
0
0
0
0
34
49
55
39
38
52
51
48
43
7
0
47
0
0
0
40
44
38
45
42
44
49
47
49
43
51
48
0
0
0
45
50
44
0
1
0
39
37
38
41
40
154
68
101
169
65
93
53
60
48
23
86
115
53
57
80
67
97
122
130
154
117
95
90
61
34
46
123
107
132
100
148
147
148
137
89
80
118
73
71
66
62
62
71
81
110
41
52
50
51
51
57
89
32
98
88
38
32
32
82
79
29
81
82
71
17
21
59
64
62
63
64
66
69
75
69
65
4
5
10
8
57
63
19
15
82
84
61
96
92
106
88
84
85
40
42
38
27
89
85
102
35
44
58
57
55
93
17
64
43
102
100
55
119
98
109
47
38
55
44
39
108
106
33
59
18
97
75
84
17
51
29
53
72
96
144
136
87
91
86
93
145
96
146
144
95
147
148
151
100
99
100
99
99
96
147
144
142
138
73
65
123
130
81
134
142
142
142
144
144
145
95
94
91
142
90
85
81
80
140
132
79
117
79
87
148
147
147
145
147
145
88
77
74
110
100
102
115
74
69
10
0
6
0
43
37
65
0
0
0
1
55
57
41
0
0
0
0
46
51
42
44
45
53
49
38
0
0
0
0
0
53
0
0
48
71
73
84
82
74
57
9
19
103
52
54
69
61
27
60
118
112
34
3
0
0
0
38
48
49
40
39
50
52
42
40
44
0
0
0
45
0
2
0
41
0
43
53
44
48
0
0
0
43
53
48
0
53
46
0
51
0
11
52
0
49
39
35
44
44
89
133
71
113
126
0
76
68
95
136
60
92
88
107
109
85
48
97
161
153
164
146
104
73
75
70
109
110
155
147
146
95
148
136
84
79
74
128
73
121
124
118
67
71
54
97
54
42
108
53
42
92
100
41
37
94
33
83
83
29
80
80
80
70
12
19
15
65
64
65
66
68
65
68
60
61
1
10
63
7
8
64
72
67
89
37
47
86
33
53
86
85
37
47
42
35
87
90
36
43
34
41
61
62
59
52
30
68
49
110
105
98
109
99
119
49
39
60
42
37
100
114
53
93
26
93
84
30
81
51
41
101
132
147
98
134
89
95
93
147
146
97
95
145
94
146
146
98
100
100
100
99
98
94
145
90
139
135
125
67
129
135
139
138
142
145
140
92
143
142
94
94
141
140
89
82
78
75
82
76
80
125
133
141
148
96
97
144
144
89
78
72
59
31
94
104
101
57
58
59
48
57
4
46
39
67
48
43
1
48
53
58
51
0
0
0
0
49
48
47
43
48
0
44
0
0
0
48
48
0
52
42
43
46
75
75
86
92
85
64
6
63
96
109
54
114
137
56
40
117
109
6
67
13
0
46
38
49
41
39
35
54
67
49
0
0
0
0
50
44
43
2
0
0
0
47
57
44
0
0
0
0
0
0
0
44
54
0
0
0
0
5
0
42
47
47
43
44
45
138
137
99
129
124
69
68
130
114
86
86
67
94
111
81
98
42
96
10
164
141
125
49
19
91
97
114
122
68
140
143
95
98
89
136
132
79
126
73
71
80
120
109
71
65
64
121
53
51
59
47
91
103
39
44
96
33
83
84
30
27
80
75
18
10
16
75
66
65
66
67
70
65
62
51
13
11
15
68
14
10
11
72
67
42
41
21
32
32
46
97
89
50
49
36
33
42
36
35
86
34
38
60
118
63
64
57
119
108
118
89
96
65
106
109
99
38
60
40
36
94
108
57
86
89
44
42
30
94
92
54
102
138
135
99
77
138
148
98
148
95
96
96
147
145
144
93
97
100
100
100
98
98
145
92
88
137
133
129
73
85
86
140
142
87
95
87
92
89
140
145
93
140
139
88
81
128
124
76
72
133
132
139
144
145
145
147
91
90
85
69
124
48
11
41
55
86
50
56
60
0
56
5
0
0
15
0
0
56
48
51
61
62
46
0
0
0
50
46
52
0
0
48
39
48
0
40
44
49
48
51
38
45
45
65
64
77
91
87
15
61
63
91
113
106
67
72
87
31
41
81
21
0
0
0
45
43
2
0
39
51
61
84
63
40
0
42
47
55
45
40
0
0
0
48
50
8
0
0
0
0
0
0
0
0
0
2
0
0
0
39
0
0
34
43
52
50
43
45
133
100
34
131
45
134
59
50
142
157
122
76
100
84
80
56
147
90
78
132
131
102
117
105
76
45
48
99
61
88
143
147
91
91
88
135
135
133
135
129
74
69
70
116
67
65
63
50
62
110
40
45
99
39
90
84
31
92
29
25
23
25
25
20
20
75
69
75
70
10
23
72
61
9
7
9
0
13
17
20
64
18
65
79
43
34
83
36
36
51
88
104
61
93
97
54
45
55
28
25
48
39
65
63
60
63
88
106
109
69
38
45
103
119
60
41
51
103
100
96
50
56
85
82
51
35
33
90
50
40
70
101
132
95
97
94
144
144
146
94
94
95
96
148
143
150
99
98
100
99
99
99
150
149
87
84
138
135
141
92
91
93
141
145
96
97
96
145
147
143
135
140
146
119
86
77
140
122
79
80
137
143
146
142
104
98
94
133
82
76
107
91
61
10
57
116
51
7
2
46
20
2
0
2
8
16
0
0
51
54
54
55
65
60
0
0
0
37
40
56
0
0
52
49
0
0
0
1
49
48
0
0
48
44
47
52
68
24
77
60
55
8
74
120
113
68
61
67
124
25
6
96
0
52
0
0
0
46
45
46
0
0
6
94
45
0
53
48
45
48
51
0
0
0
0
0
0
2
0
0
5
0
0
0
0
0
41
0
42
40
35
0
0
42
36
0
0
0
0
135
110
63
56
0
87
81
90
104
91
73
159
102
95
118
79
171
125
66
65
154
144
109
90
79
25
49
105
132
85
87
91
144
96
92
136
132
127
129
129
128
74
74
120
123
59
51
53
109
99
38
42
92
38
89
33
33
83
25
26
22
24
25
23
74
23
25
20
15
19
28
72
63
10
7
15
60
71
25
27
74
75
75
34
27
80
82
93
92
44
88
102
99
101
104
48
50
52
32
25
49
45
60
117
59
65
104
114
111
69
43
45
101
117
119
40
47
97
105
102
104
106
91
34
37
34
79
102
58
54
77
56
139
99
149
146
93
93
94
94
147
147
96
96
145
151
99
150
152
151
151
150
151
149
137
81
137
138
91
94
93
94
142
143
93
97
96
144
146
142
136
140
141
68
134
128
83
68
130
133
138
144
151
149
146
92
96
91
65
67
91
99
39
74
61
103
50
6
2
43
51
13
0
0
10
1
0
0
0
51
56
57
64
60
49
43
45
45
47
3
1
0
43
46
0
0
0
0
44
47
1
0
42
46
42
46
56
60
60
59
49
53
67
109
116
65
49
55
122
29
11
6
7
0
0
0
0
0
0
43
0
0
0
33
14
48
58
53
48
48
0
0
0
0
0
0
45
48
0
0
0
44
42
0
0
39
47
50
41
40
38
52
0
43
37
0
0
0
0
68
73
78
68
66
141
204
80
88
7
59
157
116
137
86
91
153
109
74
64
139
191
114
90
94
38
65
102
94
80
83
140
144
147
92
86
131
128
126
127
127
73
71
74
116
58
50
54
106
39
89
95
36
38
87
35
88
89
35
36
24
23
27
80
78
26
31
17
16
80
82
21
65
63
10
21
15
67
75
76
77
86
81
36
25
82
91
46
40
90
97
101
95
106
110
49
57
100
42
25
51
104
105
121
110
64
67
69
61
115
103
48
46
61
125
92
43
92
111
108
108
104
99
39
45
48
28
103
106
122
135
114
144
99
149
147
94
94
95
147
95
96
149
97
94
99
151
150
151
151
98
97
149
148
85
81
137
142
96
97
95
95
143
141
142
94
96
89
91
90
137
139
82
122
76
78
80
71
132
137
142
94
151
149
145
85
84
88
46
53
24
112
73
93
54
79
49
3
55
48
38
13
0
0
14
0
0
0
0
0
55
55
59
55
48
44
50
52
3
1
52
0
40
44
2
0
0
38
42
47
0
0
41
44
41
0
0
0
43
54
43
0
57
88
94
61
50
98
40
76
66
0
8
44
0
0
0
47
48
0
0
0
43
70
35
51
5
3
0
0
0
0
0
0
0
0
46
43
0
44
39
38
40
49
40
36
0
50
41
40
41
57
42
0
0
37
0
0
0
205
91
148
123
70
110
72
55
118
98
55
180
171
82
67
90
80
124
135
170
230
119
155
100
41
32
30
99
121
70
85
91
142
138
87
87
135
133
131
124
68
67
69
72
111
116
57
56
47
47
104
102
44
41
37
91
94
41
42
38
32
36
34
83
86
87
19
25
34
79
72
87
71
73
20
21
63
71
30
80
42
42
79
90
101
104
97
96
44
100
103
103
111
53
109
59
63
106
119
90
109
116
45
123
60
63
72
123
118
101
118
118
49
49
115
102
48
46
112
108
65
104
109
54
59
36
49
58
84
91
140
122
146
147
148
148
97
97
148
149
149
150
150
98
97
152
151
151
99
98
97
95
146
90
93
143
144
144
150
98
97
144
144
139
141
84
92
86
85
85
86
84
75
130
130
92
89
92
148
147
149
92
139
137
121
62
105
86
40
32
21
56
88
119
62
47
3
0
45
59
52
45
43
7
6
0
0
0
0
57
51
51
0
50
48
0
0
44
3
0
49
48
0
44
0
0
0
47
47
41
0
0
45
39
47
0
42
42
41
40
40
42
0
47
67
8
60
65
3
64
63
12
0
6
0
0
0
0
0
0
0
0
0
0
32
84
0
0
0
0
0
42
41
47
0
0
50
0
42
44
52
49
50
48
50
47
0
0
39
44
47
50
46
48
0
0
0
0
0
105
136
92
171
101
130
141
58
74
80
28
224
139
126
120
172
68
116
125
163
201
84
73
66
20
35
41
103
119
69
82
89
138
138
88
89
81
79
79
75
74
128
131
67
128
109
101
61
48
52
107
51
98
44
41
95
96
38
39
33
30
86
37
88
91
90
23
34
43
78
74
91
76
26
25
75
12
22
33
79
46
40
92
50
100
101
84
96
52
104
94
53
56
59
110
105
115
110
73
106
112
116
49
119
64
63
69
75
66
56
71
124
101
94
110
106
102
52
56
108
69
53
63
65
70
38
61
59
90
97
147
131
149
98
147
149
150
150
149
149
150
150
151
151
151
153
152
153
100
98
148
94
145
88
95
146
145
143
96
95
146
89
90
138
142
136
90
90
87
85
89
87
81
137
84
97
148
100
100
97
97
139
132
127
35
50
107
78
95
25
72
98
45
115
49
0
3
0
43
51
48
48
49
0
0
0
0
0
0
58
51
0
0
2
2
0
0
39
2
43
56
49
44
43
0
0
0
0
46
38
0
0
42
45
46
0
42
43
42
36
45
46
0
0
50
44
49
4
0
69
11
0
0
0
0
0
0
0
0
0
0
0
0
48
17
38
3
4
0
0
0
46
45
48
0
0
0
0
44
46
59
55
69
48
47
0
0
0
40
44
0
0
0
0
47
0
0
0
0
168
166
158
171
118
117
161
41
55
118
51
189
153
17
36
114
63
221
157
104
123
26
80
87
79
103
41
30
52
68
74
80
83
84
86
89
83
82
130
131
133
133
79
72
79
55
109
113
56
59
111
53
99
100
46
98
97
75
79
35
50
55
37
96
96
90
91
41
48
82
33
39
81
30
30
83
22
26
35
78
47
98
103
109
54
98
87
48
54
101
104
60
59
59
113
109
115
111
73
121
115
62
56
63
67
108
64
76
57
66
73
126
99
89
58
55
98
55
53
60
74
54
72
79
77
53
66
115
138
98
151
138
150
100
95
98
151
151
98
150
150
151
152
152
100
101
100
101
152
150
96
93
92
142
147
144
144
91
93
92
91
87
90
138
141
139
141
96
91
87
94
93
143
143
144
96
149
150
97
94
93
80
114
57
28
55
57
38
38
74
69
100
98
106
46
0
0
4
0
0
41
48
47
0
0
0
0
0
6
0
46
48
0
1
3
0
0
0
4
40
53
52
50
0
0
0
0
0
47
0
0
0
0
0
44
51
42
44
42
39
51
49
0
0
0
49
52
51
0
63
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
17
5
1
48
0
47
48
48
44
0
0
0
0
0
57
54
68
49
49
0
0
0
41
0
0
0
0
0
0
45
0
0
0
111
134
127
93
91
99
105
179
50
113
96
58
86
83
95
70
165
206
73
125
55
51
74
80
84
116
131
41
44
69
69
74
80
129
134
89
86
138
129
136
137
132
70
135
66
60
128
111
118
116
116
110
102
103
49
48
98
112
113
54
48
93
88
102
99
90
107
44
48
87
43
88
83
32
31
90
83
37
98
86
56
55
108
108
69
47
102
105
103
97
123
68
68
54
115
120
114
111
122
132
117
60
60
60
70
46
59
127
98
71
74
74
97
86
60
54
43
56
105
66
77
56
80
89
62
52
62
129
146
95
152
139
148
99
95
150
100
152
150
98
98
99
152
152
153
153
100
102
151
149
148
145
91
142
145
140
141
91
142
141
90
85
141
137
88
91
141
101
94
142
151
98
150
146
147
146
149
146
145
142
141
75
96
89
46
70
54
52
30
73
70
109
98
99
0
50
41
63
5
51
0
0
42
3
0
45
45
44
11
0
0
42
0
0
0
0
0
0
7
39
43
56
61
55
0
0
4
0
0
4
49
6
57
52
0
2
44
45
42
43
54
0
0
49
0
1
42
0
52
50
56
0
0
0
48
46
0
0
49
49
0
0
0
0
0
2
78
56
2
0
0
44
48
0
46
42
0
0
0
51
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
127
103
193
115
7
173
72
136
120
83
165
99
68
68
140
49
153
170
111
104
21
86
143
138
29
71
136
98
55
46
58
55
70
78
136
134
97
90
143
140
86
82
132
133
71
76
128
119
119
116
112
112
64
66
100
99
55
59
106
108
94
41
91
102
97
56
50
59
87
47
43
96
43
42
37
96
91
102
49
98
107
109
68
67
48
39
104
106
50
55
116
120
121
113
64
68
59
123
112
73
113
115
60
66
64
33
49
64
107
115
80
112
96
47
52
107
50
44
44
64
112
61
126
135
130
110
69
75
149
145
143
142
145
98
99
151
151
99
99
97
97
98
100
152
153
152
154
101
147
154
144
138
145
88
95
96
125
144
94
93
83
138
143
146
89
107
132
142
101
88
142
95
82
148
90
142
138
139
151
99
66
126
106
72
24
68
105
27
24
25
78
64
49
61
7
6
63
59
58
58
9
49
0
0
47
46
44
4
2
54
47
0
0
0
2
0
0
0
0
44
45
2
0
46
0
0
0
0
0
0
39
47
0
44
51
0
0
0
0
0
1
53
0
0
0
0
37
0
60
52
50
48
0
0
0
56
1
0
0
0
56
28
4
0
0
0
89
54
52
47
0
45
48
0
52
51
0
0
0
0
4
8
59
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
105
114
130
56
97
44
122
74
71
12
114
97
36
142
67
142
122
192
163
180
118
187
47
9
187
36
6
56
126
120
125
62
46
54
116
129
79
82
140
90
91
90
87
83
80
129
126
123
118
116
70
67
67
55
126
70
53
60
108
111
105
108
111
118
111
111
49
46
60
52
52
56
56
105
99
60
111
117
65
112
114
115
60
113
41
37
41
57
59
66
73
74
74
70
69
69
69
71
114
79
121
119
63
67
64
42
47
55
55
110
124
61
47
46
63
114
124
123
40
67
121
115
119
117
128
105
132
133
146
94
94
94
96
150
99
99
99
99
99
150
151
151
100
99
99
99
151
98
97
88
133
139
136
88
90
97
85
135
86
90
142
95
87
139
86
88
110
132
143
89
70
74
112
65
72
60
68
50
36
52
70
64
75
125
67
33
21
148
62
32
132
20
119
84
66
95
11
81
54
60
20
50
7
46
41
34
7
0
54
48
69
65
54
41
0
0
52
51
52
0
0
0
0
55
58
0
1
0
41
0
37
38
0
39
0
0
55
54
7
5
58
0
0
50
0
41
48
1
0
48
49
46
51
0
0
41
41
46
44
0
62
42
51
58
48
44
1
73
53
41
0
0
52
0
45
48
46
0
50
58
12
56
58
60
0
0
1
49
0
0
0
0
0
44
43
0
0
0
0
131
77
150
80
166
40
163
75
38
17
118
107
53
115
113
225
51
92
69
185
107
122
137
100
127
85
18
23
119
127
118
62
49
96
99
118
128
131
82
86
140
139
83
85
138
130
128
129
122
120
128
68
65
121
123
67
67
116
61
61
110
114
118
118
110
110
106
51
67
53
59
59
113
112
58
118
117
123
72
119
116
69
59
61
42
41
43
61
117
124
74
77
75
74
71
69
73
120
115
79
71
120
63
66
63
50
48
52
58
104
70
63
47
45
117
106
126
130
93
121
127
67
66
111
130
53
134
135
147
94
95
97
98
150
151
99
99
99
151
150
151
152
151
98
99
99
96
148
95
93
150
138
125
83
141
92
87
85
135
149
89
97
143
157
100
123
80
108
144
73
84
73
112
58
35
99
118
78
68
45
65
127
94
100
0
41
137
160
110
57
227
58
62
65
128
140
29
70
74
77
0
5
8
36
0
4
0
52
54
47
8
57
60
61
66
47
53
53
49
50
0
1
0
50
0
54
53
42
0
0
0
43
45
0
0
49
0
0
0
0
0
0
0
48
44
48
51
53
42
48
50
0
4
4
13
0
0
0
48
36
15
30
38
58
1
49
0
33
66
38
46
42
0
0
0
48
54
0
47
51
61
58
52
58
1
0
51
45
50
45
46
0
45
44
43
43
0
0
0
152
122
187
79
101
74
151
101
42
9
67
95
164
75
138
233
153
10
39
167
124
163
110
145
82
66
81
83
105
120
96
109
127
106
48
49
69
124
80
85
140
140
137
140
91
84
81
84
76
126
131
70
66
78
125
67
72
123
69
66
115
118
70
63
108
111
64
64
122
108
66
60
117
120
69
69
119
127
76
124
118
123
114
114
48
48
50
67
70
126
125
130
129
128
125
71
74
67
117
76
73
68
116
65
63
59
103
51
61
43
62
58
98
99
121
104
128
128
96
118
129
124
64
57
78
56
82
137
148
147
96
97
99
99
151
151
151
151
99
150
151
100
150
149
152
97
94
144
130
97
102
87
126
122
137
139
88
150
138
90
84
158
153
159
175
130
61
115
141
96
80
68
48
126
130
96
101
110
66
37
147
95
9
70
114
117
159
72
81
0
229
72
100
58
121
164
79
152
121
78
137
0
0
0
0
0
0
2
47
51
4
1
10
64
69
46
54
53
48
52
8
4
50
52
0
0
0
0
0
0
0
46
44
48
55
49
40
0
0
0
0
0
0
0
47
5
0
49
43
0
52
0
6
5
0
5
6
3
0
0
1
2
52
2
5
0
0
36
85
40
44
43
47
50
0
54
9
0
0
0
9
60
46
51
52
44
0
0
48
46
47
47
43
45
45
41
0
0
0
132
187
153
98
80
144
81
42
86
115
155
83
131
137
63
56
73
3
128
74
172
186
37
121
48
46
108
67
50
122
106
71
122
110
55
37
50
106
76
81
85
141
142
88
92
88
87
91
83
81
134
124
70
127
134
79
71
127
127
123
120
69
70
62
109
115
73
77
124
116
125
117
71
75
79
125
122
79
77
73
67
122
116
116
107
107
60
73
73
73
124
132
132
131
128
128
75
120
122
73
76
69
118
67
66
66
108
53
65
85
103
50
95
104
122
108
128
117
101
110
74
80
58
58
75
113
82
86
148
148
96
97
99
100
151
151
151
151
151
150
151
100
148
95
99
147
90
85
66
145
88
90
85
141
144
127
127
82
87
84
152
162
95
150
162
82
82
163
151
33
99
37
113
140
134
34
83
72
71
56
136
57
3
96
116
131
125
144
89
39
189
146
142
129
72
177
77
137
107
71
172
83
42
26
23
48
0
2
0
3
51
45
0
36
34
0
2
54
0
4
0
0
42
49
49
0
0
0
3
0
45
44
41
50
4
0
41
47
0
0
49
51
0
54
51
9
49
46
45
52
52
3
4
0
0
0
0
0
0
0
0
45
28
0
2
0
0
23
43
51
43
46
47
51
0
0
0
35
44
5
59
57
44
0
0
50
0
0
47
46
48
51
44
47
0
41
0
0
0
146
179
62
102
167
102
27
8
82
180
118
56
77
202
81
27
16
86
63
49
113
106
138
195
101
58
57
102
58
75
122
82
56
44
67
63
49
48
57
64
121
132
85
86
140
142
143
146
86
85
136
77
130
128
135
83
78
76
129
75
73
73
71
67
117
71
79
80
128
126
130
126
130
81
83
129
76
81
78
75
71
119
118
116
114
112
121
77
75
73
127
82
85
82
81
134
127
124
129
123
79
124
122
123
122
124
113
108
69
75
101
98
90
104
115
105
120
100
107
104
69
88
49
60
67
118
136
88
95
149
147
147
150
101
151
151
151
151
151
97
150
151
147
145
97
143
135
77
130
138
84
87
87
167
95
67
63
59
99
140
149
116
115
158
83
68
138
164
148
54
45
34
190
131
64
32
41
59
149
126
107
56
72
82
110
137
73
140
34
150
196
160
117
150
113
114
89
116
153
12
94
161
83
85
71
57
0
3
9
0
37
34
0
47
47
0
0
49
0
4
56
45
0
0
0
6
54
0
0
0
42
40
42
54
0
0
34
37
44
0
52
53
0
54
54
2
46
0
48
52
0
3
0
42
0
39
0
0
0
0
0
53
82
0
0
0
0
52
40
17
0
0
50
49
0
0
47
40
50
55
48
48
49
0
0
0
0
0
0
0
47
50
48
0
0
45
0
0
0
127
134
138
177
64
50
68
16
164
127
77
118
126
115
50
40
71
86
75
80
147
88
161
54
0
92
39
22
108
85
118
50
69
59
96
139
67
52
46
98
95
94
98
94
136
82
139
138
133
131
88
85
87
135
83
134
132
136
135
80
80
130
87
128
134
83
131
133
81
136
137
138
139
86
86
139
86
85
82
135
135
123
69
124
121
120
131
78
128
132
82
84
86
87
85
81
130
126
126
134
134
128
127
125
128
116
108
111
112
83
52
42
86
86
107
37
52
93
64
36
66
87
61
66
56
133
146
142
94
151
145
146
146
99
103
152
143
153
95
88
157
95
86
139
66
90
87
130
153
127
76
166
120
48
101
62
100
56
210
152
84
128
155
78
123
86
100
165
100
100
64
0
106
134
84
37
0
185
96
152
118
112
110
137
149
99
87
124
141
229
128
107
142
61
60
64
47
0
70
53
1
0
75
77
94
69
75
8
72
67
59
42
70
61
31
30
0
0
86
56
48
39
52
5
2
37
0
0
44
50
49
49
6
4
39
0
0
57
58
35
43
49
52
44
72
44
48
47
55
52
0
1
45
0
0
44
41
48
50
3
20
4
77
43
47
43
0
50
2
40
0
12
4
0
8
64
50
50
67
51
41
39
0
0
0
0
0
0
0
0
0
45
47
50
41
42
0
9
0
142
71
59
73
131
83
96
117
215
145
189
146
69
50
123
36
40
125
31
79
104
58
8
97
24
78
55
164
110
114
123
125
30
100
105
64
108
76
118
101
97
84
62
101
56
131
142
151
131
133
140
90
92
85
136
135
86
141
139
85
85
136
88
132
136
135
134
83
86
87
140
139
142
90
141
90
143
138
135
135
135
72
70
125
123
71
82
81
131
135
137
138
140
139
138
135
130
75
76
134
138
81
81
131
132
119
115
116
64
35
42
44
24
33
48
49
53
40
66
42
116
144
116
66
56
79
145
142
145
146
145
146
94
94
94
145
143
95
145
93
148
140
102
94
138
83
88
99
101
41
97
168
11
78
82
115
127
161
92
162
152
147
77
58
156
186
69
107
167
156
0
70
117
41
64
46
0
166
169
89
19
39
114
121
85
145
123
118
253
222
189
176
78
54
65
68
9
69
29
102
0
81
60
93
59
56
101
0
105
34
11
10
47
56
96
103
9
0
14
0
60
0
2
0
38
39
35
47
0
0
46
53
52
0
0
0
1
55
45
45
46
52
48
41
8
42
52
51
56
51
49
50
48
44
47
43
41
46
31
0
12
50
84
34
45
46
41
42
32
95
54
53
0
0
0
55
50
50
63
52
46
40
0
0
0
0
47
48
0
0
0
0
0
46
45
0
0
4
2
136
87
54
36
98
60
113
93
207
137
136
53
117
112
71
77
24
42
15
77
45
55
81
64
75
115
125
184
148
66
135
109
120
117
100
106
124
56
78
64
55
34
99
26
35
74
129
133
138
142
139
138
84
86
137
136
89
143
142
141
88
87
139
136
86
136
137
88
90
91
91
142
145
147
143
144
95
140
135
135
82
74
124
127
126
127
84
83
133
137
139
90
90
140
140
137
131
130
81
82
139
136
137
82
82
120
120
119
118
94
37
50
15
32
41
58
55
42
70
106
113
147
122
66
58
78
91
140
142
141
145
146
94
142
148
144
148
145
148
84
135
129
70
95
135
123
67
46
104
71
95
126
27
146
177
88
82
153
153
122
164
70
90
132
110
166
53
122
52
121
60
128
25
77
66
58
127
144
72
60
66
52
127
204
131
119
137
79
255
211
195
161
140
149
93
64
71
48
95
162
0
58
41
125
70
0
0
0
115
74
64
26
0
56
62
108
56
65
0
0
0
0
6
0
0
0
0
0
0
0
0
3
46
0
0
0
0
51
46
0
0
56
45
43
49
44
56
1
52
50
48
48
49
47
45
44
43
44
38
45
80
87
97
38
43
0
0
42
42
104
0
54
50
46
0
0
48
50
56
49
48
40
0
0
0
0
49
55
0
0
0
0
42
42
46
42
0
0
0
47
90
64
19
116
106
106
89
152
178
122
91
118
96
60
68
0
43
22
72
75
27
37
26
0
107
173
135
139
101
74
94
40
63
111
147
108
94
118
65
56
56
49
61
52
52
106
122
127
136
84
137
133
85
87
86
140
142
89
89
90
141
140
89
90
138
89
90
93
95
146
143
93
96
143
92
95
139
134
82
80
77
74
77
129
131
85
136
134
138
88
92
91
88
142
140
133
135
138
84
85
137
138
135
134
122
122
119
119
108
44
54
17
27
39
55
56
45
73
65
108
143
76
117
60
77
88
136
137
87
144
141
93
142
149
137
145
136
94
68
129
94
95
113
119
85
67
131
130
200
132
77
87
120
183
86
81
186
92
90
199
75
67
109
189
103
89
151
92
104
169
182
35
72
119
96
140
137
113
39
91
139
148
101
106
39
54
60
255
173
158
179
161
103
133
56
130
0
43
0
19
0
58
152
133
75
155
16
14
68
21
44
0
0
36
96
88
116
78
0
0
0
58
51
1
48
52
58
0
0
0
0
43
44
0
0
0
54
55
53
0
56
47
49
45
50
6
52
44
0
50
49
47
45
44
46
45
44
57
33
53
100
74
1
43
0
0
0
56
108
0
0
1
2
0
38
48
53
50
0
0
42
38
0
46
43
50
61
55
0
0
0
0
41
43
43
0
0
0
49
53
76
22
136
101
129
95
110
231
87
134
84
42
6
17
17
66
59
60
128
17
0
79
49
66
203
175
100
150
119
44
49
76
154
107
149
152
84
81
69
100
54
43
44
98
104
102
104
112
124
133
130
83
90
89
86
88
140
90
92
90
142
93
143
141
91
92
94
96
147
145
94
95
143
90
92
138
133
80
79
80
130
79
80
82
84
135
133
137
88
93
92
89
91
141
137
87
90
85
86
87
141
139
85
129
74
123
123
75
107
107
74
71
37
47
59
46
67
64
103
81
79
65
63
75
81
78
80
136
140
134
144
93
89
122
84
76
89
48
82
101
64
142
113
37
44
137
121
97
66
88
105
76
105
98
60
138
90
73
207
100
69
55
124
104
62
61
110
40
233
94
0
79
82
70
157
100
53
71
42
62
126
84
91
82
59
35
246
170
132
170
127
95
27
24
159
17
100
32
58
13
95
136
43
112
145
21
88
168
12
83
33
32
65
168
67
33
49
61
53
54
51
44
0
56
61
52
52
0
0
0
0
45
31
0
55
5
51
54
46
3
47
50
42
0
4
50
43
51
53
53
45
41
45
48
48
45
34
43
44
29
0
6
45
42
47
0
42
96
8
0
0
57
0
40
53
62
52
0
0
0
43
52
48
45
48
58
53
44
0
0
0
44
38
0
0
0
0
62
81
68
121
161
128
98
64
90
107
140
137
147
42
29
99
31
80
159
100
117
129
33
13
20
116
60
100
135
97
117
94
44
78
130
145
119
134
70
102
134
118
96
110
85
121
92
52
116
87
91
99
105
116
72
76
84
138
138
143
93
143
94
93
91
150
143
97
96
149
151
156
155
150
99
94
91
89
85
85
137
140
136
83
83
85
85
136
134
138
88
88
142
143
92
141
137
89
137
134
87
91
90
94
94
92
86
142
72
88
117
120
87
34
32
24
45
33
60
55
105
65
73
68
118
121
117
65
121
118
76
67
86
87
83
66
89
88
126
87
62
80
61
98
95
154
205
128
118
88
71
164
50
105
96
143
124
90
83
87
199
145
88
50
63
165
87
73
189
115
38
53
29
58
33
252
118
165
89
110
0
143
88
29
33
32
23
196
124
59
113
137
180
94
0
0
33
172
106
77
39
44
83
118
0
78
75
42
37
216
33
10
91
46
62
148
52
169
0
0
51
71
49
58
10
0
50
42
49
60
0
48
49
45
43
48
42
40
49
0
0
0
0
0
0
2
45
0
0
49
54
55
0
0
0
45
47
44
40
47
48
0
44
45
44
45
46
0
5
58
83
12
15
0
50
52
52
12
0
0
0
0
47
46
45
50
0
40
43
0
0
0
43
46
0
0
0
0
0
61
73
63
109
158
140
83
145
158
109
183
134
139
92
105
86
85
91
172
76
78
124
15
25
9
125
102
35
135
133
122
54
62
113
146
145
126
88
70
95
70
80
116
113
75
120
67
67
57
20
41
70
85
102
109
62
80
134
135
140
141
139
96
93
143
153
90
99
96
150
154
160
108
102
105
98
92
90
87
88
140
142
138
84
83
85
138
137
135
87
89
139
142
144
144
140
137
87
133
132
136
140
137
92
93
91
139
146
67
80
119
133
94
52
36
14
32
28
68
60
109
115
122
122
119
66
60
62
67
57
125
66
84
81
75
60
79
76
100
170
62
82
73
93
161
168
218
45
152
45
50
97
56
103
140
115
136
203
53
37
191
104
83
47
74
136
114
86
68
103
130
151
30
113
154
10
73
151
131
47
16
111
99
18
10
43
68
227
112
43
118
142
187
35
16
0
29
120
99
146
25
76
32
51
81
68
23
22
61
121
45
0
115
0
80
39
47
48
83
0
17
91
49
54
0
0
43
50
45
52
0
2
0
44
37
45
50
47
49
40
0
0
3
49
6
5
40
0
50
47
52
53
55
57
42
0
45
43
52
1
0
0
56
50
44
41
47
6
0
0
47
1
45
53
53
53
0
2
0
0
34
41
45
42
42
52
45
0
0
0
0
0
41
44
1
0
0
0
0
55
81
97
136
94
183
170
183
71
117
168
195
74
90
89
110
105
93
65
63
103
172
138
39
61
178
108
44
63
166
61
49
78
164
127
147
38
36
110
92
67
73
128
168
131
114
13
121
112
0
101
75
88
23
110
53
93
116
74
89
105
135
94
84
148
95
94
146
122
141
107
109
158
107
122
115
108
157
98
98
99
144
147
103
88
73
94
90
137
95
85
135
132
152
138
92
94
88
89
148
142
145
137
144
88
97
144
90
62
82
72
129
102
99
13
38
25
39
57
110
130
96
76
107
123
54
55
45
71
47
62
52
104
76
80
123
147
154
121
158
131
32
132
37
193
219
117
70
18
32
103
45
45
140
59
86
137
66
33
33
130
100
63
161
50
105
158
138
165
102
45
29
120
57
179
79
61
103
143
31
11
154
151
32
25
62
61
229
97
27
74
129
182
43
96
73
63
40
127
122
96
27
107
32
36
9
58
9
36
189
98
66
171
85
43
23
168
0
157
41
36
51
24
0
48
38
0
48
63
59
47
47
44
38
0
1
42
48
55
34
0
0
0
43
10
50
0
45
47
50
47
50
54
53
51
0
0
0
8
4
0
0
0
0
0
44
57
32
14
14
48
5
0
0
41
0
0
6
48
48
42
46
40
43
50
59
46
0
0
0
0
0
0
47
48
45
0
0
0
55
93
118
97
99
145
164
105
55
141
162
88
52
86
121
125
119
125
159
80
107
164
101
54
39
132
126
128
154
87
101
77
59
129
125
92
51
63
85
84
48
98
129
142
85
38
41
114
80
84
107
104
54
59
39
53
138
148
110
87
65
55
46
99
66
101
89
124
127
108
84
127
159
165
128
130
122
108
98
155
110
153
160
107
105
92
90
97
140
83
87
152
97
88
80
65
82
73
83
148
138
143
138
145
144
132
152
64
83
62
129
124
103
122
4
86
80
34
51
104
69
91
118
112
88
43
56
103
135
123
37
105
160
154
146
128
153
133
97
122
104
85
99
24
190
191
139
177
37
0
137
82
47
79
97
69
44
61
89
33
157
91
78
115
76
35
55
161
159
180
39
93
103
98
55
124
163
194
78
129
116
48
77
74
41
12
46
175
116
103
66
96
198
50
31
106
0
88
175
0
80
10
136
34
53
88
134
25
43
213
102
88
79
139
120
34
148
59
57
142
0
56
21
37
0
45
49
46
53
50
51
0
39
40
0
1
50
51
46
0
0
0
0
41
55
48
0
0
54
48
46
45
48
49
0
52
0
1
0
0
0
0
0
5
11
6
27
78
4
3
49
52
0
0
0
0
0
10
52
48
42
47
42
42
0
53
41
41
42
44
45
47
0
0
0
0
0
0
0
119
134
110
90
153
117
168
53
94
128
47
94
87
143
86
61
69
209
111
44
79
117
83
145
10
28
113
173
130
161
57
62
75
71
85
80
56
5
93
55
26
87
86
142
110
67
125
87
76
121
157
143
114
56
84
122
111
75
79
62
68
50
50
57
139
146
139
107
81
97
133
164
172
160
175
171
145
156
115
173
160
156
163
155
160
148
138
151
96
89
133
134
84
78
70
56
78
77
141
143
138
141
139
145
144
148
83
54
75
122
112
130
108
120
23
84
90
80
93
99
50
81
43
53
80
92
96
111
153
124
116
127
91
132
142
164
129
94
45
138
111
87
199
12
144
137
194
174
115
53
47
167
119
129
56
81
129
144
85
32
152
55
125
34
97
0
0
1
186
67
28
87
38
91
10
69
143
186
130
111
102
106
56
56
114
149
120
162
78
70
169
104
190
144
35
43
33
97
107
161
29
0
191
62
18
151
112
0
58
131
150
72
97
55
4
119
128
137
75
53
187
50
74
59
0
50
53
47
0
44
53
41
37
46
2
0
52
54
0
0
0
40
0
3
51
49
0
0
57
49
0
0
45
46
40
49
1
0
45
41
0
41
0
59
43
42
22
0
47
44
107
49
47
0
0
41
48
65
4
48
43
46
0
0
0
0
41
45
0
43
44
0
0
0
46
0
0
0
0
135
156
189
127
42
96
113
157
48
22
60
84
136
179
53
79
30
185
72
129
98
147
93
195
68
89
58
116
55
205
91
81
101
133
153
7
107
40
122
54
22
101
147
138
126
79
118
128
95
166
205
125
115
95
121
107
120
98
18
71
98
38
94
55
120
108
134
92
90
88
158
122
171
177
149
168
170
97
119
121
151
155
153
152
150
86
94
74
65
91
93
72
74
81
64
68
88
152
158
89
140
140
90
143
142
117
140
61
142
112
107
117
126
66
88
84
103
76
84
96
35
30
27
44
26
83
91
107
97
122
137
118
86
101
130
147
189
123
101
102
73
74
191
116
103
156
167
181
81
105
25
35
72
94
84
124
255
122
98
86
133
105
147
85
62
61
25
54
33
77
91
29
76
55
1
18
80
153
118
84
69
138
65
51
221
83
207
108
13
49
182
65
166
119
124
21
96
89
121
165
149
95
83
92
0
122
86
3
134
117
141
139
80
84
0
144
192
60
118
152
79
108
51
95
20
0
50
52
0
0
50
39
41
0
2
0
0
53
0
0
0
0
0
55
50
0
0
0
0
1
52
46
46
47
0
0
0
0
43
42
47
45
0
0
37
65
7
0
47
0
112
51
56
39
0
43
49
60
3
0
44
0
0
37
0
0
46
48
44
42
44
47
37
35
0
45
42
0
0
177
150
167
138
126
34
107
109
219
162
17
59
73
0
74
97
139
85
20
125
178
112
123
61
56
155
135
39
72
105
103
14
108
66
100
187
128
96
66
44
128
124
146
119
104
76
46
44
180
116
170
77
64
52
109
121
97
131
147
126
111
162
71
88
119
83
200
164
109
116
114
149
89
79
103
80
53
70
93
87
87
72
59
124
69
68
45
93
69
88
158
86
129
111
127
115
179
159
85
68
129
125
89
91
95
52
129
85
121
95
58
128
96
52
89
91
107
85
77
89
60
30
73
31
25
34
108
79
155
56
8
23
92
125
69
157
1
138
69
55
144
60
97
82
148
141
217
142
143
19
123
108
144
160
123
119
66
21
98
98
0
52
43
76
46
50
63
86
113
172
108
75
58
107
47
156
132
90
151
77
71
178
76
76
117
221
255
140
194
59
182
88
107
100
94
50
101
0
128
105
148
109
83
17
117
138
39
4
0
105
109
99
79
76
21
24
197
221
51
31
52
118
96
79
180
70
56
6
0
0
41
42
0
2
0
0
3
0
45
7
3
4
0
45
43
0
0
0
0
48
46
48
47
45
0
0
2
49
46
41
39
0
0
30
34
47
0
0
0
0
92
54
50
44
39
45
0
0
0
0
0
40
0
0
0
40
43
47
44
42
43
46
52
0
4
56
54
40
34
106
153
111
113
114
176
155
225
84
100
87
99
117
78
80
164
159
48
72
53
149
135
119
59
64
83
177
152
84
120
141
69
108
46
128
147
96
125
90
57
112
132
230
193
132
67
91
43
157
139
171
68
32
0
19
40
92
117
62
116
92
84
101
25
81
59
156
80
134
93
82
109
68
143
72
79
162
113
100
94
75
117
115
105
116
71
67
145
37
68
178
82
100
164
146
115
150
83
79
135
129
125
90
88
91
126
141
110
80
41
30
80
90
102
63
107
107
109
91
41
58
19
19
22
32
97
101
86
173
105
0
60
77
79
65
220
71
83
77
65
67
130
4
130
123
196
127
177
69
33
151
40
71
56
195
108
125
97
111
163
6
50
64
45
40
133
3
86
151
35
68
12
49
150
143
0
170
133
164
168
121
109
54
109
94
255
228
51
179
94
95
148
139
167
74
40
114
62
78
144
176
177
129
76
11
206
41
4
34
103
151
92
126
0
40
75
144
221
83
56
53
170
99
73
97
83
66
56
0
0
0
0
0
0
0
0
0
0
0
0
0
2
7
60
0
0
0
0
0
0
44
52
52
47
44
0
0
0
44
41
0
0
0
0
0
44
61
0
0
0
76
60
46
44
36
39
0
0
0
0
0
44
44
51
0
39
41
44
43
43
0
0
45
47
48
46
45
52
50
93
133
141
186
166
135
139
96
77
62
66
66
83
144
68
109
175
62
71
63
189
48
70
70
82
86
73
191
81
56
89
41
97
50
102
88
126
140
105
117
27
107
176
190
101
75
199
103
71
82
127
88
93
12
45
48
77
53
64
141
8
83
15
14
25
70
42
57
105
49
96
52
86
117
106
133
204
68
94
88
72
132
142
106
127
140
95
86
85
112
127
137
71
129
84
87
92
73
130
126
136
130
144
134
135
124
106
20
16
86
30
35
74
86
64
121
109
131
108
47
25
21
80
77
60
81
96
99
112
97
118
152
68
140
144
188
121
82
108
92
49
133
57
13
3
140
167
34
26
86
123
0
45
50
88
73
193
136
121
161
55
41
75
43
76
197
43
118
111
42
40
77
42
79
57
101
127
51
103
43
169
40
58
84
199
255
145
151
87
111
42
219
72
163
120
60
90
38
105
104
134
97
65
63
82
189
25
78
61
64
153
102
122
24
55
79
93
214
43
55
70
136
117
0
41
36
73
55
45
61
46
0
0
44
47
2
0
0
0
0
44
50
0
2
4
50
0
48
47
0
0
58
58
51
0
59
61
53
0
0
7
0
0
8
0
45
46
54
49
55
17
68
46
0
34
34
0
0
48
0
0
0
40
50
49
40
44
41
43
0
0
0
44
47
46
42
41
50
0
109
155
198
209
255
109
129
56
65
77
70
127
100
61
96
124
135
129
46
89
139
95
81
71
85
46
96
100
171
98
78
95
65
64
167
61
71
124
99
136
46
92
146
107
65
31
172
98
103
118
96
83
36
19
93
14
64
118
47
61
8
73
22
59
67
64
118
126
35
98
133
112
141
107
66
33
53
97
47
92
50
61
140
115
132
97
161
68
157
73
88
120
123
100
123
118
108
78
95
85
105
30
135
130
127
53
29
114
6
85
14
25
49
101
142
128
39
72
96
99
20
91
86
44
0
37
139
57
116
113
178
110
124
134
163
188
201
145
61
94
45
195
17
90
86
81
100
34
28
76
15
128
45
59
71
70
151
99
80
85
72
53
60
47
84
164
74
107
190
171
105
120
65
73
64
125
192
189
62
29
97
17
74
61
131
255
149
203
76
97
64
89
133
177
100
45
48
0
103
37
124
129
77
57
123
105
67
109
131
83
158
75
0
95
123
22
46
46
32
77
96
66
54
37
26
49
119
59
59
57
43
58
0
46
9
0
0
0
0
41
54
50
45
54
0
8
0
0
0
0
49
65
48
0
0
49
57
48
43
0
0
0
0
0
50
0
0
0
6
0
36
2
52
0
0
38
44
0
0
0
0
0
8
18
13
1
35
35
0
0
0
40
0
0
0
0
0
51
0
131
153
199
117
125
38
60
45
43
85
134
91
102
109
93
53
72
99
99
165
130
88
177
112
137
48
74
106
111
109
59
4
31
40
47
0
66
148
101
70
43
37
68
77
68
25
73
142
120
173
83
98
87
25
36
50
33
135
78
60
43
39
66
66
66
27
159
111
110
68
169
66
78
109
176
79
117
129
83
77
91
112
124
126
62
92
67
122
126
113
89
110
146
95
177
106
122
47
108
78
75
50
58
74
80
21
66
110
102
19
96
59
92
73
113
72
44
84
45
93
94
99
84
51
33
7
158
44
166
83
71
63
120
78
145
189
176
103
66
77
37
63
72
150
167
96
49
49
63
107
22
176
109
32
77
107
98
114
45
0
155
18
42
91
112
155
40
84
72
105
48
54
80
88
149
142
93
125
143
210
115
45
149
65
72
212
142
162
20
42
23
0
47
130
115
106
71
47
0
20
89
143
62
104
114
45
59
72
198
112
55
67
75
79
80
63
0
15
102
85
57
26
38
0
0
95
20
6
67
57
53
64
47
51
0
45
0
0
0
0
50
50
51
45
0
0
0
0
0
0
0
3
47
48
52
50
3
0
43
48
0
47
0
0
53
46
43
7
1
0
34
10
0
0
0
0
0
50
0
0
43
42
1
11
8
1
0
0
0
0
0
0
0
0
0
0
0
0
0
220
88
58
36
122
76
74
53
150
203
126
145
59
21
66
73
113
132
155
45
173
142
154
107
73
45
27
69
130
39
28
139
125
169
171
129
137
65
35
99
51
74
64
72
151
32
71
84
136
119
141
146
100
73
134
49
68
106
144
124
145
121
135
122
116
48
89
48
174
95
129
125
202
197
77
169
143
93
69
171
61
71
73
169
67
89
62
130
113
153
135
90
84
22
103
129
71
60
77
102
67
61
116
190
76
96
98
22
110
7
63
76
20
124
74
100
63
62
51
95
61
71
131
76
23
84
152
69
94
39
158
204
96
123
172
177
166
94
78
84
6
113
109
144
127
122
72
65
130
65
0
179
76
51
75
85
63
143
55
74
25
119
197
0
154
49
222
59
46
42
49
122
64
164
53
59
195
200
175
128
94
22
36
38
229
144
153
9
52
115
97
135
162
139
118
54
2
41
124
31
159
118
104
101
23
104
61
120
90
42
116
118
70
142
85
139
31
49
137
68
31
83
18
0
0
97
0
65
33
60
0
0
59
58
0
49
0
0
0
0
46
49
54
0
0
36
53
0
0
0
0
0
0
55
44
46
48
41
46
41
47
42
45
2
50
45
45
5
0
0
24
31
0
0
55
1
0
0
0
0
0
42
39
0
0
0
0
0
1
3
0
0
0
0
0
0
0
6
0
84
51
52
16
91
42
61
97
172
157
166
150
71
70
36
9
67
158
65
6
145
120
139
203
82
94
58
55
64
121
51
57
78
85
87
219
176
139
136
94
101
106
107
103
99
64
142
137
123
93
78
101
101
48
39
30
100
118
166
125
59
27
71
99
103
142
96
46
138
169
198
168
149
154
9
118
70
59
70
121
151
88
58
119
71
29
122
88
55
169
192
34
52
44
86
57
93
117
187
86
61
120
62
126
129
111
65
69
82
101
42
92
90
112
58
140
75
67
115
133
90
53
101
88
80
50
133
81
131
186
110
108
103
185
173
174
162
213
128
98
56
153
59
117
70
96
64
66
116
90
40
84
102
141
148
63
27
109
59
81
42
70
4
63
97
74
99
86
68
45
82
138
97
193
74
95
89
138
145
89
75
81
37
15
229
122
43
17
20
67
21
55
40
125
137
65
76
116
126
103
105
59
102
12
0
71
73
123
82
43
68
143
81
75
159
42
18
7
78
126
144
11
26
48
45
79
42
6
56
40
0
0
5
0
53
53
0
0
0
45
48
47
47
0
0
36
56
0
0
0
0
0
0
0
0
42
44
41
49
43
49
0
47
57
0
0
0
0
0
6
71
88
50
0
6
3
0
0
0
0
0
0
0
0
0
0
0
51
0
0
0
0
47
51
0
0
0
10
0
58
80
138
88
120
81
113
104
181
173
182
96
143
85
2
1
9
95
95
10
150
173
189
114
115
69
61
73
91
111
77
94
113
77
92
42
42
125
147
127
81
221
125
152
50
58
105
130
95
75
89
66
123
71
62
28
74
152
120
67
50
15
6
56
55
51
120
70
182
180
171
71
80
139
31
140
203
115
110
94
168
129
44
65
132
87
58
154
178
48
103
81
0
116
62
110
172
80
174
126
118
98
89
48
145
82
66
59
97
97
137
65
106
101
70
173
96
95
50
124
76
91
104
119
166
100
79
80
78
116
162
147
120
161
121
92
102
113
51
39
64
115
73
83
81
50
114
80
55
28
7
95
20
117
97
130
26
42
0
77
12
65
23
36
59
14
84
129
143
147
128
146
81
134
140
105
54
116
132
36
0
63
42
60
229
58
16
79
69
95
125
82
165
98
147
71
87
64
76
32
78
71
81
124
11
121
53
25
17
125
57
70
77
34
122
50
15
25
7
105
166
16
93
124
58
49
104
33
32
60
64
60
2
0
54
2
2
0
0
0
51
46
43
45
48
40
8
0
0
0
0
0
0
0
0
41
43
41
49
48
51
0
50
60
0
0
0
0
42
62
69
89
52
0
4
0
0
0
0
0
0
0
0
0
0
0
0
44
0
0
47
0
0
49
42
48
0
9
1
73
150
101
163
117
132
101
77
174
159
167
69
146
0
96
65
23
129
158
24
114
175
167
98
154
118
56
54
132
20
121
120
26
101
123
80
94
93
89
61
66
120
146
160
151
37
48
6
43
72
169
111
165
120
52
45
58
121
59
81
57
38
32
26
23
0
87
139
128
159
191
70
166
246
128
159
100
137
119
148
93
104
162
39
80
95
24
69
184
92
73
138
70
126
173
167
170
74
154
73
87
50
111
129
134
119
71
76
99
0
121
75
82
71
112
82
80
79
139
128
115
148
34
99
182
240
97
84
25
139
149
118
91
48
54
18
74
40
66
107
134
123
73
42
78
18
164
35
21
179
46
147
23
150
73
125
130
120
6
0
122
33
74
78
40
19
47
134
46
132
106
120
80
152
175
71
77
104
112
81
51
59
65
115
164
42
0
104
69
32
125
121
99
39
150
143
14
15
56
49
87
72
0
38
51
122
84
136
121
26
44
41
54
65
111
50
77
34
85
51
1
0
210
105
8
19
43
20
87
60
80
9
4
3
59
56
1
0
0
0
51
47
44
0
0
0
10
0
43
0
0
0
0
0
6
42
46
49
47
52
0
0
52
6
0
0
0
44
44
56
70
89
53
55
0
0
0
0
0
49
48
0
0
0
0
0
44
34
0
3
51
0
0
50
42
48
39
54
3
148
152
166
153
76
183
172
118
149
156
132
93
102
63
125
27
87
24
111
100
85
78
144
79
162
88
69
2
57
105
15
72
67
141
120
72
52
70
65
91
0
32
127
161
157
0
16
15
66
69
151
164
192
112
75
104
88
118
41
101
45
100
53
53
29
13
112
119
72
137
158
109
170
147
139
101
155
61
117
155
51
159
117
85
117
147
38
87
69
66
52
58
103
42
168
151
188
97
140
116
85
138
83
87
149
126
115
163
18
106
72
103
149
100
43
79
113
100
105
109
94
114
53
119
93
224
98
91
44
153
110
95
95
74
95
98
69
55
127
116
119
116
63
31
42
94
70
36
20
202
117
119
77
191
95
43
63
24
76
39
128
51
33
158
131
38
9
139
127
98
99
124
151
169
161
67
46
35
50
117
62
48
78
171
139
0
17
83
58
1
50
15
51
130
116
142
111
37
112
53
128
36
74
18
171
71
78
67
139
54
112
89
11
143
73
93
170
152
51
132
125
31
98
60
45
31
0
58
0
12
32
0
11
13
14
9
52
0
0
0
50
47
0
0
0
0
10
49
42
46
46
46
0
2
7
0
50
59
45
54
0
1
0
0
0
0
0
0
0
0
71
88
52
59
46
0
0
1
0
0
0
0
0
0
0
40
41
43
41
0
0
2
0
2
0
45
35
0
2
97
186
183
170
98
133
115
129
144
122
165
113
19
146
50
76
84
143
133
21
27
59
91
95
114
58
76
22
98
98
136
103
42
122
0
114
68
33
148
40
229
107
119
89
2
67
14
13
110
124
137
138
164
71
120
162
178
163
72
97
54
78
49
97
75
71
103
163
131
120
116
153
155
200
157
110
205
91
84
76
145
113
95
204
27
149
117
0
121
29
123
61
141
98
101
146
76
105
131
142
68
4
44
66
137
102
124
13
82
124
91
116
120
1
93
59
130
136
99
54
84
66
72
101
36
165
175
142
58
106
85
106
185
49
124
66
113
133
213
5
109
99
77
126
0
76
23
83
86
194
124
141
80
95
92
51
56
34
85
126
127
108
33
196
53
136
38
0
74
131
119
109
104
46
71
38
81
137
108
78
145
127
120
229
94
68
92
93
108
8
0
21
54
133
99
169
112
90
108
0
34
161
119
88
97
50
78
134
100
102
120
52
0
0
100
79
38
56
75
99
31
17
13
0
61
116
55
50
74
0
15
0
18
0
13
7
13
5
5
64
50
0
49
57
5
0
62
56
49
49
49
0
0
6
0
0
42
39
42
47
63
50
0
0
0
46
55
45
0
0
2
78
47
57
49
0
0
0
0
0
0
46
0
0
45
36
42
39
44
0
0
55
0
0
0
0
0
5
1
118
120
128
175
157
158
117
99
121
66
133
87
8
51
117
64
44
50
78
80
8
43
92
65
78
11
33
152
0
97
180
38
160
118
40
139
73
58
149
97
55
68
99
99
100
92
179
40
114
167
107
47
160
78
85
115
144
87
93
188
182
111
69
51
36
113
102
117
117
188
103
89
81
67
167
149
89
83
72
21
92
44
77
151
71
115
43
5
47
89
205
84
12
86
61
12
94
110
46
66
55
62
71
62
118
114
16
89
157
106
8
190
72
62
91
68
166
147
98
102
51
88
128
113
156
124
125
105
60
170
227
172
156
147
166
89
103
183
138
78
77
49
83
55
95
5
27
78
123
154
149
109
119
125
64
60
28
91
58
52
142
66
120
76
53
80
49
40
60
140
117
114
85
119
197
189
229
118
40
20
61
52
157
211
107
36
111
94
169
110
40
0
36
150
227
132
71
90
50
97
113
0
137
128
108
34
138
160
152
68
85
83
22
36
85
82
90
121
75
63
0
47
0
4
150
91
76
112
67
59
58
18
15
38
36
16
15
2
11
68
3
4
53
10
2
0
55
49
47
49
50
40
48
4
1
5
56
45
31
40
62
48
40
40
43
47
58
47
40
1
50
71
45
57
50
0
0
0
0
0
0
0
0
0
40
34
42
43
44
0
0
0
52
1
0
0
0
1
0
103
124
94
135
219
139
88
123
71
60
86
52
64
89
162
126
39
37
46
175
90
38
136
102
122
42
84
20
35
146
132
118
162
76
104
71
164
72
186
36
30
148
149
177
60
150
126
124
127
89
65
0
105
106
55
105
49
91
63
44
135
92
107
81
137
33
82
140
162
214
104
87
94
69
92
142
83
123
77
63
68
59
162
74
29
66
63
119
76
56
173
121
124
130
43
99
179
122
41
75
42
63
114
74
90
89
17
88
49
75
13
75
170
205
163
193
142
157
84
151
121
127
61
174
203
212
126
100
73
70
145
84
158
125
102
180
152
105
158
125
163
50
55
60
48
56
55
48
170
161
104
53
152
163
149
29
147
111
135
58
185
96
196
191
58
47
79
100
86
111
122
17
159
59
0
75
192
90
66
70
6
45
209
212
95
69
74
200
43
94
16
5
0
91
0
88
70
67
137
49
80
0
99
148
95
85
35
178
128
163
45
163
77
169
85
19
186
126
73
89
0
105
21
52
115
114
31
61
43
59
62
47
41
67
57
61
61
9
56
53
0
0
0
68
52
0
0
0
50
45
47
49
52
1
4
11
11
55
44
0
50
39
40
38
45
46
52
0
58
51
67
81
46
53
40
45
0
0
0
0
0
0
0
41
37
38
47
0
0
48
0
0
49
0
0
41
42
52
48
89
138
102
53
135
40
11
59
133
79
98
149
48
145
112
31
114
14
126
105
107
136
87
96
183
84
8
47
33
160
109
148
57
88
71
107
92
57
116
48
0
175
118
81
54
130
204
202
175
94
19
53
138
83
0
3
120
107
87
101
12
83
20
70
132
116
111
176
183
118
152
138
90
37
113
178
99
29
129
161
32
35
53
79
26
14
63
60
108
106
181
149
38
85
67
158
169
140
106
117
49
25
82
159
138
9
43
90
51
166
112
69
111
223
223
130
156
166
135
133
97
160
74
85
193
162
132
56
57
99
104
171
70
90
86
130
165
192
193
99
141
122
115
63
28
71
3
0
150
121
84
129
151
128
150
60
90
19
116
26
109
117
35
160
44
112
42
143
84
134
53
40
154
62
57
67
153
51
148
88
136
76
255
211
139
98
162
196
73
71
0
45
4
0
102
107
76
71
219
104
0
0
88
6
42
56
69
90
24
123
163
228
102
138
118
43
121
93
106
0
0
115
64
100
117
145
62
172
44
70
90
78
51
48
106
124
53
57
45
41
50
0
0
15
55
1
0
48
61
46
46
59
53
0
0
7
6
7
63
6
46
39
43
39
48
43
0
57
65
50
79
87
49
54
37
45
0
0
0
0
0
0
0
40
39
43
0
0
46
50
50
0
0
49
37
38
40
48
44
136
132
95
62
99
89
90
73
156
161
72
119
89
178
88
8
4
142
151
163
142
156
67
73
191
137
20
81
92
157
122
105
108
128
105
105
69
54
0
172
44
63
70
75
55
40
137
67
142
114
0
102
163
43
82
58
161
102
130
135
85
84
63
123
94
166
133
172
103
131
91
87
30
48
62
77
114
122
87
157
115
96
73
45
36
87
4
43
64
120
78
132
61
22
160
66
105
65
111
96
20
40
64
121
22
30
103
89
54
70
100
155
109
152
236
147
115
148
80
162
77
150
73
64
101
114
49
45
52
147
193
129
37
164
51
0
85
233
98
126
88
139
57
0
111
136
71
113
47
87
104
104
13
124
121
70
25
24
31
83
109
18
2
23
74
121
119
0
63
91
25
98
74
71
137
89
48
0
181
36
117
109
255
189
27
190
157
93
78
22
52
62
119
51
191
79
157
91
92
80
104
119
128
34
68
106
77
39
46
151
217
62
95
75
0
109
112
141
116
28
41
170
0
60
198
89
25
168
0
26
99
36
48
36
146
164
18
66
54
44
52
51
0
59
0
0
44
47
57
51
49
61
50
0
3
11
11
16
18
63
52
47
46
43
49
42
0
7
1
51
77
82
49
5
0
50
49
42
0
0
0
0
48
41
41
44
0
44
41
48
51
50
52
50
38
41
42
42
42
44
141
119
45
125
91
37
125
105
155
94
81
193
99
88
90
164
128
51
56
137
65
137
61
139
135
22
0
0
0
93
115
125
105
95
94
97
158
86
47
83
145
61
49
53
179
163
71
86
115
81
71
168
94
60
102
95
88
184
137
168
86
114
122
109
147
134
121
88
30
120
36
82
96
157
63
128
75
93
95
116
68
58
114
80
39
0
34
50
85
137
48
92
48
81
0
92
151
89
42
51
129
84
58
33
99
163
81
47
34
191
179
207
218
145
126
143
187
99
93
167
87
141
95
45
100
101
13
125
104
127
59
172
174
0
35
71
124
93
188
56
64
118
89
123
70
8
59
54
49
152
47
114
131
139
120
88
139
158
208
38
0
26
14
124
106
55
31
57
118
112
143
128
114
76
87
21
69
53
63
119
105
230
179
21
109
85
221
73
16
22
72
81
118
15
31
167
126
97
84
72
46
80
166
90
119
92
48
193
104
153
187
91
47
59
58
127
122
14
99
35
126
22
15
124
65
0
149
0
39
59
72
96
0
76
57
69
49
66
56
43
48
66
43
52
58
57
56
45
51
49
46
52
56
61
66
18
10
1
0
0
49
45
50
0
0
7
4
4
45
85
76
36
46
0
72
53
41
43
42
51
0
55
40
38
46
44
0
35
37
41
48
54
46
37
42
41
42
45
34
158
142
160
63
82
103
63
162
93
86
97
104
164
75
104
115
48
7
67
63
89
226
116
120
57
80
1
7
77
84
136
107
113
53
72
44
185
157
101
32
141
114
75
60
141
161
27
163
197
93
56
175
176
139
136
18
144
228
165
150
21
142
53
101
116
79
88
27
34
118
82
72
68
124
5
98
36
113
62
58
109
113
55
74
49
48
105
96
123
37
128
50
47
0
6
81
193
90
50
196
87
147
77
148
156
120
129
37
44
61
182
178
154
84
143
81
142
111
123
136
109
87
144
47
47
22
41
82
113
151
226
197
37
100
66
117
111
189
166
8
35
125
80
29
36
124
39
54
11
89
152
51
148
109
116
111
102
141
224
43
81
0
123
67
27
0
173
140
54
56
52
75
92
86
165
63
20
165
80
99
138
216
175
83
116
116
9
34
109
38
90
120
108
64
83
111
117
44
58
133
100
57
135
88
15
34
67
128
146
100
123
139
70
49
81
82
80
0
105
80
147
74
76
95
82
80
29
30
70
13
58
88
39
1
50
72
48
97
51
5
70
70
50
52
61
61
63
55
49
52
50
1
52
65
73
28
0
56
54
0
0
0
48
60
3
6
3
0
50
102
73
46
59
56
61
0
50
51
42
52
50
3
53
1
0
59
0
0
8
0
48
66
0
49
46
43
49
51
65
169
84
113
85
161
103
107
177
150
134
134
159
166
107
103
8
66
63
93
62
76
175
151
112
78
54
5
2
66
20
71
99
112
63
65
75
121
103
10
38
191
74
96
96
160
125
144
79
139
84
81
146
163
146
136
47
97
114
158
114
1
151
85
50
56
88
119
73
50
79
82
116
136
102
139
113
81
133
148
87
106
50
64
93
24
33
134
84
114
54
94
50
17
3
51
109
114
53
50
86
101
146
90
131
110
71
44
48
17
5
90
130
137
152
86
126
142
203
60
94
29
31
62
168
67
0
13
84
20
127
152
181
53
144
94
94
221
155
134
97
54
68
16
50
92
157
50
32
66
140
198
117
44
144
83
176
224
100
208
34
4
52
99
0
9
97
53
61
0
110
125
36
145
101
121
172
106
100
100
78
162
174
135
153
115
97
68
28
108
1
72
42
143
107
66
97
130
82
77
80
86
159
104
75
37
63
143
75
85
218
62
106
10
77
120
46
0
5
0
108
84
111
53
154
0
53
96
20
50
0
32
46
70
51
52
41
77
45
11
41
100
31
47
37
59
60
67
65
53
55
3
5
56
67
11
5
0
54
51
47
50
1
0
58
54
6
0
0
45
109
68
44
52
51
8
0
7
56
46
52
50
48
55
56
0
60
51
0
3
0
0
64
46
0
45
42
51
51
21
187
103
87
42
131
173
36
63
131
126
74
157
166
84
61
43
75
139
44
88
107
103
143
74
116
83
70
63
66
93
145
55
87
87
109
133
95
88
68
68
122
104
97
39
85
71
143
83
88
104
59
149
137
123
112
58
65
132
149
160
59
131
97
44
70
81
21
75
54
19
105
115
152
124
142
170
92
133
136
156
99
62
108
33
92
153
30
62
122
66
33
123
139
27
200
144
159
80
130
111
83
115
21
104
90
90
35
57
128
61
45
123
114
112
45
93
105
115
62
41
83
44
85
101
65
22
0
109
36
74
143
141
33
67
0
77
167
122
152
1
73
76
64
80
82
143
18
5
99
170
122
118
141
85
40
71
135
117
70
133
37
80
80
110
64
173
166
102
150
150
160
76
191
95
96
18
227
0
63
72
191
166
104
143
21
14
86
123
61
128
191
25
142
83
36
99
101
92
92
111
13
63
86
130
76
48
50
122
132
184
149
22
67
156
77
2
33
13
57
134
116
13
35
131
164
142
70
145
128
50
108
169
57
79
77
3
50
63
43
35
64
47
57
34
60
64
65
19
0
0
0
0
49
60
19
0
0
0
0
46
56
58
0
5
1
3
45
0
0
69
58
41
47
49
59
0
8
53
0
0
48
45
6
5
0
55
56
45
50
41
0
11
0
0
0
43
53
52
109
135
85
67
50
119
63
77
125
156
133
138
160
96
104
84
126
118
214
82
98
110
29
70
84
119
95
73
7
40
109
65
72
100
72
97
188
127
161
106
194
72
134
112
131
71
56
56
68
101
51
88
98
132
77
34
65
100
104
150
118
79
91
79
61
171
64
77
45
58
0
2
100
170
173
121
150
168
82
93
162
102
80
52
34
49
126
37
77
92
129
46
97
184
142
72
150
127
120
56
73
87
93
157
84
24
75
126
37
79
0
114
117
145
93
119
98
28
53
92
124
48
74
81
48
0
45
82
66
99
94
136
15
10
66
77
137
193
125
59
40
124
56
86
104
0
139
46
76
43
170
101
79
90
92
125
88
101
133
41
146
102
86
51
124
62
138
230
93
169
142
183
142
50
0
30
1
46
91
35
55
247
121
106
78
72
65
38
58
29
125
92
122
81
74
74
89
148
193
40
60
40
7
121
103
67
103
88
139
141
74
81
0
42
113
101
17
99
54
113
57
21
0
5
47
48
109
65
82
123
117
122
119
152
32
84
86
98
72
0
0
38
49
68
55
68
57
0
0
0
0
0
0
0
1
72
46
0
0
0
0
55
54
51
60
2
0
50
11
0
129
49
40
0
0
3
42
51
43
48
44
43
0
3
52
50
49
53
47
49
40
39
63
0
0
0
48
55
52
103
144
103
79
15
113
36
80
165
161
159
147
117
79
135
125
59
102
171
84
73
110
77
108
114
94
96
41
0
46
161
128
46
97
80
103
108
92
31
68
65
112
171
157
118
149
137
132
162
87
57
38
80
79
28
71
64
120
106
131
60
75
15
0
0
157
118
180
90
223
60
20
192
161
139
102
57
120
21
138
101
120
128
111
64
23
123
72
74
20
120
109
43
78
123
78
90
147
107
80
147
89
41
55
107
49
210
111
107
88
109
161
132
90
68
116
111
55
117
87
133
84
69
43
103
0
96
212
143
173
148
118
96
71
59
112
88
43
121
64
129
172
84
86
184
58
116
139
82
66
100
69
81
74
117
117
42
85
114
144
79
11
4
134
73
51
54
105
115
85
93
126
48
77
71
58
25
35
170
83
28
214
102
142
9
100
92
100
49
145
34
47
218
115
61
46
132
92
118
129
50
87
80
44
134
106
118
118
41
4
40
42
70
100
83
129
129
6
0
0
0
20
36
12
26
0
72
32
0
0
5
35
34
149
0
7
105
55
131
80
14
28
48
105
39
59
0
5
8
6
9
4
11
2
3
3
37
2
0
0
0
55
54
52
64
55
43
61
20
0
125
43
43
0
0
0
0
46
41
50
41
37
0
47
0
56
49
45
48
51
43
38
63
42
43
50
54
56
52
112
74
109
28
171
125
27
94
221
131
59
153
134
46
99
110
33
44
10
105
55
61
98
108
97
140
92
55
117
46
44
80
77
150
118
117
53
55
38
155
154
162
193
171
112
115
77
22
91
157
35
40
32
73
30
97
172
125
169
158
84
96
113
24
114
96
115
19
76
118
107
139
147
99
89
36
88
63
106
39
156
82
145
134
108
28
88
42
87
124
140
163
83
117
144
77
144
183
90
76
72
0
47
32
124
172
82
62
26
58
66
74
46
96
73
65
124
117
17
80
70
55
112
87
113
158
0
59
9
68
153
114
38
57
70
124
64
27
155
97
157
126
134
95
59
139
126
183
114
71
9
62
121
58
71
75
140
108
46
113
175
94
72
149
79
84
130
50
46
22
107
48
127
97
72
0
37
64
117
0
89
255
155
32
69
50
66
27
213
72
98
88
57
200
80
36
64
80
12
156
107
67
44
57
194
95
97
99
89
133
142
0
162
79
64
63
0
39
29
41
116
105
28
0
45
0
126
86
8
34
0
104
68
2
30
3
53
88
62
0
33
100
146
109
121
97
0
26
6
7
12
0
18
0
0
56
59
42
0
0
50
52
51
49
57
56
0
63
16
0
51
0
0
0
4
0
0
0
0
0
46
45
37
46
0
2
50
41
48
49
44
43
7
42
45
51
55
54
49
81
51
104
78
156
103
51
46
243
98
108
107
115
72
62
99
83
31
68
172
77
88
145
131
192
117
120
53
120
41
68
110
91
44
142
38
152
112
108
121
76
128
138
157
93
59
46
120
86
102
139
0
45
95
144
144
72
74
152
6
113
68
171
50
100
112
26
0
127
115
86
243
178
132
146
107
155
118
68
55
125
132
116
111
104
125
80
95
89
145
126
63
3
103
67
69
34
76
50
16
30
38
34
115
132
102
123
75
58
82
57
54
94
11
87
106
91
140
94
80
129
143
71
164
131
101
87
117
25
90
42
110
81
83
122
60
39
110
80
158
163
110
146
58
53
35
180
118
81
22
52
129
67
141
68
144
84
59
119
62
196
82
127
37
64
33
138
99
20
0
112
84
168
75
57
4
73
34
127
84
33
229
152
97
33
47
115
177
177
111
146
81
50
134
140
67
99
68
49
171
111
42
35
116
91
48
89
140
56
70
22
18
44
56
67
42
25
0
83
0
57
35
63
141
78
64
136
55
156
94
53
184
3
11
20
80
62
33
33
45
0
39
113
66
79
75
37
14
2
59
12
0
21
0
8
44
50
40
0
47
48
42
41
47
52
56
4
5
21
2
48
0
0
0
10
50
0
0
0
39
50
54
35
4
0
0
0
44
0
46
43
46
5
44
48
49
52
52
0
99
59
147
108
145
75
103
122
141
70
20
69
64
102
151
104
88
48
125
117
44
134
157
69
56
178
113
119
85
51
65
91
146
83
179
118
92
95
123
95
181
124
121
133
120
14
41
130
123
139
155
64
96
101
38
77
72
77
112
227
80
50
130
105
132
86
48
33
115
25
79
134
128
154
177
114
144
85
92
69
228
113
133
94
98
129
150
70
41
96
74
85
93
166
17
61
34
121
69
76
52
114
22
114
162
92
66
101
20
74
70
84
104
128
123
76
116
86
108
81
68
143
149
124
118
114
69
143
98
52
124
95
60
59
148
83
69
30
112
120
163
121
136
96
192
24
100
179
46
73
0
79
121
95
77
88
120
66
80
83
120
149
151
28
16
37
13
63
195
94
99
140
146
42
72
58
57
58
0
112
95
255
178
113
84
60
99
101
144
69
150
0
153
87
88
155
125
52
35
159
82
46
80
107
24
87
126
133
68
0
0
5
0
92
72
68
17
19
0
72
60
91
124
79
143
51
67
111
121
69
108
76
209
41
119
131
14
57
71
79
45
60
86
73
110
88
136
23
0
71
98
0
34
45
2
0
52
56
40
41
44
43
42
0
52
47
0
0
11
13
42
0
0
56
50
63
42
53
52
34
40
40
41
0
0
0
0
46
0
56
50
0
0
51
44
47
40
0
0
46
57
98
145
113
36
106
145
99
35
72
86
72
116
96
56
106
0
14
118
14
0
63
62
71
155
180
96
60
99
131
86
115
117
98
254
139
139
58
89
147
128
133
90
115
97
90
103
74
110
97
157
113
116
56
73
158
63
128
123
19
181
105
159
129
127
51
72
61
69
118
74
131
226
122
140
154
96
104
79
107
83
141
121
173
75
100
106
88
114
176
94
116
87
107
41
42
45
72
58
108
138
103
148
190
69
103
46
0
53
141
72
87
159
130
104
35
54
100
127
82
109
108
127
97
51
40
99
109
40
75
57
35
81
135
140
113
20
161
195
209
91
202
129
95
113
83
46
101
66
50
17
98
109
87
124
156
153
143
122
34
129
4
6
137
97
0
22
129
78
117
190
67
33
55
59
103
154
36
105
38
255
155
159
83
129
109
112
206
78
104
16
31
132
4
88
103
192
162
135
136
71
98
35
32
79
147
202
62
96
108
100
83
98
114
70
0
0
93
115
121
133
124
82
145
55
127
77
42
69
0
69
158
49
82
80
30
73
30
44
53
8
86
3
108
184
119
71
0
110
106
76
67
61
49
0
0
44
49
49
48
44
0
0
47
0
0
6
6
82
36
0
39
60
48
55
46
1
2
0
0
42
0
0
0
0
0
0
0
56
51
0
0
2
46
48
43
49
0
65
181
160
109
98
17
50
183
95
0
60
62
73
99
68
138
125
79
35
122
63
63
0
89
145
149
165
88
16
152
169
131
117
131
132
30
215
131
71
97
153
106
127
124
112
152
118
50
58
70
116
63
143
110
146
81
107
43
26
141
103
110
0
151
160
165
44
39
65
158
137
86
175
121
106
124
177
98
42
130
147
135
121
188
150
130
86
48
151
136
124
99
67
89
106
17
71
24
55
27
29
61
158
81
210
140
37
80
83
118
28
45
68
45
148
186
119
88
71
116
133
134
60
128
104
55
0
133
99
80
0
27
26
55
100
163
57
77
117
104
115
63
82
131
42
95
94
20
79
109
40
10
0
90
118
152
146
117
49
42
2
132
50
20
90
99
158
12
69
52
81
151
40
22
45
56
136
18
29
48
44
255
163
166
109
79
88
27
195
82
28
0
14
62
60
36
99
159
144
33
227
137
36
130
105
115
126
136
51
22
47
111
171
65
90
32
10
67
110
93
57
179
106
75
89
126
38
78
50
128
33
66
10
80
54
28
33
76
108
47
60
0
95
140
111
217
150
64
17
117
62
55
0
8
64
73
8
45
58
58
52
45
44
43
49
0
1
58
53
110
31
0
42
60
53
53
47
0
1
0
0
0
0
0
0
1
56
2
46
55
52
0
0
54
44
46
44
48
44
142
149
57
96
101
45
61
244
30
138
53
63
68
4
53
78
82
113
67
17
25
67
104
134
79
104
154
207
55
64
224
217
111
106
89
140
75
106
109
37
51
103
117
117
50
46
0
13
140
154
49
38
0
108
143
115
104
138
189
164
36
21
17
19
72
50
93
111
28
65
40
89
126
109
107
125
128
119
84
146
95
149
86
63
41
63
139
92
39
2
128
29
43
47
15
24
0
73
87
31
0
219
40
93
62
39
112
139
91
68
119
6
139
123
94
54
117
209
71
35
137
102
160
91
120
61
106
0
72
73
37
169
34
103
140
110
129
153
75
174
39
85
127
105
127
31
45
1
132
16
63
19
0
85
175
158
96
102
79
29
37
83
39
78
164
161
167
105
110
68
70
135
125
119
152
50
98
0
77
52
58
255
159
124
151
67
79
81
166
72
135
61
76
0
25
92
0
172
149
49
68
189
56
0
54
56
130
49
52
32
26
127
192
45
145
24
46
148
39
88
151
122
108
147
48
104
92
158
51
0
80
26
102
100
0
0
0
0
146
36
44
12
49
153
119
74
121
153
90
75
17
88
65
30
26
56
57
9
54
55
51
44
0
40
60
60
0
0
44
142
68
49
5
0
58
55
2
0
0
0
1
0
43
38
0
56
51
9
54
52
50
44
49
53
46
44
44
46
40
128
108
7
69
64
15
130
212
83
181
51
96
78
96
142
124
66
68
86
17
41
103
99
31
127
155
117
184
32
28
143
144
110
84
103
73
104
61
49
108
126
171
98
104
145
44
50
45
105
28
21
43
100
52
94
19
85
154
146
79
37
68
63
21
44
52
151
55
44
80
75
114
89
125
58
133
147
121
78
89
222
74
45
98
130
44
100
86
61
11
25
33
31
0
7
35
55
76
80
135
0
102
62
18
127
125
48
99
217
2
199
57
76
70
30
113
131
165
69
77
91
126
122
31
79
110
82
0
49
101
130
150
157
115
139
110
119
92
46
113
137
105
82
98
97
84
62
13
41
36
11
82
27
114
137
159
166
112
167
44
20
181
64
122
106
121
99
56
72
136
137
80
152
135
108
104
75
54
225
94
143
255
171
157
185
154
129
86
73
128
59
107
12
81
79
51
79
160
101
0
91
95
151
4
79
68
12
119
50
26
0
49
92
29
149
90
70
53
76
129
154
179
46
40
47
94
19
38
63
28
32
78
47
43
81
117
14
12
29
40
61
0
77
70
105
126
56
67
117
144
90
8
52
135
83
85
32
16
0
52
52
45
0
0
2
53
47
12
0
78
53
47
57
0
49
45
66
0
0
0
4
3
46
40
43
53
51
55
53
50
50
45
52
54
52
0
46
46
38
122
26
107
45
58
166
195
202
115
195
61
23
10
105
76
99
33
87
48
10
78
142
176
122
122
152
164
172
63
23
197
157
55
249
151
81
145
98
95
164
175
150
119
167
100
14
32
89
87
86
23
96
181
38
121
43
130
76
83
65
78
111
78
57
40
58
60
93
94
199
101
40
136
163
95
92
90
61
114
66
74
91
65
65
76
35
42
89
14
15
30
0
6
74
120
147
111
124
168
82
51
23
103
96
162
127
74
121
78
45
146
109
53
32
1
117
111
120
117
149
98
120
0
117
56
61
16
11
15
64
166
125
141
132
87
100
71
155
92
113
119
163
138
72
120
128
91
79
35
14
77
131
104
115
130
178
205
71
126
115
106
105
134
124
38
74
21
0
66
130
147
104
111
76
55
0
97
86
168
198
83
255
172
132
90
52
64
4
90
96
32
98
68
59
31
125
90
148
150
58
55
162
165
56
52
68
33
186
101
66
81
122
0
112
44
46
59
206
48
78
152
150
104
109
97
96
128
14
0
75
0
34
77
87
124
151
80
40
37
53
56
44
84
77
35
133
89
90
154
200
159
47
12
95
95
104
86
55
0
1
56
49
51
2
0
0
53
11
0
63
0
0
56
46
0
42
76
0
0
0
3
0
58
45
43
51
56
45
49
50
52
0
51
50
1
0
0
44
0
20
134
83
99
145
142
157
110
109
125
50
40
81
0
48
61
16
123
107
85
151
112
139
122
128
74
65
163
101
84
148
68
178
171
215
124
146
141
111
89
86
38
130
59
54
67
105
83
72
38
109
61
142
108
113
92
97
46
76
111
69
102
73
13
47
44
51
119
105
80
81
120
129
160
132
38
189
162
148
68
61
141
39
55
111
66
64
65
36
56
40
80
119
38
139
134
62
86
96
100
141
88
160
108
137
151
81
98
115
56
121
118
42
97
170
59
156
115
195
191
77
121
129
106
100
25
47
35
17
63
131
125
148
86
71
45
104
170
92
79
49
42
205
43
169
143
58
158
66
64
113
80
132
67
111
205
182
59
99
155
117
143
55
13
20
21
26
12
9
145
67
194
126
208
180
159
103
54
51
188
169
255
160
153
56
18
36
114
113
69
89
92
99
40
94
25
41
67
91
130
84
111
198
86
62
17
45
149
76
61
90
113
0
113
103
94
112
48
98
77
139
73
128
104
145
42
85
47
145
95
74
151
107
94
135
128
29
55
111
40
74
101
40
165
130
97
149
147
152
151
215
54
63
58
137
107
70
66
0
4
60
52
2
8
50
4
7
0
0
55
0
0
57
45
60
46
80
0
0
0
0
0
16
50
43
50
63
37
46
0
2
52
46
44
50
0
0
0
0
88
94
129
154
100
190
204
145
66
142
29
42
100
44
54
0
124
17
0
146
111
65
72
122
99
63
68
155
96
136
110
41
61
81
160
86
77
227
148
114
96
86
55
76
139
101
91
90
70
121
85
92
28
76
31
98
93
52
118
121
125
197
172
66
76
77
98
96
112
73
107
78
120
99
190
67
71
148
134
89
47
124
122
109
128
43
11
81
16
127
180
71
80
32
18
0
74
10
60
108
91
111
233
59
66
108
177
157
121
23
41
130
76
155
108
93
182
110
188
81
169
140
175
102
80
31
95
106
135
125
122
176
136
34
73
105
148
148
103
107
83
109
95
40
101
98
63
207
56
154
124
153
158
42
99
158
94
140
12
52
144
97
57
63
0
43
40
130
57
159
35
122
119
120
152
53
50
88
58
106
142
255
127
62
85
72
91
128
66
125
54
33
43
28
130
0
98
193
49
44
152
142
114
109
62
46
149
72
67
42
58
71
43
34
106
64
110
74
138
80
183
85
43
42
82
101
0
8
111
99
122
157
57
34
108
89
97
14
106
76
126
38
49
88
0
56
147
179
208
164
199
64
94
158
193
116
138
87
62
72
48
2
16
0
0
1
20
45
98
62
0
3
59
49
45
48
58
42
0
0
5
2
0
0
42
45
1
0
0
0
0
51
0
43
42
0
0
47
48
130
98
113
166
210
75
97
144
117
58
161
112
74
111
0
61
16
11
15
0
67
148
148
76
49
62
157
103
89
115
43
7
50
39
132
94
134
136
147
105
130
43
35
121
176
125
109
113
24
38
117
168
29
8
24
34
140
110
67
40
69
54
66
32
207
110
22
40
47
115
105
125
108
100
77
36
71
161
107
48
148
120
184
79
16
99
3
54
95
87
54
41
12
71
38
64
135
120
91
47
76
75
102
108
38
39
89
140
163
0
66
152
180
85
175
120
176
155
121
117
209
62
75
126
74
101
35
191
189
159
121
170
147
132
38
139
72
141
93
155
131
180
138
154
169
131
93
195
51
111
176
77
67
57
155
134
156
73
116
146
103
82
0
104
133
50
70
0
132
159
136
85
66
101
39
21
47
0
102
204
85
229
114
192
98
125
60
163
209
134
24
34
20
32
21
40
64
126
117
23
69
130
93
74
140
81
78
37
0
194
112
202
109
87
155
110
49
128
101
121
129
174
195
114
40
33
0
181
102
75
74
69
62
81
0
33
10
1
57
126
56
133
252
98
2
15
24
55
142
222
168
0
53
70
114
112
139
110
21
95
71
39
12
10
0
9
39
82
140
5
7
0
48
46
56
56
49
54
0
0
0
0
0
4
7
9
0
0
5
49
0
44
56
57
56
57
3
0
0
95
116
96
192
143
38
135
95
151
130
103
173
112
113
72
26
48
103
14
59
63
129
86
105
109
121
216
84
124
195
30
0
47
41
77
117
155
137
141
135
146
108
92
215
109
138
155
124
35
43
94
75
26
61
39
16
64
35
40
22
68
77
116
9
25
104
128
41
103
39
147
94
159
184
92
94
123
144
57
73
130
30
75
58
85
59
63
86
70
127
144
159
73
136
210
162
118
121
87
126
67
86
85
178
56
30
42
133
151
7
14
36
150
32
102
130
145
131
121
50
65
92
78
11
47
93
90
177
137
130
43
204
145
139
58
25
188
213
86
49
78
200
61
138
140
63
63
146
51
188
138
127
65
75
51
83
145
37
106
69
137
21
101
22
85
119
160
76
32
97
102
41
7
128
145
15
8
50
37
141
45
224
154
42
95
97
118
112
232
180
19
78
16
50
0
0
125
134
156
33
32
54
98
91
115
69
89
38
50
139
119
215
61
119
127
39
167
120
164
34
138
210
152
63
93
42
171
163
57
120
61
99
36
8
46
50
65
118
39
129
156
62
0
121
83
33
26
48
177
162
85
27
2
0
149
124
60
93
144
40
67
89
101
73
16
0
30
71
129
46
3
51
0
0
0
46
45
56
0
0
0
1
0
0
0
1
0
6
1
50
0
0
49
52
0
1
0
0
0
108
106
134
197
136
132
98
60
65
65
85
113
118
122
46
107
52
118
51
61
77
25
55
130
146
96
149
129
142
138
33
88
0
80
82
136
150
134
121
133
101
69
104
16
113
168
181
37
73
116
201
71
76
53
85
98
89
49
107
63
36
33
142
0
45
24
93
12
69
172
83
110
114
123
105
100
104
113
35
77
70
125
114
113
116
138
117
155
87
146
5
72
202
84
193
99
128
109
152
119
95
47
84
149
140
114
24
47
241
36
33
93
33
145
112
122
102
116
65
76
82
125
43
0
101
115
133
153
72
149
83
68
137
140
117
108
178
239
107
86
93
170
123
89
97
153
160
96
109
89
139
71
96
87
107
56
175
94
132
75
103
0
67
5
137
87
80
109
72
69
96
26
37
69
29
70
155
142
91
75
56
209
119
73
13
115
34
125
184
145
53
120
93
9
0
54
100
61
70
46
127
64
65
34
13
189
83
113
40
33
83
149
16
14
88
18
107
112
120
59
198
185
162
0
95
66
83
69
9
15
132
44
51
78
85
67
114
78
80
0
153
117
77
135
109
67
22
156
229
134
123
37
69
4
102
50
137
162
157
93
49
61
59
131
17
6
25
122
117
40
48
57
47
0
0
0
0
0
49
47
1
4
0
0
0
0
0
0
0
66
62
0
0
46
0
0
0
0
0
137
177
201
172
96
100
88
85
72
79
88
102
71
158
77
115
56
37
87
21
72
97
133
114
179
54
93
110
133
84
75
73
13
0
133
223
136
194
194
95
114
107
126
113
96
123
172
24
48
104
203
76
44
60
125
73
86
110
69
125
57
63
68
122
52
57
3
60
127
78
176
166
75
60
106
86
149
113
51
122
109
194
116
72
118
110
110
98
67
38
116
83
169
63
77
79
151
83
91
62
155
70
65
68
139
20
77
39
179
65
13
49
72
175
112
109
167
126
71
66
188
129
31
76
154
138
128
203
149
60
128
121
198
137
47
117
134
205
91
53
106
118
75
114
98
139
28
67
86
80
166
69
92
55
94
100
158
109
12
133
0
46
3
116
123
123
108
64
121
64
78
65
0
66
57
105
135
87
24
54
153
255
118
106
94
219
108
111
179
63
34
49
27
40
0
133
0
0
101
45
161
54
41
125
35
224
138
129
43
17
142
105
4
19
12
93
95
50
130
51
115
49
100
49
100
122
117
103
35
22
182
11
44
90
46
77
109
79
100
68
97
129
157
112
49
112
68
86
94
185
130
65
105
57
105
150
79
130
185
190
5
87
93
42
67
60
93
155
69
0
51
56
76
4
37
37
0
0
45
50
4
59
51
45
46
46
49
55
45
61
8
0
0
46
0
0
46
51
46
105
152
203
177
68
123
126
21
74
134
89
121
57
108
163
61
26
70
24
0
110
86
132
101
119
148
19
156
134
80
31
0
48
62
113
192
60
101
118
110
142
96
134
115
147
124
111
191
88
82
84
63
85
61
98
0
60
45
0
80
46
70
0
90
0
155
35
93
75
158
224
155
64
79
33
96
201
49
14
8
22
140
157
141
109
147
147
162
81
121
64
139
103
91
133
117
170
78
54
124
121
146
0
69
127
98
93
0
133
141
47
94
83
108
189
155
79
80
59
66
71
112
117
112
64
27
132
208
174
82
58
172
190
125
86
77
148
255
113
39
104
114
153
92
131
69
40
75
44
102
112
77
35
62
81
58
178
103
54
54
94
57
20
173
83
93
180
170
76
34
54
41
0
122
170
93
72
119
65
167
154
218
181
109
149
31
141
95
132
123
117
96
61
37
46
141
0
55
198
35
44
59
73
129
145
92
145
131
102
1
58
74
129
70
0
113
81
142
196
78
103
30
90
3
65
132
101
7
90
77
93
84
28
14
104
32
116
87
39
172
121
136
101
79
71
98
112
50
123
96
73
108
8
9
43
104
80
40
112
161
55
57
88
73
72
99
122
152
76
29
56
47
19
55
41
44
0
0
43
53
57
58
56
50
51
44
50
7
42
46
48
3
1
50
0
1
49
55
48
119
144
92
108
181
34
146
76
128
89
20
86
121
88
74
75
98
101
11
140
100
145
82
93
155
153
210
111
30
95
81
35
128
71
99
151
54
59
104
101
205
127
110
49
39
132
122
21
119
98
145
108
113
91
65
86
40
69
104
129
85
121
14
8
25
1
56
13
25
143
113
104
93
79
45
113
84
30
5
63
110
138
159
201
81
8
7
95
76
70
53
122
104
154
73
131
153
95
96
89
83
102
99
69
71
132
71
113
14
81
80
136
149
91
152
150
154
68
126
57
145
109
25
213
119
110
92
49
8
82
190
87
126
65
99
93
159
101
69
104
114
149
121
143
47
53
61
84
0
56
134
104
52
10
81
39
194
93
87
41
154
105
16
23
53
181
92
102
9
75
0
49
69
117
72
173
188
39
191
128
149
172
136
73
58
80
155
160
134
136
116
80
95
20
121
10
8
57
51
20
102
83
125
86
243
81
82
158
61
113
13
104
56
60
5
102
59
114
68
63
97
163
68
134
84
56
1
150
230
116
14
0
31
25
11
181
35
137
57
82
103
112
118
54
178
91
103
131
101
120
69
166
145
179
73
91
59
57
61
74
111
145
96
87
128
49
255
118
28
65
49
23
15
18
44
27
42
43
45
47
59
56
65
50
49
49
2
48
37
0
0
0
11
14
0
0
56
59
57
98
158
85
169
92
127
122
129
106
48
5
153
106
107
57
70
127
94
88
157
96
130
43
116
73
145
124
116
5
96
171
42
137
20
70
104
89
101
79
88
160
148
98
99
61
36
78
41
58
16
93
36
62
61
61
128
78
91
71
52
55
21
76
71
5
10
16
81
80
90
74
109
119
91
82
114
157
126
65
92
82
149
202
118
51
52
52
83
74
50
21
14
63
100
105
68
113
67
208
126
48
141
104
67
114
131
49
10
68
52
65
97
133
121
111
75
82
151
131
33
73
113
6
129
133
128
115
154
47
16
158
188
126
74
137
7
100
165
83
148
84
148
0
118
62
73
69
33
24
64
106
123
43
58
94
78
82
71
43
56
210
84
212
0
185
123
152
31
150
254
8
109
117
36
76
164
59
63
149
153
135
95
131
110
104
116
202
120
66
94
135
40
113
67
102
83
5
65
23
33
129
81
123
68
87
79
22
35
132
76
52
46
0
114
13
78
217
128
106
113
121
106
102
150
97
75
55
64
142
132
7
6
25
178
14
81
104
196
125
60
114
94
125
40
114
89
150
157
165
91
182
70
183
161
71
122
78
39
64
133
44
91
131
94
85
82
251
130
59
67
75
37
55
104
74
53
56
38
47
5
61
7
49
54
0
0
51
45
41
0
0
0
4
6
0
0
0
0
0
120
23
114
172
56
66
90
125
63
95
0
151
100
133
93
96
136
97
137
92
125
88
109
170
143
140
126
121
93
107
186
140
153
67
99
163
166
161
107
61
163
142
98
70
157
68
85
118
66
58
152
23
18
55
75
85
31
43
27
40
41
0
127
73
92
88
74
58
55
115
134
115
115
98
109
127
147
81
110
107
210
155
195
81
98
162
126
189
119
98
97
171
67
68
124
105
38
41
39
133
110
120
140
116
89
69
109
67
77
150
71
135
148
61
92
121
160
79
186
56
80
120
31
5
168
132
91
117
165
173
96
207
104
20
84
76
131
120
75
111
122
164
14
68
209
79
76
69
86
0
109
30
47
129
9
169
93
62
54
125
233
97
153
159
75
96
213
24
201
115
166
130
124
86
17
100
70
71
198
197
27
114
139
109
136
56
108
156
34
87
165
72
54
54
121
53
51
70
62
57
112
89
88
72
85
63
15
0
160
119
86
59
16
0
81
66
52
123
120
111
100
125
135
90
37
58
74
102
32
83
0
64
0
38
68
17
78
41
53
27
91
110
58
32
0
42
140
73
154
63
186
0
185
127
93
91
95
42
124
76
0
176
198
53
127
158
224
85
88
68
61
80
151
159
71
66
17
44
54
64
2
0
41
62
0
0
0
43
0
0
44
0
0
0
0
0
0
0
0
41
16
90
136
40
97
51
176
99
139
27
62
97
111
138
126
56
62
89
36
129
139
107
172
124
95
157
108
82
125
32
106
208
46
146
116
128
148
123
143
148
139
134
67
216
49
132
138
67
110
44
28
110
69
53
54
102
71
57
98
38
86
98
111
23
72
133
118
79
147
32
87
100
24
59
138
100
41
29
24
118
94
72
119
160
152
111
119
158
81
101
166
172
98
100
77
1
159
24
10
64
83
99
97
100
142
76
66
29
165
124
117
139
126
18
82
148
88
113
56
90
154
130
39
47
119
126
121
37
99
63
55
144
24
84
149
86
148
77
134
110
110
119
131
123
123
55
94
21
53
99
64
45
131
4
137
3
93
6
161
71
167
106
26
145
140
191
142
150
109
122
120
242
90
31
119
0
38
103
165
48
120
224
126
97
72
72
103
23
110
156
49
40
0
137
0
20
4
0
118
100
125
99
116
74
49
0
31
110
111
70
128
28
30
76
67
96
153
86
95
107
203
73
93
29
68
5
0
146
56
36
56
0
30
29
52
117
117
100
28
106
43
64
0
108
56
56
43
100
102
55
19
101
80
29
106
136
58
92
0
101
53
151
107
84
243
134
120
81
28
66
126
224
92
132
99
39
44
50
59
51
47
50
65
55
0
0
0
0
0
0
0
0
0
0
0
0
0
0
139
44
127
126
19
64
6
118
114
119
234
46
74
156
117
85
65
21
10
61
167
174
107
138
106
39
125
189
91
133
166
86
80
53
61
54
87
125
140
208
39
155
166
128
128
34
116
61
49
90
24
89
89
73
77
34
83
95
75
68
77
95
152
75
153
93
140
100
95
82
48
121
37
103
122
110
75
68
96
34
72
117
85
63
96
134
110
36
82
170
68
119
78
37
0
46
135
81
114
37
89
12
57
93
85
127
4
22
100
29
145
32
125
164
136
83
152
118
128
109
57
145
152
49
56
44
134
112
95
33
114
142
84
121
121
75
66
141
136
48
88
107
206
104
94
182
114
99
81
117
105
94
86
113
67
101
0
42
55
158
101
94
119
0
141
130
102
79
60
139
47
157
168
65
48
0
66
159
19
88
77
116
204
95
60
69
72
66
10
75
30
30
37
73
96
35
22
14
0
86
44
62
99
82
40
8
33
104
97
217
93
179
105
147
3
25
0
69
155
203
129
144
123
113
78
74
82
36
87
41
68
46
107
17
82
45
157
133
114
74
68
100
0
143
177
135
76
42
59
61
74
66
87
22
97
84
87
77
0
130
133
157
120
106
162
255
123
55
60
59
90
105
183
111
173
134
41
46
44
49
56
4
6
4
61
50
0
0
0
0
0
0
44
0
0
1
52
53
42
119
85
151
77
86
43
88
87
173
22
255
78
137
167
175
164
191
80
47
78
203
194
95
100
172
75
85
181
142
171
169
44
51
70
55
49
156
137
136
195
50
92
147
66
89
128
77
71
93
61
118
125
83
99
119
67
92
102
120
56
104
76
181
68
194
98
117
78
127
51
98
66
55
117
78
70
22
104
131
161
67
26
103
89
73
55
139
123
42
169
111
138
76
17
67
71
89
85
119
60
145
186
102
135
103
67
117
47
65
39
0
62
125
116
124
126
75
159
120
145
120
178
89
95
0
40
16
90
126
74
79
138
149
145
78
71
60
112
41
87
107
206
83
91
82
157
165
22
46
107
81
48
152
61
68
71
50
0
108
58
106
124
32
79
147
177
116
123
131
97
106
161
55
44
99
2
98
109
168
147
22
106
206
110
20
18
45
85
40
25
0
130
132
171
54
0
19
6
5
70
51
63
122
110
125
76
72
98
31
159
94
84
86
62
8
8
18
181
144
188
27
32
122
218
0
15
73
65
34
48
41
0
127
7
132
227
113
151
146
171
126
16
121
96
140
196
120
158
23
133
86
0
123
52
75
42
57
28
30
67
131
135
171
104
255
232
118
38
66
15
94
170
221
131
128
135
71
73
62
50
51
0
2
0
61
51
51
51
45
44
0
1
45
51
36
53
54
45
36
41
85
149
89
48
42
0
100
96
138
202
165
86
103
84
68
125
154
190
78
26
82
118
130
138
138
150
46
132
109
125
141
40
76
66
70
129
95
108
108
73
104
82
24
84
122
60
92
171
164
127
161
107
118
193
85
106
154
55
35
63
116
136
81
73
134
141
140
49
133
72
92
157
154
44
113
107
77
165
74
92
0
108
87
64
63
147
33
80
157
109
42
131
43
134
65
57
100
31
124
0
0
64
88
34
96
45
100
118
0
71
138
89
83
26
133
74
125
118
104
116
143
153
75
112
45
51
57
129
0
152
81
88
142
86
170
124
57
168
217
166
125
111
60
123
128
114
128
107
92
25
95
136
86
58
0
32
27
8
67
153
116
51
172
157
94
122
166
36
91
50
7
163
151
28
14
117
113
0
160
141
85
229
172
113
35
15
79
121
12
0
84
144
20
45
114
8
28
49
141
78
66
60
165
3
24
83
88
79
77
127
167
79
84
142
102
41
68
88
126
135
76
55
68
189
69
139
66
64
51
66
0
103
38
69
55
115
103
154
93
102
138
79
89
82
132
67
62
114
54
59
101
17
30
27
24
93
87
97
126
86
223
137
194
221
188
48
57
35
0
112
25
45
99
65
102
20
3
51
51
56
70
47
67
62
57
0
0
43
52
51
0
0
51
43
47
37
42
43
110
82
154
129
33
140
52
129
86
62
144
219
86
62
90
183
185
79
98
222
80
117
42
112
117
133
129
92
150
95
135
114
18
16
3
25
109
145
131
89
128
159
119
106
12
43
66
83
60
129
180
52
82
105
84
155
156
108
63
154
42
33
92
56
64
29
70
53
125
96
188
150
31
27
102
115
60
97
144
101
159
142
171
111
131
111
145
124
223
133
108
56
111
0
19
0
64
65
2
10
61
3
41
42
64
89
67
151
113
5
56
166
107
66
0
78
13
64
138
122
95
91
109
29
39
70
50
15
51
35
53
80
109
150
133
105
93
32
54
212
172
124
140
160
117
112
133
181
182
149
52
140
98
95
74
90
99
25
0
150
205
57
82
162
163
46
91
185
180
147
94
80
99
70
5
85
103
125
65
127
36
157
229
144
88
101
125
10
151
84
19
140
29
89
98
43
11
28
10
60
18
130
85
172
92
44
186
143
77
80
0
50
140
111
157
122
46
31
26
24
67
144
97
135
140
86
163
95
79
64
38
0
97
148
126
169
0
116
192
121
118
160
116
80
80
107
131
65
76
42
57
46
39
65
82
47
61
84
70
165
62
79
120
229
139
88
114
31
30
165
112
177
166
97
91
112
18
0
82
29
47
47
59
49
49
54
0
0
42
7
56
49
0
0
0
0
46
48
48
76
82
125
69
32
126
96
80
102
79
29
246
119
138
99
99
140
136
99
142
164
123
98
39
73
140
156
156
146
19
175
92
154
9
37
70
86
131
91
137
138
109
41
137
95
100
147
49
95
24
153
71
98
64
37
144
89
105
115
90
5
49
20
86
68
83
84
107
135
138
136
149
100
91
94
49
105
165
114
96
168
164
169
23
122
171
139
87
81
66
62
15
96
0
34
18
14
29
32
0
17
65
33
70
88
101
35
145
48
74
84
74
97
226
87
64
42
48
35
93
153
104
35
124
17
64
81
17
112
68
0
159
76
100
84
112
48
98
122
198
107
147
148
217
96
92
146
169
35
94
0
139
37
52
164
46
5
19
12
161
166
6
61
75
95
52
42
130
133
83
93
29
86
115
53
123
114
159
108
106
37
3
204
190
61
158
186
13
14
87
35
0
7
68
99
134
64
51
93
62
80
158
68
138
133
133
65
112
32
0
109
89
188
185
132
42
19
91
50
39
148
82
63
107
170
80
90
68
100
64
11
34
0
86
81
62
189
56
21
98
105
134
66
44
145
60
62
18
19
57
38
108
153
111
169
180
167
36
112
172
122
144
84
249
92
18
93
3
59
139
110
129
144
185
45
110
78
22
12
85
0
36
0
0
0
75
44
54
0
1
48
51
0
0
0
0
0
0
0
75
65
56
54
57
96
96
89
93
72
47
109
200
19
67
157
130
151
159
127
120
152
144
120
49
108
130
143
62
192
47
74
165
131
70
39
81
130
72
122
79
76
57
79
60
103
118
34
51
51
97
127
108
58
43
90
65
109
64
110
70
2
56
82
81
79
132
148
154
118
138
112
148
116
32
0
65
176
79
156
127
139
72
41
86
128
146
218
87
81
60
51
25
0
14
24
36
29
14
43
12
23
16
114
13
44
26
90
49
16
100
74
48
118
74
67
100
30
47
179
54
178
64
124
21
121
127
89
76
41
20
119
98
138
138
32
70
35
94
121
24
101
190
88
165
112
139
117
81
74
0
182
98
85
151
15
7
2
110
128
88
174
90
113
29
103
50
101
91
105
43
85
123
119
124
76
157
94
101
199
83
0
169
205
73
152
78
0
0
169
0
0
127
80
84
123
93
51
89
40
126
140
187
183
114
46
69
96
53
79
94
129
139
149
133
80
124
108
51
62
116
147
61
55
64
100
162
93
56
56
23
32
33
47
70
9
86
94
18
184
149
174
111
86
148
113
58
28
67
110
149
89
167
146
99
65
84
139
175
93
144
52
242
158
45
45
17
10
126
4
41
62
96
71
10
0
140
85
10
61
58
42
71
50
51
68
55
52
53
53
46
52
49
47
49
0
0
0
0
113
97
72
134
53
75
122
105
70
102
58
28
216
125
134
145
106
140
153
124
85
156
132
51
78
82
78
103
66
82
102
19
94
95
64
52
105
181
98
100
94
72
47
71
135
100
102
84
136
18
88
91
63
60
53
55
154
183
43
99
30
52
111
78
68
67
115
93
162
102
42
60
39
61
18
0
230
107
115
111
137
42
74
91
98
154
127
148
171
101
78
79
0
11
89
55
79
61
46
141
48
0
38
29
49
68
47
129
67
55
95
187
152
104
89
55
66
91
91
169
90
175
69
124
57
99
120
101
49
2
111
39
92
137
77
147
88
0
72
208
101
116
157
204
186
150
112
144
146
38
75
142
32
38
167
30
16
89
91
123
60
106
134
0
64
84
110
108
73
46
62
97
120
98
128
106
146
57
41
116
168
94
174
255
98
140
61
166
51
155
48
80
76
92
83
121
88
126
42
95
100
198
35
172
53
192
86
121
71
98
99
143
205
160
230
166
79
75
138
30
61
5
59
121
40
143
24
139
57
202
0
9
16
118
0
0
59
86
15
147
103
174
65
183
102
102
102
68
114
137
128
103
163
59
102
105
58
114
136
108
112
222
225
69
79
29
87
79
160
140
104
166
111
121
112
13
81
56
68
78
17
0
53
81
67
72
81
44
51
59
52
52
0
0
47
48
48
47
2
76
107
20
36
94
134
138
117
25
111
23
83
32
243
108
116
151
129
86
81
112
69
98
148
48
43
103
58
96
100
42
129
171
111
88
112
80
115
167
93
101
38
108
35
139
70
109
91
55
114
40
74
93
85
44
117
113
105
99
16
78
38
97
90
84
110
102
131
128
79
111
154
29
175
0
144
86
131
136
29
74
114
111
108
53
63
75
91
143
137
9
0
0
0
0
8
30
0
0
97
60
22
0
86
45
7
88
105
92
88
113
78
143
72
91
151
102
84
72
32
93
57
145
133
51
73
104
248
154
88
94
46
34
145
54
162
104
100
119
116
126
48
158
141
97
142
140
96
63
52
0
96
89
107
105
49
72
70
26
36
111
202
102
110
88
65
60
109
117
32
168
178
93
88
114
154
125
39
47
115
178
169
44
253
103
106
175
215
118
19
44
39
105
111
38
20
36
62
61
90
156
27
196
17
148
152
48
97
56
97
116
125
123
86
105
171
207
148
29
10
63
8
82
67
137
6
178
84
123
98
191
150
156
170
32
49
74
54
33
128
97
66
89
101
160
151
80
142
93
2
51
0
127
108
74
58
79
44
120
95
210
243
147
104
17
18
61
53
73
161
91
69
25
108
110
58
34
100
45
39
25
110
94
130
134
22
70
71
0
0
50
55
47
0
47
51
49
0
0
47
150
15
124
161
128
102
122
119
186
0
111
104
104
143
130
113
101
93
103
124
38
68
102
121
94
95
65
70
12
141
164
179
117
68
62
96
152
149
146
166
122
148
100
114
93
85
91
41
150
55
29
160
113
29
101
124
112
148
84
20
104
132
126
96
167
139
110
85
44
110
44
64
86
99
219
82
158
100
83
63
80
72
48
61
86
95
50
88
74
58
57
57
43
22
0
0
0
66
7
61
92
30
7
126
74
14
48
48
56
71
131
85
105
172
131
95
11
51
117
136
97
81
88
100
102
122
62
107
73
69
66
37
112
118
151
128
141
153
113
67
66
51
138
132
40
70
37
149
51
0
154
28
102
111
12
63
52
34
69
138
137
203
60
90
60
56
25
50
84
161
170
69
123
182
182
137
99
95
86
142
162
40
208
162
153
210
198
160
43
48
120
158
121
15
44
136
49
91
85
161
86
27
50
128
64
98
37
60
108
72
103
124
185
107
106
198
214
139
76
0
120
94
82
24
66
197
131
138
168
85
102
41
109
62
57
100
104
80
91
179
94
94
161
47
90
121
88
73
59
18
57
129
67
70
24
71
108
111
81
255
122
43
168
30
13
54
203
198
148
99
137
35
74
87
81
31
65
105
69
43
78
67
125
99
55
49
78
4
0
0
1
50
50
0
0
0
0
0
101
119
120
116
61
58
125
83
114
126
22
147
77
69
138
154
138
124
96
64
117
131
72
112
138
78
122
49
25
24
63
105
175
91
63
128
151
123
167
158
212
195
137
192
92
54
74
78
48
149
16
50
61
133
21
151
114
98
129
189
122
219
118
118
123
134
55
68
104
131
106
75
165
177
94
52
118
183
115
184
19
164
151
90
67
114
13
44
96
0
54
57
0
10
28
0
14
0
0
117
0
7
98
104
49
93
90
97
116
89
73
152
147
136
181
34
62
114
100
63
155
183
99
35
115
129
62
43
76
141
82
60
36
84
129
74
118
164
48
28
66
176
47
132
95
114
153
62
51
58
0
106
83
124
136
62
144
173
89
80
159
187
157
77
82
57
78
24
11
112
206
202
54
170
186
150
143
82
122
86
132
148
0
67
188
169
152
105
155
117
122
51
140
86
114
51
152
34
109
46
220
46
34
72
74
63
110
89
66
0
138
23
122
74
81
119
86
196
211
139
40
96
110
48
188
93
58
146
169
112
98
159
89
92
70
154
119
55
170
116
133
115
57
90
31
85
55
56
79
32
28
98
62
0
97
75
82
48
196
203
182
118
84
72
108
0
43
119
109
79
110
185
58
37
104
114
134
10
79
183
0
78
18
82
40
87
27
70
67
61
50
0
54
54
0
0
0
0
0
133
67
105
94
0
99
98
39
128
189
50
59
0
128
115
139
124
135
123
109
25
82
0
150
99
82
81
63
76
12
59
20
133
83
164
98
60
104
45
85
89
146
57
132
146
94
44
76
63
55
203
39
54
79
152
128
160
108
112
206
104
152
100
79
128
125
62
143
145
133
85
107
166
142
162
2
74
117
55
216
63
182
193
104
161
18
145
0
106
52
65
58
5
0
11
83
76
8
31
83
73
57
143
36
168
120
77
150
86
50
113
102
137
162
119
6
0
146
54
64
117
64
146
19
90
0
64
42
154
175
83
53
113
35
119
64
82
210
166
41
86
154
66
162
108
139
98
137
22
87
14
90
241
167
58
41
109
139
121
208
106
118
119
66
52
65
72
43
5
80
106
191
96
102
139
63
30
88
121
103
58
135
7
0
185
125
144
136
137
109
181
34
133
108
92
49
66
187
173
0
73
41
143
109
137
89
40
64
68
83
95
48
88
19
106
83
84
61
143
197
180
92
50
69
22
63
54
157
53
49
135
41
50
175
124
87
95
57
114
108
108
118
54
71
53
65
112
99
99
62
84
53
55
123
111
75
90
36
226
222
164
59
134
3
124
75
3
135
129
98
93
150
33
47
188
125
141
109
104
106
71
143
70
181
147
157
90
122
44
15
0
49
51
57
46
0
46
0
0
121
91
32
34
138
95
142
32
62
201
47
72
53
71
188
168
153
113
123
155
82
54
33
142
31
88
89
75
121
21
107
18
28
74
209
36
99
59
41
24
110
187
99
25
60
143
128
108
50
92
169
107
16
94
92
157
128
141
141
122
107
92
86
115
210
125
155
129
28
171
63
85
124
9
221
34
35
43
59
183
250
139
115
120
142
93
96
8
94
34
86
114
46
8
0
61
78
0
37
64
98
59
113
96
150
89
15
70
131
49
108
123
130
102
22
24
70
39
108
74
98
199
84
69
5
30
35
75
25
77
46
62
44
89
182
170
121
200
231
122
100
99
132
128
98
47
70
68
16
64
23
3
229
38
66
85
92
48
62
145
116
140
127
81
85
116
91
84
56
100
152
203
122
106
66
152
16
40
92
17
81
65
0
0
213
162
116
125
137
74
70
51
166
128
41
144
181
153
84
39
0
57
51
117
109
129
28
72
128
26
85
117
126
131
95
28
42
53
122
235
241
98
34
59
31
116
67
137
78
39
171
21
161
68
102
49
85
110
113
96
68
12
32
44
51
83
107
67
204
46
113
94
91
53
40
44
103
172
255
205
90
0
68
68
105
144
100
0
207
136
150
12
50
0
148
139
156
93
85
67
115
76
76
61
167
29
46
55
49
0
4
0
52
62
53
39
62
51
2
122
57
65
80
109
113
134
124
64
20
106
66
83
139
133
137
151
131
115
121
73
45
75
186
88
146
63
98
120
32
112
113
83
65
10
121
64
119
54
144
122
60
82
30
148
131
75
255
50
87
108
139
122
114
98
103
185
71
78
162
42
102
151
198
117
114
87
76
155
0
39
203
10
31
62
148
167
222
91
94
27
119
126
101
144
42
16
176
122
142
57
130
31
108
2
0
91
87
27
0
96
19
79
110
98
140
153
39
137
97
116
91
127
53
24
127
30
30
161
78
144
142
99
156
94
30
28
95
70
107
71
91
155
82
88
83
219
195
115
111
73
139
1
21
89
44
62
82
33
10
15
102
90
42
69
106
178
2
30
61
84
0
53
244
21
43
45
70
148
91
85
54
137
96
87
30
43
52
90
54
58
125
0
138
188
151
131
150
141
218
109
190
92
128
87
66
94
106
22
74
95
41
83
39
69
167
93
30
118
105
94
93
114
71
13
49
97
98
98
51
3
234
224
213
66
5
0
57
22
68
105
90
89
152
47
125
96
10
153
152
87
93
129
177
91
216
86
81
161
53
93
182
60
85
128
136
255
245
187
17
0
21
0
181
145
135
116
122
81
132
124
114
105
174
80
87
131
146
79
114
63
156
59
1
9
113
100
134
71
80
43
19
89
103
43
67
64
50
70
36
83
56
74
132
69
104
183
74
56
9
42
121
149
153
151
117
106
32
108
137
131
47
82
116
159
63
90
141
103
67
120
70
73
66
81
132
81
49
92
122
108
159
41
109
114
50
132
103
104
116
149
160
111
173
91
156
94
74
153
95
106
134
144
67
176
72
79
65
0
32
228
34
63
85
164
173
80
154
21
76
28
73
80
195
86
65
53
240
154
42
142
82
60
38
40
0
66
85
32
46
40
52
72
67
173
95
95
12
94
137
112
126
33
43
79
78
170
141
70
129
81
91
99
137
111
41
154
151
97
91
109
106
102
132
116
76
192
132
102
120
51
49
116
97
98
7
154
46
34
94
153
57
151
116
191
102
130
101
45
66
67
105
68
77
46
132
37
67
136
7
49
66
28
47
40
194
147
101
134
173
101
31
170
199
190
106
87
158
170
108
91
24
140
78
152
103
6
0
56
59
63
83
106
115
222
126
83
28
77
117
88
0
14
55
66
106
106
92
85
28
132
236
255
173
98
48
17
114
75
0
133
88
54
44
128
74
80
117
127
131
139
105
94
148
96
16
97
158
29
194
60
114
141
83
229
195
201
35
0
94
45
133
95
58
136
153
32
113
89
141
144
84
51
108
93
129
136
147
109
80
54
54
32
72
19
9
51
9
23
78
0
49
56
0
49
0
40
49
84
141
34
86
71
109
78
146
66
55
43
48
114
93
114
87
68
102
169
120
66
61
82
76
83
95
121
97
129
126
21
74
43
98
179
75
62
65
174
133
88
48
162
169
47
210
30
99
114
50
101
37
56
139
85
131
159
104
57
136
116
68
173
78
19
52
37
63
33
102
95
176
0
25
78
160
46
82
207
74
130
55
103
95
174
67
48
3
49
130
19
85
87
35
184
132
51
81
102
0
157
46
82
46
108
136
146
111
48
34
174
84
60
92
81
22
62
108
153
101
45
87
131
117
110
127
75
124
182
31
4
73
86
68
35
195
144
122
102
115
145
129
98
73
61
0
75
130
129
128
181
61
27
98
95
234
183
119
35
53
85
189
178
22
164
61
72
74
48
134
0
0
29
29
114
27
206
97
39
156
213
137
187
95
84
140
155
165
221
113
66
120
142
97
80
34
24
0
77
146
100
13
7
93
84
71
104
158
37
110
61
76
40
45
117
64
82
82
24
89
140
81
157
109
200
227
170
87
0
11
95
78
26
22
111
240
163
99
104
112
144
105
28
72
105
80
179
226
101
68
135
50
139
85
227
231
230
73
110
50
159
48
84
0
173
144
113
34
78
36
157
149
150
59
83
64
93
101
156
76
137
110
32
178
125
122
44
6
13
28
26
67
10
2
1
0
46
82
65
125
166
54
91
100
107
64
74
78
146
81
88
73
80
92
75
89
107
99
64
78
85
0
116
45
124
124
73
31
164
73
72
27
147
171
65
71
40
110
192
133
62
97
140
81
136
136
72
141
90
96
68
151
120
59
153
155
118
63
86
91
122
126
76
32
104
0
84
86
21
86
125
0
157
0
90
105
118
122
98
81
80
98
52
117
124
69
25
111
144
0
19
133
51
167
47
2
56
96
45
105
7
60
95
76
146
58
138
77
84
114
152
72
32
129
71
104
188
84
134
35
124
0
78
103
75
170
85
136
109
59
0
147
125
66
33
104
161
82
202
110
83
33
26
47
82
173
158
133
41
94
21
3
90
110
100
97
102
30
94
178
92
39
197
0
26
73
229
144
67
135
0
35
64
165
186
92
57
170
193
210
206
207
46
38
203
158
137
173
160
83
153
126
70
57
3
12
13
35
127
74
58
36
0
66
49
0
59
127
176
3
74
59
76
93
51
103
86
48
90
69
147
85
83
110
178
198
161
89
82
65
114
51
106
163
124
96
43
114
65
96
62
94
99
201
60
133
98
127
140
144
113
168
227
192
138
39
0
63
23
75
0
60
74
83
156
11
51
104
83
28
109
141
112
73
56
27
89
123
122
158
233
96
129
66
79
141
75
76
17
0
0
39
50
0
6
87
72
0
71
145
81
66
131
173
125
86
96
131
80
171
117
121
137
132
111
84
62
89
35
64
0
66
17
165
127
174
118
174
130
111
57
119
75
59
148
114
72
82
124
115
27
102
129
79
101
168
145
102
109
161
208
138
97
193
144
90
111
63
197
119
58
56
51
53
5
70
67
0
117
95
59
139
82
118
140
63
155
221
106
44
131
44
146
114
84
164
106
179
76
57
61
47
101
40
194
77
121
93
86
92
32
45
41
152
103
96
7
98
87
59
68
0
47
135
154
113
145
164
129
97
85
99
139
146
127
126
113
125
137
46
59
124
134
28
62
123
154
133
71
88
151
61
85
148
158
133
116
49
68
0
67
18
14
47
51
87
124
113
146
63
104
97
186
181
110
66
42
44
60
42
127
98
134
151
57
85
127
176
229
182
59
50
86
229
193
124
173
166
62
76
36
33
46
10
71
25
51
73
38
165
27
1
0
4
7
13
64
222
29
96
144
65
62
52
59
63
142
83
46
120
43
121
135
84
142
227
200
173
116
139
152
125
109
31
213
94
59
97
100
113
60
255
240
54
153
147
63
192
195
255
255
220
155
75
19
17
23
183
32
69
57
28
151
160
190
41
39
100
51
69
142
86
188
169
111
150
89
129
0
80
86
108
14
54
68
97
110
8
0
1
0
57
51
63
75
43
55
67
173
55
40
94
91
152
116
129
104
132
135
126
134
121
101
99
129
131
40
38
10
33
125
38
173
93
92
146
117
104
128
69
152
116
63
162
148
78
132
63
27
96
114
77
14
92
161
81
88
0
66
137
140
195
164
150
54
121
77
85
11
43
33
80
9
99
110
1
203
171
185
34
109
90
127
113
207
179
103
66
119
69
108
133
140
113
124
78
161
68
76
44
142
176
112
94
33
129
184
184
111
48
49
100
226
0
131
91
154
120
99
34
48
37
202
142
147
2
73
74
147
159
109
81
49
130
82
123
133
147
93
66
104
93
84
59
0
141
75
42
47
33
33
80
100
154
112
167
171
144
100
43
30
78
184
188
150
80
107
68
69
84
86
169
148
154
131
5
51
142
101
101
82
81
42
34
63
159
220
212
121
0
4
7
189
197
32
112
98
84
0
10
22
66
72
16
121
114
46
63
103
103
58
0
0
28
55
85
138
141
54
120
111
100
32
54
116
79
82
86
30
157
94
29
18
0
0
72
113
203
255
255
181
157
146
106
126
122
112
62
106
110
174
206
203
255
255
255
255
196
200
117
55
130
0
56
39
80
0
139
61
141
77
86
187
120
107
0
173
147
73
62
83
10
33
89
99
56
115
16
0
68
74
94
72
44
132
111
49
157
0
124
26
121
99
9
0
87
151
71
65
54
67
17
78
163
172
143
149
110
96
125
137
121
135
117
101
28
77
107
97
82
146
121
94
134
93
119
124
114
100
91
150
66
77
69
95
76
86
81
78
112
0
61
134
113
150
168
127
120
79
64
87
118
129
64
30
0
33
20
61
144
36
137
94
0
19
181
184
200
96
132
123
65
35
132
124
45
112
162
131
106
97
91
160
130
223
148
32
33
4
92
114
127
52
197
253
144
134
75
72
104
166
235
48
152
208
45
15
65
17
85
89
149
47
129
64
97
143
41
143
114
109
82
121
135
156
123
97
119
159
116
13
82
4
44
152
74
23
42
44
67
97
124
198
155
141
155
87
117
45
61
61
124
109
51
216
141
67
83
88
67
166
163
124
71
36
76
131
94
122
69
57
154
183
149
139
226
198
132
0
0
4
119
218
71
63
100
113
28
14
51
93
104
26
51
69
65
115
90
78
134
75
118
94
61
142
87
125
142
123
87
83
50
110
169
52
64
151
44
90
74
140
73
111
64
27
68
96
192
206
205
209
228
207
255
255
255
255
206
211
255
246
255
255
255
245
197
131
81
63
172
133
87
102
4
87
34
69
130
152
142
161
159
163
67
71
146
142
119
120
39
0
60
2
101
14
84
25
4
55
80
116
55
76
128
81
166
124
125
75
110
43
0
23
43
72
117
132
124
112
101
59
140
124
160
135
91
49
89
125
144
126
165
101
106
32
70
87
122
159
150
169
128
151
121
128
144
94
119
115
124
63
86
92
50
127
119
93
25
76
64
41
81
100
158
78
123
138
99
83
65
105
95
76
23
11
101
48
197
120
56
90
0
2
23
36
174
190
146
217
193
83
56
102
120
56
78
147
195
108
94
61
201
146
183
215
161
107
77
41
150
128
69
193
61
105
113
16
100
81
132
191
81
72
159
145
111
33
41
165
133
115
28
76
23
134
97
44
163
149
148
133
149
155
102
101
69
63
186
143
50
68
115
95
140
96
28
56
72
66
126
46
152
237
167
135
117
115
66
0
37
115
107
126
188
153
121
120
69
134
175
121
65
132
77
64
15
116
154
148
141
55
193
207
145
205
192
91
11
0
4
34
229
108
73
109
88
8
6
86
173
136
142
85
196
33
175
44
75
112
128
148
105
73
103
111
130
116
76
0
80
107
124
173
91
108
183
78
62
154
143
66
153
150
194
222
174
161
120
149
159
180
191
245
255
255
255
248
203
255
209
241
183
182
131
107
66
120
120
99
140
93
61
0
131
139
166
187
76
232
139
213
137
89
168
56
200
114
86
76
34
95
58
27
7
15
54
0
49
43
123
142
147
28
22
92
51
132
32
111
30
77
36
43
43
73
38
0
0
141
52
144
57
120
212
42
0
27
0
33
0
66
49
0
6
18
37
67
36
28
0
69
50
65
3
6
24
55
17
80
88
0
0
46
0
0
33
15
53
33
30
4
60
0
36
26
89
125
15
112
48
0
29
9
0
29
111
134
71
0
39
35
17
0
24
47
77
47
28
140
51
32
26
60
38
17
0
69
24
92
26
65
8
33
33
9
16
0
56
26
0
0
34
28
16
23
100
45
60
0
0
0
7
0
0
21
23
0
0
39
48
72
113
47
39
0
89
103
38
0
0
70
75
0
47
24
9
56
26
90
48
96
39
13
0
0
50
41
84
0
26
32
0
16
22
0
51
14
14
70
100
54
58
59
107
83
71
86
57
6
31
49
0
45
0
85
55
33
0
39
74
47
49
139
0
96
12
8
32
33
0
0
95
36
19
33
70
0
43
52
3
58
55
60
116
26
29
64
0
46
41
0
30
24
23
32
6
49
83
88
51
0
0
45
73
41
73
59
37
58
26
0
26
50
50
64
68
36
26
38
34
111
0
84
69
13
26
18
103
21
0
33
91
95
115
131
144
85
0
49
0
0
46
0
0
0
50
32
119
105
117
54
79
55
36
80
148
137
32
128
125
46
145
66
0
32
0
149
49
26
65
42
78
0
0
0
52
53
0
48
24
40
63
97
41
42
26
39
86
51
90
100
78
151
31
5
0
0
8
0
64
30
0
0
45
53
11
8
56
5
29
40
35
0
0
1
1
25
85
40
66
48
12
26
51
43
45
0
19
177
52
49
0
85
48
134
67
7
52
31
0
17
30
13
0
0
111
26
0
0
60
66
15
24
15
26
79
88
95
56
26
40
26
26
14
0
13
8
51
52
108
40
39
94
53
0
76
53
18
0
0
43
12
28
0
28
0
56
66
69
31
52
52
66
59
0
74
41
103
31
63
39
65
60
61
47
43
26
71
36
50
39
40
26
89
76
40
0
135
113
36
46
80
41
0
43
38
41
41
36
100
30
32
0
29
0
93
40
0
85
77
72
66
84
119
70
58
45
39
65
57
0
0
0
0
6
18
47
31
54
39
78
30
112
5
38
44
0
81
16
64
83
103
44
83
69
66
53
70
68
0
32
23
76
26
47
96
0
0
0
0
0
0
0
0
0
0
43
0
17
58
0
19
0
41
65
7
14
50
32
26
142
32
56
26
49
32
71
38
26
132
17
42
41
210
26
66
69
0
5
0
77
26
85
67
46
26
26
15
41
39
29
45
0
44
48
75
67
40
26
74
26
54
84
57
141
144
45
26
171
109
143
59
0
18
44
71
71
90
69
41
100
36
39
39
36
0
37
0
0
49
148
57
6
0
48
33
145
26
99
72
42
84
55
0
48
54
63
26
75
46
0
0
12
31
24
64
50
121
0
22
28
0
50
0
17
53
74
34
65
60
23
21
22
73
86
85
11
117
128
0
0
48
65
141
74
47
4
35
40
29
105
26
4
0
26
90
35
0
39
12
50
0
74
26
49
40
95
31
0
11
0
0
0
0
4
26
54
33
47
30
0
67
67
21
112
68
10
0
40
91
34
42
1
70
45
0
99
76
0
3
97
50
57
102
20
13
74
0
41
39
11
0
9
0
0
17
0
0
51
35
39
59
24
22
0
0
36
110
99
0
0
0
33
26
69
0
71
67
97
32
56
52
0
19
0
34
0
89
62
55
57
7
6
46
34
26
46
64
45
31
0
0
53
89
111
50
26
60
26
90
26
111
89
39
38
0
60
112
75
39
1
27
34
16
0
56
52
4
0
22
60
100
77
46
26
61
25
1
23
1
0
0
0
0
27
34
0
60
43
0
50
0
0
46
25
47
0
0
98
56
79
132
59
46
57
26
32
70
80
43
34
0
176
102
0
0
0
0
20
14
8
0
40
0
0
3
0
0
0
26
49
0
0
31
0
0
128
97
5
0
33
44
44
92
133
93
26
42
63
144
0
115
37
27
82
125
62
125
89
64
33
139
34
4
34
21
44
41
80
172
69
104
56
33
89
45
23
0
29
66
52
0
13
5
73
104
77
8
58
14
0
7
61
0
0
94
33
90
68
28
86
53
61
53
65
0
8
0
53
0
13
0
9
79
41
0
44
20
0
11
4
0
42
0
57
37
37
42
39
0
35
0
33
172
104
16
9
83
65
83
0
0
20
80
62
55
49
58
27
10
9
0
14
0
55
68
116
26
1
0
17
0
34
100
85
0
26
55
28
67
57
51
2
22
21
114
0
23
19
60
30
26
50
0
0
73
43
48
85
93
102
59
54
91
32
2
0
37
22
0
0
0
3
31
16
21
56
39
37
28
0
0
64
7
0
66
63
26
37
62
26
0
0
93
117
0
27
10
32
23
0
17
16
47
77
2
21
0
27
0
27
0
40
156
59
38
111
119
86
124
39
62
119
54
5
105
70
82
60
0
0
78
74
0
56
0
92
0
68
61
89
95
72
68
91
87
63
52
0
15
0
0
26
72
31
89
36
10
0
5
1
74
87
0
19
71
46
33
101
26
37
42
26
42
77
73
28
56
5
7
0
0
77
0
29
0
96
0
0
0
3
76
0
0
14
14
60
0
0
0
0
0
12
0
0
64
44
27
54
6
12
63
97
119
83
149
90
53
62
108
40
12
36
138
139
75
91
71
71
122
27
3
58
60
47
30
2
83
99
46
26
55
95
56
80
4
0
3
48
51
16
34
5
14
88
92
34
74
52
0
0
35
49
82
59
88
0
54
88
64
33
0
0
0
0
0
13
55
24
21
0
26
96
44
0
54
61
41
0
0
8
108
93
75
48
55
119
98
40
25
62
27
47
108
77
0
71
42
39
100
38
0
132
111
57
50
0
16
33
27
0
22
26
45
87
87
69
74
32
46
0
26
93
89
0
70
33
53
73
57
79
52
0
46
51
17
0
58
35
86
0
26
31
31
58
35
46
26
57
28
52
118
56
61
0
90
41
30
0
0
48
55
0
63
31
68
48
0
27
0
0
0
0
0
134
42
41
52
73
35
0
0
0
6
51
0
12
34
0
4
77
70
53
70
42
0
0
0
12
0
60
29
63
40
0
18
81
116
26
57
34
147
86
38
39
89
47
26
26
59
3
28
0
44
36
41
6
87
56
26
142
63
65
76
84
78
86
95
0
0
58
107
44
73
54
130
40
0
40
35
69
61
26
52
51
17
0
56
0
0
0
0
61
60
6
0
0
33
0
0
50
152
100
63
129
0
0
0
32
0
83
42
0
0
0
5
26
44
0
0
0
31
75
38
74
3
16
74
92
37
0
160
70
147
86
149
32
16
0
71
0
6
24
147
45
100
78
40
48
139
46
41
17
105
75
26
121
69
59
26
80
124
49
121
0
64
0
48
14
10
9
0
0
76
79
54
71
53
76
0
48
50
51
58
110
36
54
40
0
0
11
7
0
0
47
44
18
83
65
51
63
101
26
9
48
90
77
47
32
45
97
144
21
68
0
68
86
90
0
2
77
26
32
79
34
31
0
86
137
127
3
50
59
13
65
78
26
0
0
0
53
58
26
82
28
105
64
3
63
71
26
81
60
67
56
13
43
73
60
80
40
26
51
43
26
26
0
15
44
64
31
26
77
53
33
82
38
48
43
26
12
0
41
15
76
0
17
5
26
95
28
38
26
51
26
46
48
64
130
44
0
53
83
115
38
74
58
39
35
46
53
0
0
2
0
60
0
30
76
69
70
17
70
85
0
75
70
33
95
45
70
26
0
0
10
0
64
0
68
87
41
116
33
36
42
23
67
26
42
0
0
66
76
31
8
0
18
3
37
107
26
26
98
126
34
132
49
26
0
33
58
113
0
0
46
26
40
77
0
51
0
24
68
0
100
24
0
0
26
0
40
2
41
78
55
22
0
0
0
131
64
148
24
57
5
8
1
39
91
138
54
32
37
0
0
4
43
36
29
0
47
77
36
20
86
35
54
39
40
2
73
73
145
26
58
19
69
0
55
23
10
34
22
93
144
45
79
40
116
28
74
115
39
26
167
107
32
136
115
96
116
108
85
11
25
0
62
4
17
3
0
1
0
35
52
64
26
49
52
62
41
26
26
74
57
27
58
8
63
36
0
12
26
78
0
35
90
29
26
42
40
21
16
0
53
56
77
84
26
74
35
97
151
47
3
114
0
45
0
92
86
60
102
44
72
55
76
0
77
40
0
0
41
68
0
23
55
4
68
0
23
0
0
0
56
42
38
26
92
55
68
86
27
15
30
0
42
68
55
30
63
69
51
0
24
16
0
0
47
41
26
63
70
79
48
40
68
55
36
65
62
83
57
25
55
36
80
116
34
16
18
39
31
0
0
0
35
118
72
76
97
19
7
26
61
0
74
55
0
73
74
81
0
20
84
72
55
25
16
41
87
77
63
0
71
157
86
60
81
123
26
6
0
8
0
56
36
58
71
78
20
0
4
0
7
37
86
58
66
0
0
76
101
58
2
25
54
60
54
27
36
171
73
57
60
0
0
0
0
65
0
48
15
27
52
97
26
0
0
36
58
27
95
46
6
75
104
81
108
64
59
57
67
0
32
0
76
73
107
161
146
31
0
80
38
93
55
69
119
26
44
53
0
0
46
0
26
32
56
40
44
39
0
0
68
0
32
0
6
0
102
119
102
26
0
89
77
0
65
0
0
0
20
40
144
177
70
79
30
0
20
0
32
62
89
16
3
194
35
89
97
43
55
26
7
6
0
10
22
24
26
27
0
0
92
110
55
37
46
26
47
47
64
57
87
110
82
120
89
88
41
66
83
57
52
38
33
0
0
0
67
0
41
51
47
57
83
59
40
0
103
127
132
34
48
27
76
0
68
76
55
81
68
78
52
117
137
59
67
0
0
0
41
7
19
28
26
18
26
0
0
0
33
59
26
61
78
64
5
33
56
10
0
24
87
64
44
37
0
26
59
0
19
9
140
0
0
18
0
0
3
87
62
0
0
0
26
125
86
89
87
96
100
59
63
89
38
71
64
147
33
31
0
0
104
73
87
10
55
111
58
29
44
32
50
65
88
74
96
155
168
73
77
52
35
4
7
0
87
39
103
26
46
31
136
45
68
62
117
29
114
0
0
0
1
124
79
46
47
0
0
29
1
9
36
48
69
67
37
3
45
64
41
26
0
26
149
52
43
29
0
0
7
33
72
0
0
176
93
0
28
0
56
90
39
0
25
0
27
69
118
98
35
0
36
117
82
83
88
19
61
0
0
0
70
39
123
108
134
0
64
34
126
60
28
115
39
84
33
8
33
98
0
15
104
31
62
26
58
52
38
107
87
96
102
128
25
0
6
17
52
152
78
26
0
15
0
36
88
85
131
182
26
82
30
88
26
56
22
31
0
0
20
14
82
0
45
27
33
29
168
29
9
81
4
14
0
50
0
0
87
0
19
0
53
51
66
66
17
91
56
48
105
45
0
43
69
59
95
65
69
74
55
75
44
5
34
0
26
81
18
0
10
100
4
73
80
0
75
126
85
94
37
222
198
21
13
96
75
66
62
36
14
66
26
28
26
76
0
44
45
91
4
22
0
39
62
63
20
0
86
35
4
64
83
26
61
15
26
0
16
38
7
34
26
28
64
35
10
94
13
0
54
91
47
29
76
0
66
0
7
11
0
3
0
142
9
62
90
59
66
55
0
83
26
91
58
26
0
68
17
0
1
5
49
40
0
66
0
18
33
111
100
87
61
0
0
82
0
0
0
8
89
69
17
15
0
94
36
49
74
98
102
51
83
29
80
52
64
97
0
23
43
76
51
25
50
0
0
88
67
112
48
26
12
14
133
144
105
88
70
99
38
21
91
69
39
36
61
0
44
90
60
122
52
26
49
93
25
89
74
99
60
37
0
60
0
92
93
46
50
1
3
0
84
76
50
69
0
26
133
114
26
63
130
47
42
209
35
26
101
93
138
61
57
42
78
80
45
93
0
38
26
48
83
83
31
67
45
223
26
26
63
137
54
67
87
76
26
68
160
115
140
26
0
100
26
128
33
0
12
0
140
111
0
34
50
101
64
118
79
0
93
27
30
101
43
0
46
247
37
37
25
20
4
0
30
31
61
0
26
0
43
15
0
106
123
6
104
83
66
85
27
0
69
57
33
61
90
98
83
37
35
0
174
17
0
168
92
0
0
53
71
7
0
39
1
0
148
81
75
43
189
187
122
16
26
28
51
104
61
51
77
88
0
26
83
8
53
17
43
38
0
8
22
15
154
1
60
75
30
97
58
65
74
26
14
0
17
0
4
56
46
0
0
61
38
5
63
0
0
137
0
0
27
70
26
29
28
35
0
0
0
76
67
0
0
39
48
49
43
3
53
26
16
15
31
38
26
0
6
64
53
16
17
0
24
0
1
0
117
66
26
33
49
2
24
16
84
11
6
29
0
23
15
0
114
0
0
54
63
27
31
0
0
123
153
26
114
0
49
127
105
53
3
30
1
209
194
90
138
123
111
43
46
20
0
99
100
73
62
145
82
73
153
35
49
59
0
0
51
54
101
19
73
136
158
0
41
33
47
17
15
5
25
36
26
57
0
0
17
74
62
12
38
143
150
26
127
74
86
81
63
89
28
70
226
26
33
44
154
89
0
76
26
58
26
0
47
32
0
1
150
0
0
85
90
34
73
60
33
0
58
108
26
80
102
52
44
85
44
104
67
104
54
97
149
41
0
57
114
85
75
46
148
91
96
79
137
75
126
59
65
28
76
15
30
0
53
142
68
105
0
15
15
0
47
26
0
9
41
53
45
0
52
103
52
0
0
0
82
30
64
91
45
0
61
97
83
77
53
42
26
244
128
0
26
6
0
0
28
124
64
0
0
28
19
1
25
5
0
67
26
93
115
97
99
10
0
80
51
88
110
62
26
0
0
0
52
52
82
37
20
27
111
135
164
26
47
26
161
73
107
61
39
4
2
20
0
25
78
17
27
2
49
39
57
39
0
0
134
0
0
45
0
0
49
48
96
48
50
16
69
32
3
0
0
0
0
0
8
3
32
27
12
14
14
26
26
69
9
55
36
0
0
52
23
0
0
19
81
80
0
132
116
15
5
55
88
105
88
0
2
0
52
60
0
26
54
18
0
41
50
0
106
91
81
32
21
47
69
26
75
113
0
15
107
96
82
26
72
26
43
41
72
0
36
30
69
124
142
65
60
101
96
42
121
40
93
25
9
3
49
75
59
4
81
57
32
76
12
20
5
52
91
99
36
0
12
40
40
58
0
69
100
155
46
113
26
62
51
100
79
26
119
113
0
0
27
136
131
52
53
26
45
0
0
0
0
42
122
26
0
0
60
36
84
35
114
43
64
46
43
17
169
0
35
0
81
47
29
27
0
94
180
70
52
43
35
107
55
71
100
26
26
67
68
81
91
42
0
62
0
80
30
0
0
0
67
73
86
65
109
5
14
0
0
22
29
85
97
18
21
8
81
48
26
0
0
9
16
0
103
0
0
57
62
0
10
0
21
63
0
79
104
0
0
0
0
0
86
47
51
0
0
14
8
0
0
2
26
88
92
61
28
0
0
56
81
86
81
11
21
37
0
49
47
44
35
77
60
52
12
40
38
170
94
94
57
117
86
57
42
0
0
8
0
0
18
80
0
0
0
73
38
35
51
57
7
41
2
35
112
0
0
9
5
91
77
47
0
89
47
25
10
0
0
0
0
0
24
0
117
52
88
78
51
89
88
0
0
0
22
16
99
117
154
84
57
35
54
0
108
115
44
36
0
4
134
104
66
0
4
78
68
49
35
22
43
43
0
81
0
11
26
96
50
60
17
0
76
47
123
0
0
26
26
77
62
39
39
26
91
0
78
82
76
131
97
42
0
61
0
118
26
123
166
87
85
0
42
86
99
133
50
72
11
0
0
0
37
0
52
4
50
16
0
32
86
77
90
93
80
150
127
49
4
118
81
105
50
45
42
85
135
49
33
40
100
124
0
0
0
14
10
56
30
107
77
153
26
0
35
91
41
31
66
0
16
27
39
26
54
122
0
9
4
73
54
66
50
64
84
94
26
43
26
86
71
67
74
56
61
132
81
124
99
64
59
73
32
7
58
89
77
0
31
0
53
55
52
74
32
3
0
34
2
49
47
100
45
43
0
0
136
9
0
37
3
0
35
82
0
11
68
81
7
0
0
6
0
10
7
185
9
45
26
66
33
0
45
14
25
36
0
0
94
96
0
55
74
100
58
6
44
30
88
50
121
78
97
73
68
78
56
58
75
34
72
62
82
0
60
91
0
54
0
78
42
137
58
65
39
17
5
0
0
26
75
0
0
41
47
26
70
33
14
24
7
42
37
77
26
56
78
58
62
114
42
0
72
1
0
75
28
14
0
16
47
82
51
65
65
49
120
84
43
0
20
9
26
11
55
110
106
122
53
81
62
43
91
10
31
49
48
6
0
112
52
112
0
4
24
52
80
95
93
40
35
12
79
93
54
28
91
63
77
0
31
51
85
101
93
0
76
0
58
49
34
76
48
99
101
73
71
116
8
0
36
43
26
96
72
58
0
101
133
52
0
96
87
45
68
87
31
67
61
103
71
0
47
0
0
5
23
0
44
69
64
83
146
131
159
121
0
2
82
4
0
99
78
26
86
148
34
40
66
54
134
26
18
21
19
0
32
0
21
0
0
58
66
75
34
20
0
23
30
17
29
71
11
7
78
0
99
54
118
159
69
125
162
149
26
61
76
113
104
96
81
53
56
172
187
53
23
55
49
24
54
51
0
68
60
0
1
12
0
19
84
77
63
70
46
2
0
81
75
57
68
67
70
40
31
115
33
74
25
21
81
34
56
96
18
56
0
0
36
3
0
39
0
5
18
0
56
125
71
78
4
51
0
169
27
35
57
19
36
115
82
108
88
0
2
49
146
181
59
18
60
57
97
94
164
77
26
48
86
21
75
48
97
60
100
131
78
89
118
69
41
41
0
40
38
34
78
84
70
91
36
0
80
29
47
39
48
75
5
0
0
87
94
0
71
39
41
0
92
37
118
42
26
91
63
20
22
15
113
31
81
74
106
45
0
0
47
32
26
107
36
43
0
42
40
26
37
26
121
89
82
43
98
30
21
0
46
27
61
136
0
0
0
0
108
76
69
0
7
0
26
41
91
26
66
65
47
75
34
0
69
66
100
53
104
8
0
39
8
59
83
99
79
111
38
3
31
0
39
17
2
99
0
45
47
3
30
79
100
0
42
4
8
41
0
55
29
115
69
0
7
0
74
0
0
60
18
0
3
105
100
155
80
116
67
43
60
51
10
27
41
52
53
8
215
26
0
0
63
73
0
31
45
0
0
17
0
0
64
38
82
98
66
94
180
169
148
211
214
98
64
23
94
225
223
207
114
0
89
65
0
64
83
0
93
82
56
95
85
108
26
80
0
26
0
71
29
0
24
2
72
6
92
47
37
15
0
0
86
100
61
73
43
120
47
34
23
105
31
89
63
28
0
0
9
101
71
77
96
65
11
82
26
26
0
0
0
11
0
0
50
17
0
0
0
5
9
87
55
0
30
9
227
28
66
4
18
0
148
26
113
47
0
6
13
136
31
78
106
77
88
78
139
80
106
62
57
31
70
26
111
35
24
37
36
32
55
91
84
66
39
20
91
63
37
84
146
57
69
15
0
108
0
53
49
26
32
77
0
0
71
26
62
86
0
41
27
13
86
65
82
58
53
49
14
33
78
24
64
74
28
57
5
46
13
47
39
0
68
98
94
58
82
110
26
27
0
98
44
88
76
33
14
33
148
85
89
68
89
33
0
0
2
39
26
96
0
112
138
47
86
58
0
55
48
100
27
0
0
102
131
112
44
106
45
0
4
0
51
143
90
103
66
61
60
0
13
12
0
75
19
24
47
64
82
78
101
105
50
0
98
0
22
0
118
0
170
31
45
30
21
12
48
84
45
0
27
0
13
50
45
43
117
112
6
20
51
26
0
50
0
41
33
127
35
35
0
108
33
0
0
67
24
0
0
29
42
104
93
26
102
91
90
67
50
125
152
244
244
210
181
73
116
106
47
0
35
88
0
49
118
24
34
90
89
54
193
37
37
0
37
11
96
59
60
1
5
6
0
61
15
29
26
160
45
0
21
77
50
47
60
53
44
118
74
105
106
83
105
69
34
52
30
5
72
0
0
101
0
25
68
12
0
5
4
0
0
22
17
46
63
12
0
0
0
25
0
43
116
66
50
58
48
22
0
40
0
15
27
119
24
0
72
102
52
28
83
121
114
46
112
154
62
59
77
87
57
43
0
73
65
26
48
30
0
26
44
21
63
44
48
64
17
19
7
163
121
0
0
0
58
0
52
57
82
0
30
0
48
68
32
33
171
24
35
16
31
29
0
11
97
143
63
17
20
50
0
107
32
48
26
0
14
56
37
31
70
35
93
153
67
102
191
116
79
26
27
43
26
76
54
0
124
62
90
105
75
52
0
0
15
72
0
0
142
96
102
64
35
126
0
0
54
74
74
35
0
49
84
40
35
26
72
52
77
71
44
41
35
139
14
46
36
30
35
13
6
0
90
65
68
54
77
74
122
4
22
45
10
99
0
0
16
98
5
110
124
36
36
0
96
67
34
91
26
74
0
0
31
86
85
65
33
0
26
26
26
0
56
0
0
0
30
0
36
0
138
60
52
0
84
50
50
26
46
0
0
3
0
0
62
87
83
43
26
6
67
36
62
41
20
38
49
66
0
93
72
0
123
120
0
140
0
67
72
93
12
15
0
2
83
21
36
95
39
11
0
2
112
38
57
15
32
80
32
20
35
41
118
97
61
0
65
138
108
117
175
107
86
14
42
0
9
98
75
0
0
0
0
2
35
10
36
22
11
47
121
90
0
53
14
0
0
0
36
65
67
143
65
85
14
21
0
41
49
26
81
84
36
44
20
91
67
38
53
141
64
116
56
79
115
64
42
15
44
58
44
86
0
66
3
44
51
8
89
60
76
66
67
74
107
17
87
64
64
121
0
0
83
39
0
57
17
145
184
16
0
43
42
45
26
164
99
26
26
75
30
69
50
54
127
113
107
65
47
86
0
0
0
0
34
66
53
39
0
14
25
13
119
77
65
59
78
67
39
26
98
30
103
45
0
29
70
146
92
44
77
28
25
76
20
0
0
77
104
106
53
87
105
0
0
25
75
43
30
32
175
42
22
51
9
39
42
55
88
81
100
77
0
0
0
120
14
18
49
26
27
24
11
72
36
55
44
17
0
49
6
0
27
27
0
0
19
0
61
165
0
0
0
106
53
26
106
26
42
0
14
83
84
106
112
60
74
112
60
122
73
21
24
0
0
43
0
26
24
39
25
0
0
128
36
47
28
26
12
0
8
0
0
26
131
92
47
0
54
68
163
114
137
69
30
81
52
48
96
35
0
99
123
0
18
0
42
27
0
87
62
40
29
63
29
37
74
49
6
9
2
33
47
0
5
0
64
47
4
0
0
138
57
66
0
0
119
64
116
41
40
83
3
11
44
21
84
83
0
0
19
0
4
90
142
0
27
92
99
160
126
13
20
39
55
34
0
40
42
87
77
54
109
43
31
4
105
95
119
116
100
55
40
102
79
48
66
75
54
51
84
86
38
92
26
87
34
16
10
80
61
62
76
9
43
57
63
72
14
87
90
62
61
154
78
119
90
26
59
84
0
68
61
48
55
15
0
84
72
0
58
26
0
46
29
71
29
26
78
0
88
109
10
48
169
88
107
87
89
0
0
0
9
89
92
72
50
38
0
29
76
0
76
0
0
0
0
0
82
93
69
73
138
64
2
31
5
149
26
116
33
12
44
0
56
48
0
58
84
30
90
33
46
0
63
0
43
76
114
96
66
61
31
14
26
44
60
31
60
9
45
29
0
0
47
87
26
25
33
36
0
69
67
0
10
0
0
41
20
10
18
0
106
0
0
0
7
49
82
26
32
55
80
94
26
70
36
49
26
94
140
126
119
144
37
111
46
47
144
45
75
0
0
25
58
0
0
163
0
11
0
44
26
26
66
42
58
1
0
11
1
26
102
68
99
67
25
0
74
111
76
75
59
86
73
29
0
0
100
106
139
10
146
0
6
26
105
78
19
101
40
174
24
0
74
60
54
52
10
4
0
0
53
78
49
11
30
46
30
58
34
22
51
84
0
52
55
92
24
0
95
0
29
20
79
96
160
34
101
61
76
110
79
104
112
0
110
26
0
26
0
0
26
34
6
16
26
52
66
41
30
61
98
26
14
89
122
103
26
75
89
71
94
74
55
95
99
122
25
51
83
120
59
55
15
41
13
91
79
52
77
72
0
58
111
68
16
49
66
96
95
26
44
90
93
148
112
79
31
84
87
112
88
140
57
0
70
0
87
111
100
0
54
30
99
50
67
71
78
50
78
147
177
76
123
49
46
98
48
55
0
0
84
35
95
69
35
0
114
0
0
88
26
0
25
15
2
140
134
21
26
54
117
58
12
0
96
72
26
80
36
44
23
0
12
0
0
0
9
0
24
0
37
15
23
12
87
90
44
15
61
0
2
47
17
49
66
137
35
26
17
106
30
66
46
87
26
54
43
44
46
20
54
30
0
95
0
30
12
0
67
44
0
0
30
0
140
26
74
94
78
60
89
46
44
46
26
145
181
115
147
106
26
26
34
0
67
7
26
56
0
24
0
81
41
162
165
26
0
31
97
4
5
0
68
45
66
4
0
45
33
26
26
108
36
131
40
20
0
26
85
50
41
84
100
71
19
12
73
1
178
0
93
41
127
22
73
25
0
54
56
26
47
30
3
0
49
0
7
0
62
76
89
72
55
26
70
61
54
0
6
64
53
31
48
40
129
26
0
134
30
26
39
33
26
26
44
48
26
83
64
0
53
0
0
6
77
0
0
3
62
26
0
0
0
31
25
26
61
53
40
93
55
7
0
109
114
0
43
81
66
67
70
77
98
106
46
40
60
7
22
87
108
108
68
84
54
60
82
52
72
91
87
138
42
10
31
9
172
96
36
69
49
14
118
108
40
43
77
111
121
72
69
0
32
53
52
156
107
69
26
40
30
90
91
100
80
58
95
95
129
205
105
67
53
66
55
71
38
4
6
131
26
66
18
0
41
61
19
87
82
26
30
4
39
0
75
116
79
95
26
80
130
60
4
0
59
26
27
48
94
28
50
17
17
148
148
123
131
38
36
35
10
0
36
33
35
0
0
38
41
0
0
60
39
36
98
61
33
26
17
30
33
0
105
33
79
79
0
66
0
68
0
59
37
0
0
0
0
63
51
43
44
32
39
31
82
26
106
26
107
54
26
51
54
31
151
150
163
77
13
38
51
0
0
38
0
0
0
70
0
10
52
121
68
190
26
45
62
0
91
10
20
124
113
0
0
0
66
26
97
44
127
159
26
57
33
0
67
149
56
47
120
158
26
0
80
117
177
74
0
0
26
0
14
36
26
118
103
21
76
100
4
7
11
0
0
12
0
0
29
93
68
64
41
58
66
58
3
72
52
46
54
14
0
161
26
68
89
43
8
0
42
52
26
78
50
26
67
37
0
85
0
0
34
10
46
45
0
52
26
0
68
12
0
29
78
63
39
26
113
29
63
0
128
52
36
17
79
72
63
36
13
55
43
31
84
65
0
17
59
42
66
12
7
86
50
71
63
33
37
96
62
35
86
51
83
113
69
0
113
22
29
112
126
77
31
125
149
109
107
50
49
26
18
40
98
86
55
44
48
26
99
144
85
69
58
188
118
170
165
102
54
66
62
33
74
0
0
2
64
121
59
0
0
61
26
87
75
50
31
43
34
61
10
8
132
106
155
113
99
84
93
59
0
6
5
2
6
0
0
13
42
46
53
171
192
168
177
96
99
71
89
18
0
0
6
34
0
125
65
0
76
32
0
26
151
26
5
118
98
82
28
138
76
161
66
36
0
45
26
30
96
38
69
60
84
95
91
96
55
61
0
31
0
158
126
42
90
91
107
26
89
57
70
143
119
82
40
0
0
0
18
0
71
49
26
26
68
0
0
0
0
45
113
52
62
175
0
93
0
65
87
26
0
0
24
92
99
44
117
142
133
28
95
23
39
11
83
26
95
164
125
2
0
95
92
135
0
79
26
26
9
45
67
7
100
88
0
58
87
37
37
53
0
0
10
0
13
33
48
54
43
71
0
59
176
59
34
5
0
8
72
24
65
50
64
46
39
43
0
0
84
0
50
90
83
85
72
50
103
0
100
61
35
77
35
24
66
88
9
22
19
0
72
64
26
1
0
23
48
26
0
135
41
0
1
1
31
3
51
60
28
0
0
44
26
21
0
13
26
5
76
50
115
59
69
66
9
72
88
72
82
37
99
43
93
147
16
22
41
63
132
128
72
76
151
93
71
166
152
115
38
59
119
70
83
29
0
41
78
145
99
55
68
74
130
246
206
166
53
23
107
47
31
122
0
12
98
56
55
2
18
45
99
55
29
132
33
65
26
101
0
33
0
93
43
114
125
81
41
117
57
55
0
2
0
0
25
0
0
0
0
25
89
103
142
139
146
75
120
59
73
9
8
14
40
36
93
70
0
52
37
0
35
26
60
142
60
42
28
50
21
99
66
0
30
48
0
0
63
53
0
26
27
102
68
31
33
16
72
24
0
0
43
34
35
46
21
93
24
11
35
75
93
2
0
0
0
0
0
38
63
36
44
57
93
68
0
3
0
0
28
81
26
49
56
44
131
49
93
26
26
60
82
30
127
26
106
91
149
69
38
26
34
54
0
9
32
130
158
62
0
0
95
0
29
26
35
69
60
26
37
0
33
85
74
0
77
38
90
30
36
0
0
18
43
70
37
26
79
26
87
73
86
144
0
0
0
22
36
63
0
9
94
60
62
26
26
26
0
140
70
0
103
65
13
0
0
0
84
31
26
92
0
5
0
76
25
45
17
0
59
76
56
72
81
69
0
29
21
62
159
5
0
3
0
61
0
0
38
40
24
5
50
8
17
0
0
0
22
33
59
73
0
58
72
19
20
34
13
47
70
68
60
101
73
25
21
66
94
152
121
107
106
176
157
175
188
168
125
127
159
130
81
103
0
1
2
91
101
14
16
26
40
148
167
165
115
42
20
101
88
65
104
0
28
80
0
60
2
0
114
26
90
67
97
84
136
100
91
0
56
0
70
52
153
101
128
61
55
30
69
59
4
0
83
51
87
35
65
16
0
30
62
81
90
73
61
38
76
98
12
35
13
35
114
91
34
11
0
0
0
4
26
111
37
50
10
56
158
45
86
60
0
23
17
0
15
98
29
65
0
17
33
0
0
65
89
0
47
162
36
114
95
0
11
40
99
74
7
32
0
0
0
0
0
0
26
55
0
86
89
51
51
34
26
31
39
0
0
3
0
0
26
58
79
63
41
103
26
34
114
133
60
53
29
104
44
0
43
73
0
47
83
24
0
50
122
0
0
11
23
7
19
0
26
39
20
0
32
26
82
68
115
26
120
0
39
54
0
4
26
0
1
28
15
0
0
84
70
69
98
138
21
6
42
62
30
0
32
28
28
73
0
80
0
33
58
59
44
164
0
95
52
0
0
65
9
92
29
76
64
0
75
62
72
0
0
21
0
0
74
58
64
59
70
89
53
25
119
139
13
6
0
13
6
0
13
0
0
6
0
0
0
30
33
23
25
12
32
40
85
1
91
82
56
54
16
27
14
59
112
68
145
122
50
71
95
168
173
130
116
133
147
192
227
197
128
119
115
156
143
37
38
107
39
77
175
10
22
12
36
16
167
232
189
54
15
0
62
43
34
0
0
76
33
59
71
59
45
57
74
50
61
52
68
54
95
0
26
83
34
60
46
119
107
123
102
98
36
69
123
18
0
67
82
61
93
39
41
20
26
63
65
131
63
101
146
72
79
48
62
19
61
108
60
94
48
0
0
2
7
69
59
38
98
61
150
55
0
48
27
43
0
4
17
135
95
68
105
93
3
3
0
13
109
36
38
115
152
98
144
41
36
0
1
26
6
0
27
5
5
73
102
48
64
63
27
25
61
52
39
26
58
56
3
32
19
31
0
0
0
0
0
95
44
64
75
26
26
108
91
30
62
124
6
0
10
26
42
0
0
61
109
24
16
92
42
45
18
21
24
14
26
26
52
46
15
0
124
48
143
26
59
158
0
94
67
13
64
0
0
40
46
66
12
35
74
105
137
103
69
0
7
77
51
26
20
28
26
41
92
120
41
22
60
0
19
10
0
103
26
18
0
33
52
90
56
117
40
0
67
1
0
85
21
13
71
80
6
74
74
65
52
22
0
0
32
141
126
28
0
36
29
0
0
0
31
0
28
27
73
40
63
0
0
4
23
18
39
49
56
102
96
37
34
2
0
85
77
73
100
126
155
125
131
194
207
186
192
151
207
190
254
238
216
166
188
159
138
149
131
54
1
158
36
46
57
49
0
63
0
77
170
165
90
55
59
34
25
76
54
29
60
67
62
47
41
36
112
135
70
28
99
26
67
47
0
0
0
6
95
0
138
101
99
57
156
157
73
71
9
50
52
140
51
59
55
5
39
0
0
0
26
120
26
95
21
53
10
6
10
0
0
57
65
34
5
3
39
45
31
34
39
108
77
23
84
73
92
173
2
15
24
123
97
41
10
57
51
0
39
7
100
51
0
26
35
67
38
83
26
37
76
112
36
10
40
8
33
42
71
120
0
82
62
95
26
26
33
33
89
0
0
0
0
0
0
49
23
31
96
161
57
41
57
44
66
97
58
171
50
117
35
16
87
84
9
40
61
26
38
103
72
44
26
26
0
68
0
0
155
119
48
0
42
88
31
0
0
33
89
112
38
27
21
63
12
66
33
0
0
44
0
35
30
98
116
63
42
0
5
7
54
59
26
29
0
48
32
74
123
107
28
41
0
26
65
0
109
3
2
0
37
36
67
39
21
24
64
35
0
59
0
9
0
35
14
66
80
68
58
27
32
87
3
0
74
98
80
43
48
51
33
35
0
4
0
19
68
73
26
33
22
0
41
58
57
26
101
30
7
77
68
30
50
15
64
69
144
134
127
149
128
169
211
214
196
221
227
207
206
209
203
247
250
198
150
143
177
126
125
6
28
127
26
28
29
92
30
13
37
74
28
72
43
66
14
15
88
79
47
77
35
81
55
53
52
0
74
73
33
62
54
76
0
3
0
0
1
49
0
148
123
86
87
75
53
71
112
36
59
158
119
76
194
95
63
48
0
0
0
0
120
0
29
8
18
65
89
30
20
0
55
31
47
17
21
0
60
59
59
153
58
77
30
72
53
97
125
182
2
23
46
80
85
54
0
0
0
17
0
91
53
28
41
60
44
99
10
29
39
53
52
40
26
126
11
26
64
0
75
24
104
63
38
91
26
36
37
6
50
36
0
30
87
0
15
0
12
96
61
97
41
67
80
13
0
0
26
10
0
92
18
80
26
23
74
86
0
0
78
83
71
0
46
108
0
27
0
138
125
118
0
38
73
26
51
34
0
57
56
0
0
65
44
11
4
0
0
0
26
0
93
71
35
61
128
31
0
7
1
92
50
34
111
26
58
11
52
143
52
35
40
79
53
31
26
99
2
0
42
35
21
17
38
73
58
36
62
0
18
0
0
18
14
3
59
63
0
19
64
59
62
31
0
55
24
30
0
52
51
65
36
22
11
0
20
9
58
26
28
45
87
25
17
26
49
95
80
90
42
67
12
25
21
84
101
93
140
129
119
145
204
183
223
222
248
249
208
219
203
213
208
204
191
164
170
174
142
107
100
101
81
87
109
6
120
0
4
31
99
37
17
0
10
56
0
65
11
31
0
83
57
26
37
56
0
6
103
104
26
69
34
14
44
0
5
0
38
0
119
89
37
156
0
26
64
116
66
137
114
56
87
115
91
37
70
16
13
17
9
85
30
0
86
8
42
30
85
20
0
118
26
72
5
26
75
0
44
122
88
18
56
26
24
61
26
33
104
45
57
7
70
40
31
2
19
21
0
0
12
63
104
48
51
2
77
0
8
25
34
64
82
106
76
155
24
74
16
89
12
59
26
26
94
48
56
28
8
36
54
25
9
56
26
5
60
26
26
26
118
108
26
0
0
45
0
0
0
0
53
0
8
110
18
103
57
92
8
42
80
77
0
75
66
26
26
57
0
156
107
66
36
68
65
0
68
27
111
50
86
0
0
60
26
0
57
29
0
30
0
37
6
1
14
11
4
16
36
57
126
62
26
132
44
76
34
2
145
88
82
115
87
13
75
70
94
0
0
105
63
11
24
8
63
66
0
0
5
66
33
18
36
4
76
62
44
0
71
68
60
26
0
46
100
42
48
12
33
53
57
30
23
41
80
98
60
86
77
80
38
55
38
0
57
108
72
63
104
0
60
97
52
37
100
101
133
176
198
127
181
211
195
239
246
214
217
212
209
255
255
209
204
187
180
175
146
171
170
170
61
134
66
76
21
18
62
49
57
36
41
19
36
0
43
0
50
45
74
133
84
80
65
36
56
18
0
30
52
78
26
32
0
27
23
23
58
73
38
60
71
93
49
0
0
121
115
94
177
32
26
53
42
38
19
0
4
93
15
6
56
153
104
50
8
26
46
0
3
10
34
0
20
72
0
71
0
51
101
21
0
2
48
69
82
0
75
99
122
48
71
0
0
53
45
111
68
12
0
20
48
42
27
48
0
0
18
0
0
63
66
47
33
56
74
20
80
67
0
19
44
46
33
33
52
0
64
61
0
0
0
0
40
17
0
62
16
40
96
94
114
34
3
3
49
13
0
6
51
45
18
8
13
80
57
119
60
85
0
113
118
29
41
26
93
0
87
26
113
136
124
26
26
52
12
114
1
10
16
99
7
21
120
26
44
52
42
0
0
35
31
76
53
41
38
0
0
61
52
96
0
52
76
0
98
84
62
112
109
52
54
7
21
0
76
102
29
78
64
0
0
48
0
23
35
0
0
44
0
34
84
29
19
57
26
1
43
103
42
52
0
88
103
11
24
101
72
48
26
39
35
50
0
20
8
27
17
4
61
44
30
49
56
85
85
75
71
3
8
29
77
52
93
90
89
161
194
223
212
251
210
203
249
255
219
221
213
255
255
255
207
204
243
187
185
226
248
212
159
93
56
0
26
0
0
82
115
50
39
3
11
58
30
27
0
112
51
0
116
54
99
176
88
44
32
13
34
94
42
82
63
0
27
0
64
49
89
71
37
56
39
49
72
29
167
99
79
82
79
58
57
73
40
26
48
67
0
0
26
48
110
107
53
0
16
25
36
58
32
76
41
66
67
35
0
11
59
83
80
0
38
60
35
115
0
33
77
126
79
49
36
32
80
29
2
94
7
63
50
12
0
0
73
17
0
45
21
0
83
26
45
34
0
0
10
44
7
0
97
44
90
26
26
91
0
0
53
45
0
15
49
41
43
0
50
55
107
98
89
170
33
23
0
0
0
99
109
4
124
50
0
0
0
41
145
26
108
33
72
108
36
39
152
0
55
13
31
14
122
152
120
69
43
86
67
8
63
71
1
0
56
137
26
66
26
26
27
0
3
39
53
0
11
51
0
0
14
140
49
31
115
22
37
122
73
3
84
113
80
16
20
0
83
9
88
94
8
48
67
51
63
40
72
26
26
56
88
85
0
72
44
26
21
4
46
78
94
66
25
4
70
80
12
27
0
53
117
64
26
26
39
0
79
16
37
13
30
22
51
152
21
0
88
0
26
64
74
92
15
34
21
87
34
133
151
251
250
200
214
218
210
255
255
255
216
213
255
255
255
204
206
253
202
203
198
190
179
107
36
0
0
56
7
3
27
127
96
57
79
73
64
59
30
133
26
17
11
0
61
7
69
39
8
67
35
0
66
21
17
53
35
0
30
14
83
93
39
58
0
2
29
90
81
94
116
50
174
26
43
56
86
32
97
109
107
1
11
0
39
37
51
69
73
20
49
103
26
47
62
80
0
0
53
26
26
64
50
39
13
57
46
2
17
97
34
40
26
26
0
23
0
0
54
68
58
0
0
0
82
26
4
41
31
59
80
18
69
75
26
61
9
13
12
0
41
0
127
0
0
32
48
48
0
27
21
0
24
62
42
41
75
70
36
4
0
37
89
168
44
0
0
0
26
69
39
62
71
26
31
7
36
25
117
94
139
91
41
98
118
0
96
126
6
37
15
68
49
26
94
152
164
41
0
0
74
63
31
43
27
0
63
26
0
0
27
20
16
0
0
40
31
0
71
62
36
125
48
30
73
19
14
89
100
25
45
56
124
76
8
17
0
66
0
72
193
141
10
7
60
81
31
45
0
45
41
38
36
45
55
30
0
20
0
1
77
89
79
0
78
97
104
0
67
72
7
82
91
46
42
57
0
107
117
61
0
14
62
26
47
26
0
71
0
0
26
89
65
68
60
103
103
99
164
181
255
253
205
214
219
212
255
255
255
214
212
207
255
207
204
255
254
201
199
206
142
127
79
61
93
70
6
7
55
34
62
0
78
48
42
56
72
63
106
53
73
79
26
0
122
130
33
0
114
0
8
99
92
81
17
0
49
0
8
97
99
49
26
14
0
64
60
27
59
51
62
146
64
99
0
13
42
8
2
59
36
14
89
18
29
14
3
50
29
38
0
8
90
16
25
0
15
0
26
0
77
7
86
7
34
43
80
14
60
26
0
26
40
13
17
0
17
71
26
34
57
31
70
43
64
84
112
61
30
20
75
114
101
56
53
1
20
0
48
43
35
45
53
46
97
79
52
36
41
77
32
0
26
26
5
0
55
22
0
0
133
119
26
48
59
0
26
31
151
66
185
136
43
0
125
65
100
126
92
26
112
26
78
38
37
104
139
0
93
0
139
43
0
101
50
102
174
94
0
111
4
87
0
0
0
52
36
0
0
5
69
52
26
15
29
26
60
12
4
26
123
46
50
45
10
52
102
98
0
75
39
74
149
26
21
65
70
3
110
158
56
57
31
28
38
26
12
73
49
12
0
6
55
42
7
16
0
10
0
46
59
115
78
89
37
89
0
23
72
68
30
85
66
66
76
47
63
54
49
11
32
104
26
17
35
43
68
65
91
8
0
104
79
88
123
107
132
239
255
213
212
255
220
217
255
255
220
215
213
210
206
255
255
255
254
253
248
240
211
197
104
79
73
39
26
10
25
51
106
80
0
28
44
26
46
77
93
82
115
94
72
38
102
26
111
26
35
104
0
58
46
122
8
5
33
0
0
47
105
86
57
64
60
26
100
35
35
26
26
81
45
80
46
0
0
11
26
26
69
61
7
22
24
41
45
0
0
0
0
0
112
87
40
26
0
53
0
23
0
42
0
42
43
50
73
107
0
71
93
0
9
24
0
34
0
70
43
34
69
61
86
26
62
98
57
97
60
78
0
0
0
120
138
95
60
78
83
53
139
94
26
130
36
77
26
26
62
0
14
43
1
12
76
0
0
0
57
3
26
110
29
21
118
62
28
26
39
76
73
150
66
107
85
114
74
26
98
72
0
47
46
79
26
26
116
121
87
26
47
93
38
33
79
106
86
143
169
120
53
0
51
57
0
26
26
3
0
0
2
64
29
26
0
0
0
66
24
85
82
77
42
105
14
29
30
73
32
6
59
14
117
84
32
68
88
71
0
49
54
84
14
0
31
9
35
89
60
63
0
4
53
76
86
0
24
0
20
0
88
5
119
120
30
31
92
133
15
0
99
31
79
56
0
21
15
48
50
95
34
22
28
0
38
65
70
26
0
24
71
0
47
51
95
138
90
166
210
222
217
255
255
222
255
255
255
218
215
214
211
206
204
202
251
251
251
246
232
208
167
100
142
113
96
70
28
36
35
120
76
0
15
20
0
56
71
65
67
78
51
173
84
145
52
151
0
26
79
65
77
71
26
18
91
118
3
19
58
88
26
32
18
40
26
84
43
29
59
41
26
83
66
59
0
37
0
61
75
51
102
42
0
61
0
0
34
39
45
44
105
56
0
0
85
4
34
0
36
0
48
17
0
0
102
72
112
48
37
92
0
0
53
14
7
4
47
80
71
67
62
84
30
33
3
0
48
7
30
19
0
36
63
95
44
145
15
56
87
30
71
69
79
63
57
39
33
88
0
0
0
0
0
37
12
0
49
14
0
101
45
0
39
26
49
5
37
76
63
55
39
30
36
56
80
162
105
128
0
34
23
57
25
26
0
96
50
26
26
13
54
33
71
55
61
107
62
78
102
73
0
23
89
35
2
0
13
21
0
54
34
28
47
0
1
66
41
28
167
124
105
43
90
10
41
89
55
32
59
46
0
74
40
18
80
26
80
34
0
80
77
0
0
82
33
108
46
36
35
0
13
78
54
58
70
3
19
0
0
9
68
59
66
48
59
56
92
23
14
77
0
25
50
62
61
29
33
10
76
79
46
1
32
55
0
59
114
0
0
56
26
29
56
71
107
139
248
255
219
255
255
255
221
255
255
255
255
255
255
213
206
204
202
198
197
196
246
228
156
185
211
181
132
120
70
87
54
32
26
0
0
0
51
23
86
92
56
69
20
5
39
57
16
123
45
9
36
29
94
35
38
0
78
24
62
15
6
15
26
0
106
1
97
31
35
54
42
57
39
26
141
26
108
73
21
6
27
103
53
58
40
16
8
3
77
50
38
36
73
112
51
38
27
140
9
34
0
12
53
28
18
0
10
121
106
97
46
0
0
0
0
46
0
0
55
24
0
61
82
52
26
102
58
0
3
54
19
0
6
0
105
119
29
26
133
111
27
118
0
0
115
0
0
37
32
0
66
0
18
0
0
38
72
0
0
80
0
67
32
0
14
0
120
30
69
0
114
69
112
26
22
75
80
130
99
183
0
60
44
83
0
0
86
91
29
43
0
20
65
88
68
81
73
6
0
59
56
65
64
31
78
26
29
79
0
25
0
11
61
74
39
89
0
64
73
80
0
0
0
37
124
57
78
69
40
173
57
15
39
15
26
75
127
82
148
74
0
26
97
47
60
0
27
77
48
73
52
26
66
55
75
0
59
53
0
0
81
0
0
49
107
59
6
28
57
40
54
25
0
12
25
47
26
26
0
25
0
0
47
29
52
66
0
11
26
0
171
0
53
14
37
37
43
178
244
255
226
255
255
255
255
255
222
255
255
255
255
208
204
203
203
200
245
194
185
212
212
176
182
228
173
152
133
136
29
19
29
27
0
121
62
103
72
60
54
135
27
100
36
0
68
28
71
26
57
44
90
63
47
59
24
17
34
7
24
0
28
92
42
0
24
0
42
39
62
48
2
0
0
20
48
56
35
17
17
93
27
54
128
72
50
26
0
0
38
11
122
30
60
63
30
52
44
0
68
54
70
34
36
93
26
89
138
111
120
151
79
33
0
0
20
0
35
58
133
26
81
26
36
50
26
73
0
0
14
0
85
19
55
0
42
59
57
44
135
81
0
0
0
65
76
65
64
91
0
53
65
0
29
56
50
76
36
23
74
61
94
58
81
49
62
73
95
26
48
26
207
26
0
26
86
26
86
51
76
0
0
98
25
0
26
80
93
69
0
0
26
54
56
144
81
107
30
0
8
59
51
0
7
0
26
87
40
38
0
16
0
51
59
35
27
0
54
36
26
69
5
24
0
17
0
15
34
26
2
50
74
75
0
0
89
139
179
127
88
66
46
96
39
94
28
47
33
55
87
62
26
82
43
15
0
57
53
0
0
38
38
46
0
39
31
53
39
22
30
0
80
0
63
49
62
0
0
0
0
0
26
51
65
1
12
0
71
41
0
135
0
36
0
53
57
98
210
255
225
226
255
225
225
255
255
255
255
255
255
206
204
202
204
203
253
248
195
180
222
226
239
175
170
181
160
155
89
28
7
77
47
93
0
0
0
0
52
129
77
38
87
26
26
45
41
81
48
29
62
65
119
95
74
98
11
21
29
0
1
52
119
0
0
0
0
20
62
84
119
80
24
82
82
90
10
41
0
31
54
91
130
106
15
80
82
0
45
64
45
31
75
96
33
0
25
0
116
59
42
0
41
51
53
121
36
129
64
83
125
64
44
33
32
93
26
2
70
4
65
115
48
76
2
76
102
102
119
95
0
48
1
64
57
2
0
0
0
68
62
14
19
106
84
65
43
93
26
42
27
0
0
115
37
148
97
38
44
52
74
70
0
63
53
86
97
66
66
26
33
49
114
26
0
50
0
26
70
0
24
66
107
22
0
0
57
0
0
26
17
93
181
91
94
27
129
117
12
63
64
86
74
36
0
29
26
96
26
0
0
0
1
0
82
133
0
0
126
27
61
114
21
35
2
0
0
54
67
63
0
1
42
19
32
111
117
146
32
152
0
45
55
36
100
83
50
32
87
90
51
26
26
0
45
14
52
0
0
37
64
46
58
27
6
0
33
108
63
20
33
18
0
103
39
0
37
0
16
3
58
41
26
7
14
36
7
50
20
8
49
0
41
60
59
105
218
255
221
224
255
255
227
225
255
223
255
255
255
207
199
198
201
255
255
253
206
193
228
239
237
226
223
225
188
169
167
111
38
16
114
26
45
26
35
65
72
84
152
49
1
70
26
33
0
53
21
0
0
52
137
82
17
0
106
52
13
19
15
19
33
33
0
0
0
0
30
37
59
90
51
81
63
108
26
72
37
84
49
14
81
125
65
43
70
44
59
61
41
25
49
45
32
26
0
108
65
41
0
0
0
38
27
26
179
87
113
42
76
96
72
113
35
77
73
55
0
0
30
71
0
0
57
116
24
34
102
38
76
127
77
145
51
51
0
0
48
34
83
84
72
96
33
77
47
67
52
18
34
24
0
0
72
118
134
43
104
101
82
40
0
65
32
55
116
102
32
21
0
99
84
26
26
0
63
31
124
26
26
18
131
61
76
53
0
0
103
20
111
83
0
37
126
83
142
126
73
3
26
120
140
96
50
0
114
30
26
50
20
0
0
0
0
59
19
0
50
149
127
91
96
26
103
39
94
59
76
26
127
116
39
98
78
121
93
121
84
26
224
52
23
99
26
107
97
0
16
50
76
55
86
26
27
6
15
0
0
0
28
89
35
34
26
34
0
18
76
24
14
86
69
9
0
0
0
22
2
0
37
99
29
102
28
33
51
42
0
0
0
0
42
1
47
37
151
253
221
255
255
255
225
227
255
255
255
255
215
212
204
196
194
199
255
255
250
245
232
222
234
229
218
222
224
177
164
151
130
53
26
93
0
26
79
78
150
71
43
113
120
69
100
17
0
26
86
29
0
0
95
131
0
0
0
80
54
37
15
0
0
21
12
0
0
0
0
1
0
88
49
78
60
48
81
84
89
100
67
0
83
129
92
82
45
12
0
100
87
0
36
31
9
33
26
60
84
52
47
105
64
46
34
63
26
143
144
62
0
44
4
51
26
55
78
50
51
0
67
31
30
28
0
86
69
3
74
53
17
27
79
75
77
124
131
113
150
140
116
97
138
107
138
19
133
27
82
0
66
12
0
0
28
0
78
73
55
93
79
0
4
10
59
47
32
82
77
43
16
36
0
90
163
136
51
71
45
76
40
36
0
104
0
1
85
41
43
25
12
38
0
52
16
74
149
26
69
16
21
39
129
100
52
32
0
41
183
26
108
48
0
0
15
0
0
14
0
92
26
110
139
174
135
85
101
40
72
95
79
52
93
78
76
122
75
120
191
97
0
169
82
15
86
9
0
72
0
30
12
58
46
56
26
58
2
77
0
63
32
43
56
70
79
5
4
0
10
0
0
23
0
0
17
0
33
72
26
0
26
26
0
0
122
63
106
73
34
15
0
0
60
77
16
90
129
182
224
226
255
255
225
223
255
255
225
220
217
213
210
200
196
193
201
254
201
247
229
229
177
226
174
228
223
218
209
207
134
122
116
42
91
26
0
45
95
78
112
60
71
67
43
103
19
0
38
129
0
81
0
24
115
21
0
78
27
67
22
0
0
0
4
0
0
0
0
0
0
0
51
82
86
91
79
47
51
26
109
26
26
122
61
77
94
67
38
73
76
68
10
29
44
25
0
52
53
51
0
98
109
75
38
27
43
60
116
52
0
1
0
31
48
0
81
35
0
0
0
18
37
26
46
0
54
28
36
105
38
46
25
49
41
90
79
135
158
41
44
24
64
26
26
73
28
140
39
41
7
35
38
19
26
26
130
66
58
32
125
67
58
35
26
0
78
0
0
50
0
49
0
26
57
116
119
67
76
112
40
32
0
34
25
11
34
91
99
11
40
29
5
26
30
0
0
123
75
75
87
0
50
87
66
45
20
0
53
107
185
26
27
0
0
15
0
26
62
86
26
37
25
54
26
86
43
86
84
101
115
111
67
137
62
28
0
35
51
59
26
40
149
169
22
70
123
34
77
74
32
5
71
85
74
62
26
26
63
41
89
39
37
44
68
135
27
0
0
33
0
0
80
101
65
58
75
73
32
47
101
127
62
93
60
0
0
34
50
26
84
26
37
58
67
66
142
200
255
255
255
255
224
255
255
255
255
223
219
215
213
210
203
200
253
205
199
196
189
177
172
227
240
238
235
229
178
223
209
158
170
142
44
0
105
80
63
81
26
87
96
83
95
70
0
90
57
52
0
0
0
22
91
111
0
0
57
84
117
76
117
54
26
0
37
46
0
0
115
26
64
49
88
51
39
103
26
46
0
68
100
69
92
7
39
56
63
73
43
51
26
26
0
0
0
19
83
66
61
63
25
71
86
57
39
71
157
59
0
26
0
26
33
0
56
0
83
61
0
0
0
25
73
133
44
66
0
70
111
54
93
113
19
29
52
54
13
26
21
29
31
26
92
26
0
0
51
0
0
0
0
0
26
135
81
26
26
152
35
58
52
61
10
2
16
0
2
84
10
0
32
48
26
49
59
26
32
88
61
47
26
0
0
60
26
136
26
53
36
26
0
79
0
133
0
100
26
26
69
38
7
0
79
40
20
69
0
37
26
37
70
41
6
85
0
0
26
106
59
59
67
37
0
64
22
48
7
73
26
118
163
82
103
82
67
0
144
99
56
66
40
139
135
29
67
85
0
76
91
33
6
26
41
106
0
26
54
82
61
72
38
39
26
33
82
50
0
0
27
3
29
7
93
97
68
72
49
89
131
103
77
38
36
46
1
26
88
47
36
26
70
105
112
62
87
192
251
255
255
229
229
229
226
255
255
214
213
255
255
255
208
207
253
248
243
192
190
178
221
233
246
237
233
192
179
170
213
208
209
183
155
80
30
128
31
46
113
76
27
72
21
0
46
20
12
0
0
0
74
26
17
90
53
43
57
72
108
99
127
140
80
26
94
0
0
0
77
17
37
62
147
111
106
91
125
37
95
50
194
68
77
0
36
138
62
102
63
83
65
27
74
0
59
44
18
85
47
15
10
116
0
14
114
16
0
141
53
0
44
11
0
55
24
16
57
43
92
0
0
10
0
0
23
48
30
66
103
127
45
100
88
0
91
26
99
1
119
0
33
3
30
25
108
30
98
86
26
0
0
0
42
80
51
26
46
38
78
29
35
0
41
25
34
78
0
68
2
0
0
0
0
0
35
97
48
50
26
75
26
36
0
48
32
26
132
125
100
72
20
23
175
6
12
14
38
69
110
74
26
19
28
35
0
0
75
26
0
26
70
78
128
0
0
0
0
26
0
68
94
91
37
40
72
64
66
19
52
37
37
57
109
103
68
87
62
70
86
92
62
111
122
162
145
130
76
0
136
94
28
0
72
31
55
26
29
112
45
66
0
30
27
55
26
50
117
15
0
46
22
1
0
95
115
70
81
77
43
70
77
36
38
53
23
0
26
130
55
26
26
0
0
101
97
162
224
255
255
255
229
229
229
226
224
255
255
255
255
255
255
255
255
252
197
245
188
187
233
244
190
228
183
195
177
167
160
155
205
209
189
151
123
85
84
36
55
21
71
176
77
120
0
43
10
41
2
26
26
121
26
87
82
58
61
31
24
102
103
66
108
71
54
110
43
32
70
49
106
108
23
128
114
156
54
117
27
84
0
52
16
49
59
34
112
97
0
22
130
69
65
27
18
16
0
8
40
22
72
89
78
0
1
89
0
0
117
80
19
33
68
48
90
151
86
104
61
0
0
0
80
51
26
0
6
50
133
146
134
62
63
77
26
57
32
109
29
76
2
44
0
16
0
186
55
3
39
87
44
0
0
0
49
0
50
105
98
66
33
0
0
0
29
88
77
0
20
7
50
0
44
31
22
31
5
9
145
5
89
56
0
0
39
0
10
61
38
47
34
67
86
60
30
0
46
45
81
0
132
42
0
63
0
122
94
101
123
97
70
79
27
104
0
0
50
94
70
33
76
68
58
84
38
30
24
7
45
26
22
55
35
178
74
48
26
118
42
0
111
89
158
101
154
75
117
101
0
137
94
82
0
59
85
0
0
26
138
26
54
0
79
42
34
51
26
125
54
25
15
50
5
53
67
98
81
53
45
26
72
81
0
0
0
0
92
50
61
85
49
39
25
0
13
108
103
203
255
255
229
229
229
229
226
224
218
211
211
212
209
207
255
254
197
196
190
186
240
241
189
189
185
193
198
175
169
164
163
164
172
162
172
89
115
57
61
59
53
105
44
78
38
27
66
0
71
37
77
56
42
31
51
66
42
32
50
107
74
85
0
55
46
82
89
40
61
100
46
78
0
39
68
66
15
54
47
56
0
69
0
33
79
96
42
57
25
19
53
51
32
58
5
0
53
4
0
62
91
62
12
139
36
0
54
0
17
93
68
39
24
64
112
110
148
111
61
80
44
74
7
91
36
26
28
34
30
11
113
94
123
78
59
77
57
111
71
4
112
112
76
0
99
47
14
0
0
40
72
43
17
17
0
0
27
29
159
53
58
38
0
0
0
84
51
84
0
0
6
96
11
26
68
45
39
81
70
77
133
112
92
133
81
46
162
126
123
48
26
94
26
69
0
0
0
90
89
32
18
18
40
32
0
63
118
31
68
81
25
12
0
94
62
63
58
72
40
68
42
78
92
90
76
7
3
39
26
6
61
26
32
0
88
71
0
0
65
78
70
5
43
95
92
106
44
79
85
61
83
104
89
58
26
0
60
0
26
116
26
40
0
63
62
48
46
19
101
67
73
49
68
57
95
0
16
32
0
26
38
88
124
27
0
13
0
43
62
26
76
57
51
46
0
24
131
193
255
255
227
229
229
229
229
255
255
255
211
210
210
209
255
255
199
197
198
183
189
245
246
179
236
202
199
191
175
173
221
167
169
174
172
140
108
82
81
9
131
26
13
0
129
22
38
49
68
90
24
0
82
75
93
81
46
121
83
141
104
10
0
0
38
0
65
30
0
34
0
62
62
77
44
30
0
67
72
99
116
22
87
54
89
33
79
100
72
31
0
17
50
2
0
48
53
97
61
18
36
74
44
35
23
43
34
76
0
0
119
21
67
58
64
115
111
128
78
0
59
6
70
98
139
26
5
39
22
95
105
94
26
105
117
150
91
89
106
103
61
63
31
0
48
101
27
40
43
0
0
35
74
87
34
0
0
0
0
89
26
2
31
0
10
40
35
101
112
0
0
26
71
26
81
73
26
88
159
134
110
82
62
135
88
99
33
149
48
47
26
33
132
47
80
2
0
105
0
27
13
152
0
53
26
26
75
37
95
60
62
0
8
0
0
69
55
0
0
38
50
26
67
75
44
93
49
27
60
17
37
0
22
43
48
59
88
15
75
30
48
30
57
87
90
99
104
105
98
74
104
78
106
48
92
70
71
0
101
0
88
18
79
52
41
86
0
43
89
69
8
60
0
46
7
27
6
29
117
2
26
52
70
68
34
9
32
0
0
0
22
58
65
58
0
76
63
192
255
255
221
227
227
229
255
255
255
255
255
208
208
210
255
255
204
199
194
195
182
195
196
186
186
240
195
189
181
161
161
157
153
156
160
160
138
109
121
59
99
70
26
32
0
47
86
86
0
79
63
75
0
26
74
71
58
111
88
21
103
0
0
16
45
57
0
60
30
0
75
0
39
85
125
48
0
0
83
92
64
63
89
33
26
53
72
95
30
29
0
43
7
34
35
0
103
59
26
53
48
90
73
0
51
25
70
44
0
0
0
92
22
20
0
37
74
148
113
88
24
19
47
46
33
77
45
0
43
58
71
83
73
55
120
128
81
52
49
0
32
91
63
0
74
80
64
0
45
56
30
5
4
0
83
43
61
32
26
76
0
26
79
0
0
0
62
44
23
96
66
0
0
56
26
82
67
59
26
48
93
117
74
38
58
103
134
69
39
26
55
71
31
55
19
53
0
0
0
15
0
44
13
0
3
47
26
78
26
78
117
71
6
59
181
31
26
100
65
40
12
0
36
0
47
36
38
53
53
2
0
25
8
43
45
95
16
32
55
103
149
107
7
33
78
62
94
68
41
33
70
81
64
26
63
86
12
101
0
10
23
2
0
92
64
102
0
88
0
0
152
0
29
88
96
31
54
23
79
79
20
69
75
0
60
13
66
39
0
102
55
0
28
52
0
51
10
151
229
255
225
223
225
224
224
224
222
219
255
255
202
200
255
252
251
246
191
185
181
182
176
166
166
227
232
232
162
154
148
157
157
160
170
179
179
154
136
139
33
7
35
56
44
47
47
31
20
47
103
85
79
81
0
128
99
106
26
26
47
125
23
41
29
0
70
46
119
67
78
60
76
82
61
19
0
0
44
64
83
68
26
45
61
0
41
4
49
74
127
26
26
28
34
70
83
43
11
99
26
44
26
79
141
122
66
62
89
36
46
95
111
29
5
60
83
121
131
43
54
0
77
0
0
0
118
6
17
39
8
43
42
6
80
45
85
57
77
47
26
108
37
43
127
115
62
80
72
18
49
0
0
71
40
0
0
48
71
60
68
35
60
35
61
56
47
0
0
18
6
0
3
4
86
26
135
63
51
83
99
28
46
26
44
65
78
79
0
75
94
69
62
8
0
26
62
33
83
67
26
48
0
16
59
0
54
26
115
37
45
9
0
0
104
133
136
32
10
79
33
68
51
25
0
13
1
72
48
64
41
40
1
0
27
26
26
22
32
97
111
54
37
117
88
84
5
78
69
53
58
57
87
0
0
109
26
55
26
17
0
53
35
81
132
59
78
26
118
66
88
125
61
45
93
75
74
65
24
26
1
3
46
87
47
110
21
75
98
4
45
114
87
80
73
20
97
84
168
255
255
225
224
225
255
222
222
219
255
255
203
199
197
252
251
247
188
186
179
174
226
163
152
165
231
230
163
147
150
144
210
213
222
235
167
171
194
182
143
51
61
54
58
91
29
0
72
10
10
6
96
47
104
128
78
117
0
43
28
43
119
70
8
19
66
78
51
51
88
61
81
84
49
48
9
5
53
64
80
65
82
53
0
83
0
72
26
61
77
85
33
26
42
131
28
72
40
100
69
26
26
71
81
80
97
51
62
100
88
87
26
119
45
46
0
22
75
99
26
77
25
89
53
0
4
57
9
25
32
0
124
57
23
78
49
97
39
36
50
45
0
42
33
144
0
61
61
83
108
35
0
0
12
25
0
0
43
72
104
104
44
26
0
80
0
0
13
17
47
0
0
0
17
45
85
71
0
68
46
140
80
0
55
26
26
124
113
43
77
100
90
0
48
85
26
63
0
70
24
52
73
69
34
27
0
39
26
127
26
137
0
0
0
0
142
66
28
0
55
0
23
0
6
9
0
16
7
46
54
2
34
0
2
65
40
43
29
75
3
0
71
38
58
90
72
45
45
89
68
30
26
71
0
14
90
0
71
51
21
9
56
58
60
79
54
66
85
74
147
140
92
106
120
93
95
43
154
53
13
0
0
0
36
26
67
71
48
53
0
33
58
48
78
58
29
89
172
255
255
229
225
225
224
255
219
220
255
255
215
199
194
198
249
191
247
242
232
169
166
220
211
164
178
235
176
175
170
228
224
223
230
232
220
163
143
186
174
85
22
45
43
32
17
13
34
83
7
10
0
29
56
39
58
42
117
6
101
62
110
73
98
8
92
74
125
72
20
128
0
22
0
37
50
59
40
6
0
79
98
107
61
57
47
47
42
59
27
104
18
28
108
137
87
85
70
91
74
65
76
31
49
71
48
64
10
68
119
26
0
27
144
31
41
0
57
74
76
61
80
51
70
35
0
0
26
125
0
0
81
101
26
73
42
34
85
119
149
68
56
76
65
102
4
30
28
26
110
56
28
36
43
0
0
63
0
65
66
26
24
26
94
141
76
52
60
17
35
44
0
0
20
60
119
31
69
136
91
130
65
96
0
0
0
60
67
65
80
76
35
26
0
0
15
48
67
54
9
45
53
122
48
68
0
34
26
26
33
29
72
41
25
0
0
0
26
69
0
0
0
0
17
0
48
0
0
0
0
30
0
17
15
33
38
36
56
36
35
0
0
110
64
59
36
37
71
17
13
55
26
71
35
28
26
81
61
0
22
119
0
133
82
71
64
46
103
98
79
107
189
109
93
118
95
119
13
111
29
0
8
6
65
26
6
43
57
145
0
0
67
74
32
116
58
0
81
193
222
229
229
227
225
255
222
216
255
255
255
210
200
191
245
192
191
241
239
232
169
166
216
161
169
240
237
234
238
178
230
233
225
224
214
201
199
184
131
172
132
21
26
53
53
84
40
14
36
58
0
0
0
65
62
26
60
86
96
54
33
93
56
75
77
62
61
64
63
35
79
3
15
11
47
54
52
39
0
27
64
123
0
43
30
35
39
59
52
26
41
0
57
42
73
75
64
31
109
105
78
35
76
79
12
40
77
46
42
87
27
104
43
123
52
13
9
12
28
26
34
71
39
106
26
58
0
0
9
62
5
126
11
28
49
26
45
22
30
108
108
72
71
72
17
12
62
0
85
0
42
51
45
16
26
26
63
39
52
122
20
0
0
22
73
49
0
0
0
80
94
56
52
2
5
56
31
56
42
66
31
0
13
26
0
32
177
65
83
97
26
55
74
13
2
8
162
37
135
0
0
85
14
6
91
62
74
8
92
58
0
28
71
77
0
0
0
30
35
46
41
61
24
31
0
36
16
2
0
49
37
0
0
7
45
48
36
26
49
0
0
0
0
0
61
32
26
54
15
79
61
62
85
65
14
88
29
44
0
0
142
29
86
76
0
19
0
77
67
95
112
154
106
72
92
96
126
63
4
46
60
15
0
60
4
68
67
108
184
96
0
26
36
55
81
81
15
94
173
229
229
227
227
255
255
219
212
212
255
255
207
198
187
240
239
186
180
181
174
163
215
213
166
229
247
253
243
236
175
232
217
222
225
217
155
191
179
183
173
131
106
40
63
11
118
95
18
36
95
83
49
39
30
0
43
33
99
107
83
82
41
45
102
84
59
5
0
39
29
70
33
52
94
73
64
34
26
0
16
41
17
0
51
20
18
32
0
0
80
65
16
45
0
0
77
69
104
145
52
95
0
82
46
0
84
22
6
106
105
120
165
123
38
0
32
25
0
85
18
27
20
101
138
103
41
18
50
40
173
80
5
0
79
34
76
0
5
38
68
87
97
99
127
8
48
71
64
0
0
2
0
45
70
57
58
100
40
40
26
150
35
33
0
0
0
3
0
0
55
120
125
0
1
48
0
0
68
0
33
11
78
65
91
77
26
149
134
75
26
66
0
59
7
15
0
127
80
60
115
64
0
44
68
62
26
15
2
96
21
38
0
50
65
0
0
0
23
27
26
61
106
49
43
1
0
7
62
68
26
53
0
0
0
53
51
78
75
59
31
10
0
0
6
0
0
35
156
50
83
50
17
0
18
30
107
25
0
0
0
6
47
49
66
22
85
48
13
22
2
91
122
67
38
30
99
57
68
85
111
51
0
28
3
0
41
111
0
59
118
116
0
0
0
95
32
62
174
224
224
219
220
229
224
221
215
209
208
255
255
255
185
177
232
230
169
170
173
213
195
200
213
225
236
240
230
225
187
177
224
228
234
236
225
219
165
146
186
176
140
126
58
63
33
101
119
100
59
71
111
45
22
18
0
54
27
55
59
39
31
88
149
80
15
1
84
137
34
52
73
54
83
44
147
97
62
36
94
99
95
65
95
51
0
2
41
0
0
70
63
26
7
54
0
79
132
55
102
72
107
143
26
0
0
100
74
69
3
106
97
26
52
36
35
25
26
70
0
34
102
43
6
0
62
85
0
54
89
67
17
41
0
39
36
39
80
19
90
55
68
41
56
26
65
0
90
0
0
6
26
29
75
89
94
145
78
115
71
70
16
0
15
32
0
0
24
8
0
0
6
7
80
0
0
0
0
50
42
0
11
0
0
0
42
69
54
87
26
52
26
0
0
0
0
18
14
46
115
32
65
0
26
51
26
43
44
62
44
11
92
0
0
26
78
29
82
97
104
70
18
85
55
0
0
0
26
37
73
65
45
0
47
26
28
0
55
16
34
75
85
39
32
68
55
11
0
0
72
57
65
10
37
0
45
84
83
34
12
0
75
0
23
41
22
46
9
18
30
1
124
0
27
37
31
63
85
143
61
0
12
50
40
26
25
16
83
0
0
35
165
0
0
0
78
82
109
194
255
255
255
213
229
223
255
255
207
204
202
254
254
229
223
227
171
166
221
226
206
187
199
207
225
231
232
226
219
175
182
238
231
218
214
214
171
162
148
181
171
143
80
70
118
87
81
109
110
67
101
85
66
54
11
0
27
9
0
111
75
72
103
126
31
28
65
98
141
70
61
78
71
59
87
137
44
112
105
134
69
95
67
74
49
19
9
0
24
24
78
81
30
55
55
2
0
98
60
59
61
67
128
47
52
26
89
70
10
25
110
77
51
94
30
81
0
7
4
0
78
51
39
46
0
1
68
46
139
0
45
19
0
17
0
73
0
53
21
47
52
49
87
64
29
26
51
33
19
0
58
55
146
143
159
124
103
169
127
26
19
0
0
0
70
49
45
111
36
40
57
0
51
26
26
4
0
48
14
33
21
9
82
56
0
26
26
153
102
52
96
0
37
0
0
0
0
0
27
42
26
60
53
36
78
37
26
75
82
26
26
107
8
26
51
84
26
26
46
26
31
101
70
33
64
0
0
26
0
43
46
50
55
52
28
44
0
10
0
0
20
78
69
59
66
30
174
141
10
49
59
86
82
29
33
119
76
110
38
0
5
15
15
13
5
0
86
62
0
13
3
37
18
15
39
45
14
102
125
118
0
56
0
77
23
42
5
79
0
26
30
105
91
0
0
118
63
139
212
255
255
255
210
229
255
255
255
254
201
197
200
252
228
217
164
166
218
216
219
198
129
196
205
223
173
167
225
166
225
236
189
211
195
193
153
165
195
193
177
169
148
74
70
132
89
92
128
131
87
77
36
57
0
88
50
13
76
21
0
25
38
75
132
98
157
99
122
87
141
86
78
134
75
128
83
73
107
132
163
91
94
160
131
67
66
74
26
29
0
122
53
73
26
61
95
14
0
41
111
108
60
29
39
26
6
29
53
55
80
101
43
58
96
70
64
26
29
67
32
26
60
0
53
0
0
0
90
26
37
41
21
0
51
15
59
26
52
48
65
73
39
87
49
126
26
94
0
61
128
41
142
90
55
53
31
26
136
138
32
90
78
0
0
12
0
47
97
26
51
36
54
134
12
19
16
26
54
22
40
0
79
63
27
53
26
26
162
111
121
104
61
70
0
0
30
54
47
26
42
26
129
52
95
92
51
77
83
32
15
0
0
17
0
40
116
26
30
50
38
64
114
0
26
116
0
21
60
52
47
52
0
62
59
49
34
26
89
17
0
0
53
55
48
80
63
9
78
141
50
37
120
100
64
33
60
75
64
26
0
42
38
0
11
21
61
41
97
0
28
33
23
19
1
46
44
11
60
68
126
26
0
48
62
38
29
99
73
13
29
37
60
159
80
81
92
72
134
255
255
255
202
207
255
255
219
211
251
198
194
196
251
229
211
210
163
169
156
211
190
121
138
207
223
219
154
155
160
248
241
173
149
189
189
143
141
124
187
177
169
153
94
75
134
91
123
68
59
125
76
17
64
34
130
35
97
12
33
0
14
26
53
149
142
111
70
118
91
110
144
157
134
156
97
105
122
81
131
245
174
181
212
204
108
89
83
39
16
0
68
61
40
48
42
123
37
27
27
0
29
101
26
35
46
36
33
0
0
0
0
0
114
125
71
26
26
69
27
90
26
0
9
97
77
60
80
86
26
37
23
34
0
21
0
78
43
0
140
31
80
81
68
0
163
68
52
26
56
65
0
0
26
26
26
26
55
26
33
26
74
100
11
0
5
0
26
62
26
76
0
59
69
100
26
0
44
95
122
30
0
62
26
26
26
26
26
106
37
80
26
120
90
39
95
64
83
66
63
33
0
76
7
94
19
79
0
112
0
43
97
0
0
27
32
80
33
32
94
98
84
99
0
6
128
0
40
101
56
30
13
0
0
0
0
33
97
26
0
0
18
0
0
60
52
35
0
0
17
39
42
58
119
49
66
49
89
114
87
89
68
106
42
0
54
16
9
0
0
0
62
0
0
2
51
41
39
38
65
81
39
42
0
34
0
0
57
48
0
59
11
30
25
160
70
123
119
178
227
255
225
218
255
214
255
255
200
190
238
186
187
241
220
205
196
158
143
153
160
141
115
135
214
216
153
151
159
168
184
155
153
208
141
143
127
186
118
122
175
167
101
95
114
122
108
130
63
0
35
91
41
118
51
69
36
131
18
32
5
47
53
125
84
96
137
125
105
117
245
159
199
149
177
124
132
100
137
151
224
112
156
214
189
103
143
146
148
82
73
26
60
58
98
21
121
80
46
45
9
13
17
0
40
15
0
45
0
0
44
0
0
66
102
69
33
0
0
26
87
26
13
55
46
52
54
82
48
95
55
46
0
12
0
3
0
0
0
56
0
41
173
22
22
124
37
53
37
32
3
23
49
41
26
76
39
45
61
38
33
26
26
0
9
24
20
0
25
0
26
26
0
69
88
72
0
0
63
85
159
0
5
0
0
26
51
35
73
41
24
27
0
26
42
0
63
41
39
39
34
25
0
5
0
45
4
0
16
0
12
53
0
0
52
0
0
48
90
26
41
0
99
55
90
131
47
67
74
88
63
0
0
11
0
9
46
68
26
0
3
28
19
27
67
44
44
201
24
28
67
35
46
51
13
0
48
63
39
52
64
126
6
3
70
0
28
5
0
17
0
0
44
19
0
0
0
33
133
133
120
64
0
87
26
50
22
0
44
17
0
0
18
0
0
103
170
219
255
255
255
222
214
255
209
255
254
191
197
234
165
175
232
211
196
190
132
143
138
149
123
113
142
157
148
144
149
154
163
151
176
220
218
164
163
188
182
113
112
154
160
160
148
125
94
75
76
128
84
137
88
182
160
53
79
72
29
0
53
61
100
68
164
154
116
198
162
166
166
161
170
199
179
210
147
201
151
120
127
203
193
169
191
184
107
98
136
153
164
169
130
9
27
31
0
17
19
5
0
53
0
76
17
52
73
52
31
0
75
14
1
10
92
130
36
57
2
0
69
44
103
59
4
0
0
0
0
131
100
42
52
128
0
0
37
61
47
81
110
0
24
38
44
79
125
60
81
26
133
24
43
41
26
64
50
133
50
34
56
55
26
50
26
0
0
0
36
0
0
13
0
0
27
83
66
6
7
0
130
104
23
0
49
0
11
0
0
0
27
0
79
77
69
31
46
45
87
70
26
58
8
17
21
30
59
6
81
77
99
75
42
47
0
62
0
0
64
0
112
143
128
0
0
13
0
128
18
103
0
0
96
29
50
51
42
0
21
83
73
0
0
0
0
26
91
133
0
42
2
0
28
10
49
51
26
57
89
107
67
81
12
0
0
7
0
0
0
0
0
0
65
85
2
0
8
4
68
17
11
117
72
26
19
0
77
26
114
42
68
0
0
84
0
11
66
179
228
203
223
220
255
255
208
201
198
247
235
241
179
163
216
223
155
190
190
127
137
126
136
120
124
152
203
151
151
151
108
151
145
187
173
214
163
156
184
173
111
102
107
163
155
153
57
98
106
159
137
79
164
108
218
123
96
65
94
52
26
63
47
102
126
135
165
155
146
132
129
104
134
153
210
196
208
212
205
177
141
202
198
208
188
182
184
172
121
89
130
106
189
136
97
99
89
25
24
0
49
33
16
75
126
123
0
41
115
77
15
26
10
12
31
91
162
26
37
0
35
61
31
31
0
0
33
0
0
0
44
96
126
105
149
70
10
58
33
40
0
0
59
63
116
70
86
35
76
26
38
82
34
0
0
45
26
108
78
18
6
55
91
26
82
0
39
0
0
0
0
0
26
56
57
0
0
5
0
16
0
0
113
48
0
31
2
0
26
39
0
0
0
0
133
123
41
90
10
28
26
76
70
0
54
0
112
68
0
94
0
44
26
43
66
26
35
17
0
18
62
34
102
151
26
157
109
0
107
55
21
0
0
22
33
48
58
54
5
39
51
32
0
0
49
105
29
48
94
79
26
93
0
0
0
47
57
0
0
30
34
127
60
66
0
0
0
9
0
0
0
0
0
88
102
32
0
0
0
4
72
109
93
54
55
26
17
49
26
78
26
139
22
16
89
37
38
168
185
189
205
222
217
212
250
200
245
189
189
229
222
167
160
202
158
200
185
190
181
126
114
118
119
135
157
219
155
152
197
128
198
139
179
219
207
157
146
184
119
186
99
113
104
145
180
106
153
120
158
89
105
171
151
229
60
109
82
137
75
75
101
73
159
159
179
183
164
119
143
120
125
148
201
212
214
205
220
210
178
157
210
204
215
204
127
187
132
132
97
122
103
161
154
114
151
82
40
0
0
2
66
115
68
74
101
71
54
82
18
77
0
23
26
11
54
101
0
33
0
0
55
52
100
0
0
12
0
0
77
151
149
125
118
153
151
0
62
98
81
0
57
103
41
73
73
35
0
67
48
60
38
0
0
40
70
26
144
111
40
76
0
54
34
9
0
89
0
0
0
0
6
0
76
48
45
64
22
0
5
1
0
36
53
4
50
11
0
67
46
38
36
27
56
55
134
39
96
107
100
47
114
0
0
29
63
23
36
30
50
0
7
42
59
67
26
87
16
0
0
91
59
29
0
38
74
70
39
40
26
0
4
0
0
0
42
26
0
0
0
0
0
0
0
0
36
112
72
69
139
121
36
89
17
13
64
47
23
22
26
73
64
49
62
61
6
0
0
1
0
0
3
0
94
0
0
0
0
21
94
67
85
46
0
0
66
72
2
63
26
29
131
109
83
106
21
50
132
198
189
212
255
213
255
246
245
235
232
233
171
201
155
206
139
146
141
133
136
132
121
108
105
116
138
154
166
149
148
205
138
148
133
157
207
205
157
196
189
119
132
84
128
157
169
195
59
116
191
93
126
191
134
110
153
76
88
136
100
32
125
157
188
193
119
168
147
122
180
230
200
144
165
149
154
176
212
223
168
164
213
203
212
217
215
187
148
140
132
110
91
118
124
166
115
138
104
49
0
17
15
22
41
26
0
16
98
51
35
78
29
13
0
0
36
26
42
0
38
67
65
87
76
113
114
97
0
36
35
31
80
34
50
125
130
108
26
45
43
137
63
128
143
60
161
118
26
0
41
21
16
18
0
0
0
61
49
105
70
0
85
81
27
145
15
0
45
1
0
72
0
0
0
84
86
119
43
6
14
0
5
77
110
49
43
166
103
40
42
0
219
114
152
104
99
128
39
90
63
45
87
102
111
23
0
59
0
45
0
74
47
126
147
80
30
43
67
53
0
26
70
0
66
26
0
124
45
73
30
26
66
22
10
0
96
84
49
31
26
48
39
0
0
76
18
0
67
34
117
111
109
69
51
101
46
69
57
15
0
46
70
47
68
79
55
39
1
0
0
0
0
0
10
79
0
0
0
125
90
120
75
83
6
16
20
51
64
0
72
72
78
46
19
106
118
15
63
110
207
185
203
211
255
197
234
233
171
217
218
158
141
199
202
136
141
140
143
140
137
129
116
108
113
136
150
152
147
151
160
126
152
195
201
152
152
210
200
198
168
103
73
208
114
201
197
73
130
163
84
142
200
106
126
197
172
93
93
74
0
83
91
196
196
129
161
157
147
159
189
183
151
185
159
154
175
168
222
228
207
216
197
211
215
213
198
215
139
182
126
92
110
82
153
144
124
118
75
41
56
0
21
23
57
14
11
23
45
0
66
0
15
38
49
35
26
42
0
28
75
81
18
0
0
0
91
0
79
83
43
34
89
93
111
103
44
58
66
56
26
72
126
137
116
77
111
36
56
86
38
48
26
48
0
0
22
122
37
34
0
10
92
3
0
73
39
0
0
73
0
0
0
39
0
0
16
0
0
7
37
31
82
46
26
28
79
99
112
9
60
152
0
0
47
61
73
26
26
44
26
130
0
42
74
0
28
37
48
26
46
115
60
65
42
26
0
98
65
0
53
34
0
0
52
0
76
60
145
73
0
29
0
0
35
87
73
85
34
0
52
0
0
0
0
49
0
82
54
28
75
75
26
81
3
67
46
82
101
90
81
77
119
38
36
26
126
0
44
55
26
0
2
0
54
3
0
78
84
78
44
0
68
17
12
0
92
55
116
0
7
11
72
82
74
115
69
85
192
231
181
201
195
183
167
210
210
197
216
205
159
158
203
210
154
155
161
173
220
226
166
158
140
116
135
149
145
154
157
151
138
196
202
154
154
154
186
172
137
132
159
171
238
160
228
203
101
142
152
74
131
157
70
134
168
41
206
180
90
0
136
52
98
106
216
212
233
210
222
163
177
182
187
179
158
146
218
207
224
229
146
169
159
213
216
204
224
167
194
152
139
102
161
165
145
133
29
40
1
93
55
34
0
57
0
0
17
0
54
49
0
23
36
0
30
90
101
44
96
117
11
0
0
5
122
61
130
112
74
27
42
55
93
27
26
26
26
26
55
73
34
80
12
166
88
100
45
128
0
63
0
18
21
0
15
0
24
0
0
0
36
43
46
35
17
0
87
0
0
131
17
0
26
26
26
101
8
101
17
33
26
129
0
89
26
125
86
130
68
14
0
110
48
55
0
119
68
93
149
98
156
26
26
4
9
63
76
14
78
115
39
44
4
44
31
0
72
52
0
44
0
22
136
89
0
93
31
67
111
0
20
0
0
54
88
65
41
11
50
11
52
14
0
49
15
0
41
38
53
0
37
58
105
110
106
119
85
72
107
63
67
64
26
46
33
66
0
30
26
72
26
35
0
61
97
88
70
61
79
94
47
66
0
82
8
37
32
106
89
86
98
74
99
82
111
74
103
147
223
168
232
231
170
166
163
216
215
234
172
172
161
219
218
166
161
174
180
176
240
231
174
158
131
134
144
197
156
159
159
144
149
156
159
156
201
193
180
134
133
95
151
249
220
227
129
105
160
155
88
139
132
74
140
171
69
154
121
128
0
145
80
85
172
158
155
212
210
163
154
231
231
223
163
162
147
161
153
166
219
150
160
199
210
214
205
216
158
143
147
138
169
178
167
63
125
55
113
34
45
91
28
65
50
58
26
35
83
63
59
39
27
0
0
67
91
30
88
86
71
40
122
65
53
57
54
55
107
37
45
62
76
26
97
60
38
33
31
76
0
26
61
9
124
69
51
38
39
38
112
65
15
15
44
53
60
0
0
12
0
36
144
77
0
34
17
34
26
26
26
26
0
34
75
39
121
0
19
63
31
16
80
0
51
115
139
121
68
0
5
71
66
53
0
43
0
136
104
101
26
94
73
97
73
0
38
25
10
120
72
47
0
50
35
110
0
59
150
13
26
0
57
35
26
20
30
22
59
103
0
25
30
19
7
13
53
61
51
86
51
96
7
9
64
30
74
0
29
10
34
33
126
146
78
67
81
66
26
0
7
95
75
39
0
5
84
0
0
15
68
0
7
0
0
90
67
74
60
78
75
65
80
65
78
66
83
66
62
38
35
57
51
69
61
60
100
116
148
163
159
221
177
223
224
224
225
218
179
173
218
159
176
167
170
160
176
179
230
244
236
181
169
144
134
192
143
160
210
165
153
157
164
166
158
150
156
191
137
193
157
146
227
167
154
155
158
213
144
102
145
122
143
119
144
37
136
111
134
18
125
101
118
128
147
142
139
214
198
205
222
199
213
221
206
202
159
170
163
211
216
161
149
230
234
229
177
173
174
162
144
181
184
157
74
134
74
61
121
64
135
0
54
55
104
112
55
118
26
55
48
59
67
78
79
52
90
46
26
57
10
130
163
0
1
26
58
0
62
38
73
84
88
26
75
0
46
44
31
6
54
56
28
67
62
69
65
26
52
0
8
0
28
20
50
26
0
0
0
0
26
94
0
17
50
62
4
26
26
27
2
0
104
86
45
42
34
55
108
84
66
69
0
70
19
74
129
76
28
0
83
0
43
0
83
26
141
58
65
26
86
88
122
37
72
50
61
126
53
56
0
75
37
0
0
51
4
62
92
27
53
129
0
26
66
47
0
0
4
29
54
60
26
68
2
31
9
79
62
26
62
52
37
132
89
88
26
44
48
17
57
67
85
90
87
61
94
26
26
6
83
95
48
0
93
18
0
58
21
36
55
7
49
7
21
84
60
84
90
78
75
40
81
76
86
66
77
75
45
51
68
95
83
94
73
130
124
147
161
216
223
180
177
223
218
215
205
164
212
202
202
164
162
215
154
163
176
228
236
232
226
166
151
139
196
198
219
212
220
164
166
173
174
163
157
217
200
204
207
111
171
201
217
211
144
163
191
174
160
160
177
176
164
191
116
228
197
152
180
196
192
127
126
193
170
131
210
188
204
213
177
204
225
204
210
210
235
225
162
183
176
171
203
255
255
195
199
202
177
213
201
193
151
109
142
138
107
119
62
103
45
26
57
77
93
55
26
122
91
52
51
96
0
26
79
138
29
67
70
41
33
83
145
26
53
85
0
78
64
54
118
76
35
40
31
20
17
11
49
0
107
0
28
63
141
26
0
5
0
0
20
15
16
94
63
26
77
0
0
36
40
0
10
0
15
42
26
26
32
134
0
3
94
96
26
26
31
87
92
71
0
0
22
0
125
61
101
55
0
9
40
126
135
26
34
26
155
43
26
32
66
108
46
38
36
168
101
37
0
100
10
0
21
0
26
11
26
58
197
172
22
0
0
32
0
0
0
0
59
121
43
37
107
26
22
5
0
79
87
90
118
39
52
5
0
30
0
34
49
28
72
70
63
80
56
98
92
0
24
58
39
5
0
91
0
0
184
26
47
27
33
0
44
71
107
75
99
97
100
72
37
89
67
89
99
108
58
88
104
115
126
104
168
107
142
140
207
166
171
175
223
168
157
200
195
198
202
204
144
147
150
159
159
157
202
225
228
226
226
164
156
148
140
199
206
223
217
223
222
172
177
178
167
215
216
200
165
216
79
196
193
242
193
146
177
176
162
164
151
119
127
104
183
134
179
213
48
154
227
196
159
173
146
93
187
200
198
198
214
194
142
207
210
222
214
237
244
177
198
193
194
213
205
255
202
211
206
182
182
229
215
170
168
86
154
141
119
127
84
106
0
0
40
37
75
92
118
90
77
65
26
103
56
102
139
101
52
127
33
0
90
92
26
40
15
5
56
64
44
44
63
94
100
30
25
93
30
27
0
121
42
62
93
113
26
27
22
0
0
17
27
92
0
113
82
98
33
34
0
51
46
41
78
11
36
97
140
26
117
2
0
29
137
63
0
36
62
71
10
0
13
14
54
68
82
75
99
27
128
152
189
28
0
0
60
80
26
112
26
85
119
2
40
0
66
26
67
90
83
53
59
0
0
0
59
30
121
134
100
134
59
8
59
0
0
0
3
98
49
26
48
22
33
65
58
45
100
102
142
124
32
117
0
39
30
9
17
18
7
45
0
18
3
26
26
157
0
91
111
33
10
18
9
2
0
52
0
50
11
23
0
26
81
104
62
91
83
45
87
106
143
115
117
168
161
152
188
189
190
142
141
184
207
200
211
214
166
171
166
215
213
203
200
195
190
186
194
188
196
198
209
163
164
203
226
230
224
224
162
152
199
137
146
161
215
221
226
172
174
176
177
170
159
157
143
168
217
130
156
137
179
158
151
187
175
168
109
126
102
103
142
80
37
0
108
0
178
221
185
166
161
144
83
145
186
167
149
210
213
198
205
197
172
226
249
255
245
200
200
202
216
203
211
206
255
255
188
184
228
216
193
175
104
114
63
128
135
75
96
57
7
83
33
117
49
0
0
29
71
134
108
84
0
90
119
125
82
15
2
0
17
24
31
0
28
19
0
46
0
54
0
60
36
73
94
18
29
26
109
122
32
0
132
91
50
0
34
58
22
11
79
0
87
106
49
26
141
38
52
42
29
26
22
0
48
74
59
91
14
81
42
187
59
78
60
26
78
16
0
56
17
131
43
181
53
105
99
148
149
169
98
0
0
124
0
26
121
26
119
0
90
0
0
79
44
39
116
56
82
125
30
99
50
160
125
85
63
46
0
0
46
44
17
35
76
20
86
49
64
43
35
175
125
59
72
55
165
101
70
128
17
91
101
89
74
37
75
47
26
53
13
36
70
70
2
0
0
58
0
0
56
18
5
17
0
0
9
110
71
22
14
93
113
113
116
145
157
207
210
220
160
203
149
139
136
122
109
142
121
136
188
187
194
188
186
145
154
200
195
197
143
202
201
134
114
177
177
172
193
133
160
164
212
203
207
216
154
151
143
194
177
185
198
160
205
216
215
166
216
217
166
147
161
146
163
156
128
118
142
183
120
142
161
151
180
140
114
104
111
124
120
114
154
0
0
171
112
205
140
191
146
170
187
129
171
166
146
180
222
226
196
222
193
187
255
213
196
216
211
217
205
214
214
201
244
247
171
227
237
165
175
146
116
157
116
128
121
178
95
86
112
87
80
54
75
95
60
48
88
49
81
50
57
37
100
101
83
10
47
120
58
10
49
35
77
51
22
0
4
0
0
74
0
74
0
101
52
99
102
42
0
88
65
0
0
94
43
0
17
0
144
26
51
65
26
145
17
0
0
0
94
0
77
124
66
128
26
0
26
109
22
29
0
76
0
17
0
0
23
23
29
128
82
142
113
70
42
26
0
36
0
9
0
6
0
73
0
23
6
0
0
10
0
100
93
0
71
84
47
135
55
39
70
4
0
13
42
61
48
71
110
74
61
53
44
80
65
80
36
70
81
98
64
63
41
117
119
11
3
24
103
100
81
129
49
67
59
17
24
13
27
26
62
26
61
16
65
65
0
83
62
19
1
81
64
0
76
43
40
10
81
132
143
177
178
190
186
123
132
103
106
110
129
128
99
96
148
161
119
123
185
178
187
195
138
143
145
202
183
137
133
213
139
120
173
140
125
145
141
147
166
160
212
222
160
156
151
199
189
183
182
180
185
185
213
204
219
198
229
196
127
161
159
164
189
108
150
200
168
114
152
172
156
173
146
118
95
106
127
91
103
117
7
29
150
111
169
111
122
179
175
221
154
156
141
128
167
199
219
223
227
196
182
204
196
255
213
209
210
209
209
210
191
250
240
188
170
232
181
150
135
147
130
171
162
170
166
120
95
107
51
83
15
45
75
41
0
100
69
121
122
86
15
1
72
83
54
30
98
85
95
19
0
0
0
0
21
0
0
0
58
0
65
48
86
61
107
15
89
25
0
37
16
0
22
98
130
49
63
36
78
54
26
49
169
26
134
76
50
30
0
26
168
47
6
0
0
88
45
72
65
37
61
67
20
0
81
59
118
54
109
84
179
0
76
41
53
3
26
7
6
0
5
11
22
18
0
0
66
25
0
25
58
0
93
22
32
87
55
26
79
72
0
0
11
0
43
139
68
152
75
90
26
61
112
0
45
66
68
81
81
27
22
0
36
63
45
108
38
23
21
26
26
94
38
13
64
20
71
57
12
63
26
61
15
7
72
4
51
52
1
30
92
64
0
25
73
74
51
76
169
192
200
189
188
166
177
166
149
152
150
117
117
96
145
145
154
163
114
174
170
175
133
131
187
184
174
175
177
174
92
134
109
155
187
130
130
145
137
204
152
199
205
160
150
146
142
186
181
180
178
184
179
205
200
211
196
234
150
118
157
152
181
214
126
174
162
175
118
160
173
146
164
153
97
101
129
152
84
113
68
28
32
60
143
109
111
130
164
168
197
177
143
128
185
206
192
218
168
173
250
239
200
199
255
255
210
211
208
203
208
184
255
242
183
177
238
156
152
133
154
192
187
175
116
158
144
91
113
63
69
30
53
25
63
38
109
82
51
96
70
57
0
66
94
60
26
92
27
53
0
77
68
18
0
0
0
13
2
8
53
0
49
31
0
46
35
4
36
0
83
35
5
32
79
149
43
55
21
66
95
36
67
108
26
56
87
58
26
80
87
170
84
99
38
0
0
63
69
59
83
44
44
84
5
32
98
116
42
48
62
58
47
110
46
0
86
119
79
82
0
0
10
23
0
65
29
0
71
24
0
26
62
52
45
18
26
26
40
28
39
0
80
0
44
106
117
36
0
46
0
81
43
73
0
12
28
86
86
0
0
38
13
16
136
38
67
76
81
44
84
53
38
0
0
29
70
49
60
6
19
0
61
13
44
26
14
53
11
43
96
116
73
9
0
62
98
163
182
191
182
121
133
114
169
156
150
143
146
135
152
103
93
144
142
149
153
155
160
160
161
173
174
122
170
164
172
106
102
22
175
156
143
175
131
115
141
129
192
196
185
188
159
196
191
136
181
177
177
175
180
173
143
194
200
142
180
154
128
161
155
188
217
159
186
141
148
120
154
179
157
159
95
108
87
136
134
97
96
50
30
4
47
84
108
52
158
94
152
198
164
195
136
198
163
136
155
150
154
229
223
188
250
255
203
204
255
255
200
207
178
206
192
181
176
182
145
154
184
173
143
194
178
176
171
151
84
90
68
72
0
57
41
79
29
82
91
41
106
93
141
45
63
51
67
89
153
89
69
68
116
58
40
44
0
0
23
0
0
31
26
63
66
0
0
92
13
15
0
0
0
0
26
0
26
37
0
125
0
75
38
48
93
26
26
26
144
0
26
70
160
51
40
30
39
32
26
98
0
43
55
0
110
30
57
130
135
0
26
54
26
146
89
71
0
106
113
39
45
89
64
40
64
64
18
43
0
27
0
54
45
6
0
143
57
99
38
118
100
26
0
62
61
134
61
26
5
43
11
6
65
26
118
11
26
88
44
24
0
7
27
0
63
11
12
63
31
16
41
121
110
84
78
9
166
75
7
9
0
4
8
0
73
67
26
0
0
117
99
82
103
53
3
20
127
173
180
179
126
109
89
160
163
160
141
145
141
144
128
138
91
90
142
141
93
146
147
148
152
155
162
165
164
160
162
165
98
105
83
161
162
148
164
173
165
176
130
195
193
183
185
206
140
135
184
177
173
172
173
176
171
135
190
193
196
170
150
141
201
165
240
208
162
194
140
147
213
151
177
166
116
92
112
88
94
115
92
83
46
33
0
77
125
156
104
105
88
145
190
119
182
103
142
135
176
144
202
146
215
218
221
242
253
245
194
197
197
253
255
231
190
190
179
166
168
143
163
197
221
208
204
174
128
129
129
115
78
65
61
3
30
57
56
23
27
93
72
112
94
121
0
48
2
59
115
121
72
42
94
98
0
46
39
41
66
1
0
26
30
66
82
34
100
58
43
34
132
102
141
38
78
85
81
0
0
0
110
26
43
26
0
31
59
26
26
73
26
26
9
23
125
0
98
22
45
26
77
0
76
111
39
21
36
144
44
18
38
51
132
69
72
111
13
0
26
80
60
33
25
41
2
101
68
28
0
54
42
26
99
0
0
147
94
34
67
76
29
26
42
49
43
1
38
55
0
0
72
24
46
65
26
72
46
51
91
58
40
13
0
86
7
19
25
97
50
26
12
22
0
26
26
106
104
0
5
26
18
34
0
0
0
29
64
0
45
95
78
43
66
133
123
161
195
192
184
117
109
97
106
89
154
145
147
140
137
132
137
137
130
132
80
81
85
88
86
87
78
84
93
140
93
94
148
98
92
109
161
163
152
156
152
158
145
165
143
166
194
190
190
191
188
134
129
178
171
167
167
171
172
177
126
182
181
207
205
196
210
131
244
236
209
195
181
132
102
195
123
127
120
121
77
97
81
64
92
32
87
34
30
64
83
134
123
44
162
64
163
94
108
94
118
111
177
181
162
174
172
174
200
196
223
235
190
176
177
184
202
195
196
172
172
169
164
180
209
211
206
187
203
203
193
131
132
117
156
112
99
37
61
41
36
106
59
116
60
83
152
64
71
94
20
0
109
0
43
87
85
26
4
106
0
133
132
72
88
66
59
35
57
56
126
86
111
76
61
26
0
54
89
26
61
34
15
0
0
24
54
137
61
26
0
47
28
0
91
40
0
27
0
28
98
52
58
56
44
30
49
56
55
64
62
89
12
24
74
106
26
0
48
107
26
131
169
134
48
45
0
20
30
99
26
98
26
35
58
26
58
65
48
45
28
120
138
103
31
0
21
67
92
1
32
26
80
56
8
69
0
0
16
4
22
16
95
109
87
33
29
62
23
0
15
6
50
42
30
0
66
56
54
26
96
39
0
0
0
33
52
26
26
84
0
15
0
35
36
86
133
134
149
178
168
206
119
118
110
104
84
89
58
88
119
157
125
133
125
128
129
134
132
74
74
82
84
134
135
122
76
82
128
137
135
135
146
140
147
96
95
97
152
149
154
142
148
149
133
167
181
182
177
129
180
173
171
168
168
168
172
172
124
176
180
175
210
215
205
230
203
249
185
169
173
169
179
140
187
173
130
141
166
131
163
122
80
80
66
28
57
23
31
89
118
108
56
142
43
154
105
96
105
102
94
163
182
177
177
178
179
149
135
210
174
192
165
174
180
187
184
196
166
156
166
162
181
163
150
198
198
176
185
202
135
148
129
177
202
95
41
75
28
13
98
64
125
65
112
179
93
96
148
65
7
84
0
77
58
113
84
62
49
0
14
87
54
72
52
70
46
28
102
87
45
52
95
44
69
104
82
67
51
54
130
126
26
5
0
43
76
113
61
0
0
79
0
127
23
44
88
26
41
30
66
36
78
73
0
104
139
26
134
111
54
26
111
183
0
3
52
118
41
24
12
86
85
69
76
38
67
71
101
40
108
46
26
32
44
43
57
0
0
69
61
0
38
0
17
12
0
54
0
0
70
86
97
35
16
21
0
49
26
0
82
99
3
51
37
107
71
24
0
76
45
0
0
25
2
0
65
92
70
2
38
0
0
0
44
0
32
30
76
0
19
1
63
101
134
161
145
177
161
187
187
106
119
86
92
78
89
58
56
90
75
82
85
72
123
121
135
131
69
69
80
132
131
80
64
122
123
121
79
128
123
126
127
136
109
96
145
102
98
97
92
79
159
106
141
121
172
162
126
175
115
114
166
168
169
171
173
121
173
182
116
211
224
213
224
211
245
199
202
155
197
181
135
167
169
117
141
121
109
90
154
79
95
66
46
56
49
68
120
113
107
72
84
76
146
147
138
100
111
105
170
156
165
173
174
174
133
182
200
218
242
208
173
176
173
226
245
211
143
168
155
171
146
157
204
194
178
189
205
176
201
191
194
211
137
75
64
0
17
62
35
147
78
121
169
115
102
37
69
0
84
16
60
0
62
140
113
31
0
0
35
88
72
53
65
45
67
92
110
120
122
75
21
63
32
57
26
119
123
65
26
80
36
37
73
27
93
60
0
0
123
55
29
10
65
40
97
85
60
36
53
40
57
0
83
192
71
127
99
40
48
117
72
0
18
53
18
15
20
67
74
129
149
117
103
88
133
163
0
92
54
0
72
34
26
53
0
74
0
39
57
0
60
49
62
69
53
60
57
63
167
120
10
0
21
12
51
51
61
143
43
43
51
24
88
47
0
78
0
0
26
112
0
14
0
58
56
92
10
0
0
0
38
35
26
89
49
37
55
31
91
156
155
180
166
167
171
171
185
175
98
94
126
78
73
80
86
73
56
84
70
64
72
76
63
107
128
73
63
64
68
78
65
73
63
120
103
123
115
109
76
119
79
90
86
140
93
96
93
89
82
141
137
61
114
109
155
169
116
106
106
111
116
121
116
148
146
131
205
173
162
219
217
236
160
155
177
204
117
220
200
157
160
105
120
126
100
123
94
112
67
92
30
74
60
117
117
77
74
76
37
44
108
139
90
89
100
102
104
106
162
157
176
173
167
118
177
178
230
226
223
188
228
173
204
202
165
141
160
158
212
153
204
208
193
102
168
193
107
149
111
187
214
167
75
100
38
43
97
93
120
73
83
120
38
34
67
51
0
82
0
65
0
101
26
152
33
0
60
0
85
84
59
54
37
97
49
56
53
108
43
40
21
42
26
68
0
72
55
53
97
67
132
30
67
46
107
79
35
0
97
0
39
41
0
66
87
48
57
123
12
19
103
110
89
142
139
26
26
82
91
0
0
32
40
28
24
18
23
17
35
116
141
92
89
30
55
26
123
49
8
0
52
46
7
71
29
64
26
0
96
0
7
0
29
43
139
84
80
46
35
42
0
56
70
28
57
89
0
35
104
45
111
48
96
29
87
13
16
0
17
64
83
61
50
50
78
91
37
0
0
51
35
71
69
40
84
97
70
169
172
188
170
183
184
186
146
104
183
109
77
105
144
78
71
79
86
122
70
58
64
64
73
76
116
112
121
105
104
72
75
122
109
108
63
101
116
114
108
122
114
77
85
81
134
89
93
93
137
134
71
90
75
100
99
147
158
107
159
158
112
117
122
117
181
120
113
168
125
181
221
174
190
167
144
178
200
122
225
185
142
141
107
101
110
91
96
115
112
71
91
71
86
78
55
66
46
82
63
55
25
57
137
99
148
153
151
101
109
162
161
172
170
115
116
119
115
210
210
217
208
215
216
217
187
158
128
164
144
155
167
154
145
138
115
139
130
105
147
131
196
216
181
154
93
68
58
151
39
62
125
91
110
59
86
117
27
30
87
9
127
62
124
63
108
0
0
14
0
25
48
85
79
49
78
63
26
26
77
35
51
30
47
26
6
0
99
31
26
61
33
4
0
89
61
79
114
50
0
0
20
44
85
59
0
107
106
141
48
25
98
115
77
24
75
103
56
0
70
83
3
0
44
46
53
12
57
15
29
5
101
121
150
40
62
27
26
72
24
0
32
0
23
64
44
26
78
26
0
31
0
0
19
0
93
115
0
40
44
99
43
45
71
117
97
47
37
82
98
85
68
72
22
0
48
0
0
10
54
1
0
1
0
0
30
59
30
142
34
43
65
6
24
6
88
132
176
188
173
139
137
162
137
206
169
164
159
123
153
74
54
135
133
126
119
112
123
64
111
59
47
103
63
118
120
107
61
55
49
54
112
105
102
53
101
96
50
34
104
46
116
123
122
68
77
78
135
132
132
108
85
93
77
87
86
143
150
150
151
157
162
166
177
97
124
138
166
152
201
178
193
200
169
149
167
175
119
198
196
119
94
117
114
126
132
146
135
133
97
88
75
81
55
82
51
107
135
32
65
0
81
134
138
129
146
145
94
107
105
163
165
166
112
113
110
99
169
171
196
178
200
201
237
230
192
185
231
195
205
217
224
141
125
76
125
141
139
125
132
191
197
180
198
178
164
145
179
171
156
163
126
93
89
141
113
41
126
111
111
126
140
131
86
170
25
0
113
35
43
0
6
0
0
39
58
71
83
69
64
105
30
39
35
72
39
11
0
124
0
31
27
16
69
73
0
1
117
0
13
15
31
0
52
57
10
26
83
55
82
118
73
90
85
23
60
26
12
14
0
4
22
44
91
98
68
64
45
109
176
119
161
101
23
0
25
61
43
142
51
44
111
53
35
58
49
66
97
15
0
0
0
32
2
26
76
51
65
89
26
35
96
65
58
83
99
41
81
36
87
26
42
9
0
0
54
67
27
0
0
0
0
29
4
29
48
105
62
18
7
0
0
0
11
118
115
171
164
165
155
141
155
96
168
155
93
147
108
158
138
105
119
128
124
115
110
70
53
101
105
102
98
99
106
112
108
59
56
36
46
97
113
44
39
45
42
49
81
46
40
107
113
62
63
69
69
73
79
128
121
73
84
72
82
136
139
147
147
149
156
160
164
120
105
107
113
138
173
190
170
194
188
153
157
148
151
175
192
186
127
109
134
117
182
136
176
156
130
87
102
95
85
39
131
61
166
96
88
118
5
69
133
139
132
154
96
97
105
105
110
111
114
112
113
165
159
164
114
129
108
181
190
174
172
188
207
230
209
211
213
224
143
123
95
116
123
141
123
174
193
193
191
225
204
169
170
179
197
181
127
138
99
90
175
152
108
146
135
84
124
107
150
71
67
0
0
100
0
48
63
0
0
0
0
0
41
0
0
4
101
42
32
57
1
0
45
32
7
70
81
0
0
24
39
49
10
52
0
0
60
0
90
60
56
136
26
106
44
107
115
100
59
148
82
44
32
15
25
33
66
75
95
99
100
133
16
39
164
125
123
41
29
31
29
9
45
26
107
50
77
80
119
55
164
113
57
86
107
121
43
115
61
55
52
160
26
49
79
84
29
69
30
148
26
101
26
42
85
26
87
68
79
26
11
39
39
37
26
61
0
29
0
3
15
26
148
49
40
48
77
6
72
55
155
154
147
115
109
138
141
136
140
160
162
85
129
85
117
136
115
59
119
111
106
106
102
59
73
99
106
101
95
97
34
54
97
100
87
45
37
56
90
79
38
43
47
83
40
35
48
105
109
109
113
113
116
125
70
76
64
72
120
125
129
133
141
147
97
157
160
112
109
165
99
106
153
177
162
183
198
169
135
207
184
183
180
192
160
88
116
145
111
119
117
189
141
128
90
112
78
48
39
85
81
154
8
86
101
80
36
120
139
139
99
107
157
159
108
107
112
111
112
113
115
164
163
111
118
111
155
177
149
210
192
223
222
214
218
218
213
197
186
119
125
128
136
117
161
182
177
192
228
209
175
192
201
189
153
137
156
131
117
162
153
103
153
135
92
105
134
132
72
79
36
50
63
0
83
64
71
0
61
0
24
8
0
2
85
75
43
26
23
0
2
0
26
56
69
42
0
0
0
15
50
53
0
0
0
31
35
82
82
41
44
29
72
44
64
8
26
143
120
56
49
18
0
10
34
19
71
88
102
109
35
0
39
156
150
34
48
89
36
108
10
90
95
71
116
92
0
0
8
45
80
56
26
62
142
52
57
26
55
29
76
63
26
26
106
26
26
36
63
37
65
26
73
67
26
27
35
15
50
63
58
29
52
50
39
10
22
2
31
0
0
90
92
55
107
72
25
76
101
110
103
102
132
145
133
150
137
131
79
181
129
89
81
109
134
124
101
106
102
120
111
85
48
64
48
106
106
96
92
25
41
38
44
39
43
37
91
39
29
34
39
40
33
36
27
39
45
104
103
105
57
112
114
116
122
115
117
119
118
123
78
136
142
145
153
156
160
156
112
87
132
168
173
162
161
192
159
182
197
185
176
169
181
154
148
129
137
126
125
109
179
148
127
168
196
102
81
110
124
114
70
47
106
107
94
95
66
88
99
99
119
116
108
168
161
112
107
161
165
116
164
157
111
111
110
101
122
170
204
207
228
217
210
229
224
204
206
207
130
149
154
184
165
164
166
152
183
202
197
181
196
207
184
161
136
165
155
152
135
201
154
137
124
92
111
162
166
112
101
80
65
79
49
115
62
0
38
111
26
59
44
0
0
0
1
35
56
0
0
76
0
51
72
77
2
0
0
0
0
37
35
82
46
70
26
52
26
27
26
61
118
66
101
0
0
58
79
40
46
34
49
53
28
12
24
25
93
111
68
55
36
38
68
29
85
0
57
95
88
30
103
153
26
66
30
99
59
76
94
0
13
26
26
96
125
84
0
80
16
0
21
44
40
26
37
31
51
42
107
26
38
54
0
18
0
31
0
84
74
58
28
0
72
7
54
0
7
50
26
0
56
69
26
65
45
88
195
136
107
74
132
126
78
73
144
152
74
52
134
161
49
143
107
82
74
92
93
101
107
105
101
48
47
51
101
105
95
40
36
25
43
49
42
42
41
25
48
38
86
88
86
81
86
76
84
92
48
46
49
55
59
53
113
111
117
114
121
115
121
129
134
136
138
147
150
154
157
107
71
164
198
163
162
155
189
210
185
190
192
179
154
160
171
149
144
121
156
146
120
114
164
182
178
203
115
116
133
33
49
40
58
111
96
42
138
84
97
117
163
181
125
110
172
161
163
157
106
163
168
162
152
110
106
99
115
180
149
209
223
228
217
205
239
224
202
219
226
193
172
166
179
171
180
164
142
179
179
185
183
135
139
144
153
121
157
156
215
220
199
173
135
118
138
157
118
161
135
62
74
59
78
45
93
85
26
105
66
43
33
11
0
0
0
1
0
52
20
56
60
0
75
94
29
26
66
49
52
7
22
0
70
21
4
65
51
51
40
26
32
0
82
75
115
60
117
77
105
12
32
64
9
28
23
33
12
82
98
47
114
98
49
28
86
53
0
56
81
49
33
14
95
0
88
26
133
66
76
100
48
89
109
36
44
26
26
113
97
176
142
125
128
72
0
0
0
0
0
33
25
69
0
102
28
94
0
0
28
54
56
59
20
2
0
39
26
51
68
16
2
0
68
87
71
135
155
145
155
99
128
131
71
73
79
83
148
97
143
118
110
157
129
52
87
110
113
106
111
100
102
104
36
37
91
93
87
39
30
29
34
22
17
15
23
27
28
76
87
95
87
90
82
73
73
65
20
29
85
42
35
35
113
60
60
114
111
118
117
110
121
88
109
88
102
105
94
81
105
97
188
183
181
177
149
189
217
169
183
171
144
141
155
137
124
131
129
149
170
196
150
152
138
114
156
114
123
127
0
1
116
36
110
116
118
175
124
110
227
188
222
187
167
187
121
110
104
109
106
104
151
152
149
102
112
159
160
158
168
182
176
190
158
167
168
207
221
237
201
183
142
130
153
183
146
191
172
152
144
120
120
125
111
120
119
139
155
206
231
228
225
174
137
171
172
190
156
173
91
100
118
155
157
104
89
35
75
49
35
73
52
8
0
0
28
7
29
93
112
0
0
0
112
26
26
26
0
21
8
15
26
26
41
9
116
93
53
26
110
120
156
26
65
98
60
121
74
75
67
26
66
104
90
57
0
19
61
49
50
22
8
44
13
20
50
130
30
39
11
125
65
102
74
112
98
101
16
58
88
47
31
77
79
0
0
116
26
28
26
45
0
52
2
23
57
0
0
9
26
0
15
0
114
103
11
0
0
36
5
0
5
0
16
22
26
26
55
66
57
0
0
0
57
48
159
160
151
155
105
121
73
79
80
74
70
88
81
130
81
85
147
140
48
67
120
105
109
107
103
50
52
39
26
89
98
88
37
42
34
32
81
21
17
70
19
23
26
74
92
84
38
30
18
16
62
17
21
76
90
85
72
103
54
63
117
116
119
123
115
62
130
98
94
95
111
92
134
103
106
178
186
196
178
155
186
187
156
169
174
149
148
182
175
157
139
127
213
171
253
148
169
147
104
163
153
129
139
44
16
51
129
196
157
108
159
125
159
247
216
184
149
181
139
130
115
109
113
106
155
149
150
147
101
112
154
159
104
152
164
157
178
151
207
222
147
221
227
213
232
128
123
135
145
165
182
169
168
155
118
128
122
97
147
153
168
203
195
222
228
227
230
167
141
148
200
164
131
104
121
125
182
156
125
91
57
100
62
99
64
135
26
0
0
0
53
0
112
0
3
0
29
65
67
102
26
34
71
0
0
3
0
90
73
11
45
8
0
51
50
128
82
172
127
94
118
154
194
126
91
52
56
22
67
80
35
12
28
49
41
32
0
57
31
6
112
100
65
75
100
106
103
160
67
127
100
84
48
20
0
77
25
132
22
0
0
9
9
94
26
26
44
77
0
0
7
0
23
18
0
26
38
99
157
0
36
15
22
26
0
0
26
0
18
69
60
0
58
59
16
3
2
0
94
121
93
134
168
56
120
76
95
139
157
91
90
90
78
92
129
133
148
64
44
135
113
108
106
111
55
92
95
19
45
48
36
31
37
31
29
32
28
23
21
20
72
74
68
81
84
28
30
12
8
14
14
61
68
28
81
65
88
95
63
66
69
127
131
124
120
119
84
83
153
97
99
105
170
109
151
226
241
162
147
168
157
159
169
166
163
148
155
135
122
203
190
223
179
233
153
172
147
131
178
151
111
94
49
88
25
137
93
84
124
239
195
226
243
227
185
153
191
143
138
120
114
117
107
156
149
149
147
153
108
153
156
154
145
153
148
119
196
198
215
194
222
166
174
209
141
120
129
157
148
159
152
186
147
125
141
124
105
138
146
157
180
180
198
158
209
217
234
160
179
211
178
149
111
171
164
166
195
141
103
23
51
28
115
0
76
77
0
0
32
53
0
0
0
48
71
26
53
137
105
46
189
28
57
45
84
0
36
73
66
15
0
0
0
0
92
66
97
69
33
46
49
137
38
110
16
55
35
26
42
98
71
77
46
39
40
42
52
49
73
131
122
96
78
104
48
172
166
26
195
31
88
131
108
192
26
68
3
38
150
123
23
73
26
78
26
26
26
98
26
63
44
22
33
0
19
21
86
131
0
79
73
27
47
0
19
0
26
102
67
18
48
63
67
99
42
10
0
98
179
111
130
136
91
91
131
102
80
158
102
85
92
79
137
140
77
95
130
48
79
76
112
107
107
50
40
45
41
103
98
90
29
29
29
26
28
28
73
20
20
18
68
69
16
85
68
29
66
58
9
12
55
64
16
25
14
79
87
111
61
65
132
135
131
135
68
85
75
152
137
150
177
161
177
139
162
175
146
142
155
167
176
176
157
107
170
155
147
178
217
172
186
202
185
140
132
101
104
142
133
96
77
136
163
67
67
60
107
159
176
220
249
195
158
176
152
144
149
146
124
118
120
107
106
152
152
148
153
152
103
151
151
148
149
89
161
185
183
208
197
221
207
217
190
149
116
144
139
167
128
115
183
131
135
146
121
116
91
95
157
156
172
185
144
193
206
223
211
233
212
143
165
122
108
102
143
110
150
116
20
0
95
145
0
30
26
0
0
26
50
0
0
36
59
90
18
99
163
53
0
148
39
35
62
52
83
51
37
19
8
125
0
0
78
1
0
0
0
0
0
0
0
64
0
54
0
51
53
0
63
89
92
54
10
19
41
62
47
132
95
64
17
74
97
113
167
95
43
115
82
108
84
105
39
140
72
14
27
63
47
58
0
78
76
80
56
114
121
114
84
0
0
37
0
72
32
60
48
7
108
118
49
122
8
54
0
26
76
29
17
0
0
58
50
10
0
40
88
53
84
141
128
124
151
134
145
87
79
143
131
134
80
123
102
86
86
78
71
65
82
67
58
45
41
103
101
126
99
94
42
33
29
32
27
22
76
66
68
68
67
13
18
10
30
11
21
24
12
52
58
53
64
60
69
16
23
28
52
53
109
127
129
132
94
82
87
78
80
84
137
174
92
197
151
157
158
135
192
147
167
165
167
154
108
181
177
193
208
209
181
183
195
148
155
140
127
119
123
175
124
78
121
149
102
33
43
112
163
173
220
186
186
178
168
150
198
153
199
128
119
120
158
158
154
155
149
152
146
105
97
98
153
149
86
148
168
163
205
147
155
197
188
135
137
120
161
132
148
155
147
132
124
138
139
112
112
98
98
106
99
174
175
186
127
140
153
155
215
158
162
166
135
107
110
91
129
120
127
103
94
75
63
49
75
64
31
57
15
62
37
95
62
77
93
4
100
103
43
35
50
42
42
62
79
111
70
48
14
0
9
12
15
0
0
15
25
0
0
0
26
48
132
53
77
28
0
6
45
39
86
51
64
2
131
30
98
90
64
95
11
0
43
100
34
171
117
26
121
68
110
66
14
0
79
45
14
0
6
0
16
8
85
58
111
54
89
37
84
60
0
0
24
94
49
20
51
64
0
88
55
63
73
0
4
36
44
26
0
13
10
0
46
52
18
0
39
80
144
114
135
141
142
135
145
87
93
85
143
145
145
94
75
160
151
128
78
76
68
75
118
61
52
46
101
110
127
90
94
96
87
33
36
29
25
77
70
68
67
65
64
65
62
22
17
12
30
29
0
53
53
67
6
8
14
16
19
45
51
108
123
123
72
89
92
74
76
59
135
131
159
167
141
160
145
134
117
182
77
106
155
161
99
139
155
113
196
172
186
214
231
108
150
114
126
147
122
169
163
129
118
137
143
103
97
67
121
127
218
225
240
220
163
158
145
191
199
135
131
171
171
157
156
102
104
150
150
146
153
95
96
152
152
87
87
152
147
191
188
129
133
125
187
122
137
158
147
180
144
158
130
131
131
129
160
151
103
99
99
162
176
168
180
169
123
131
147
195
203
209
145
141
106
117
103
128
124
137
121
119
126
128
0
73
54
40
51
81
83
105
98
67
85
6
41
22
13
108
42
83
54
75
60
78
121
40
66
0
15
0
35
0
0
10
60
85
26
44
73
70
34
33
115
79
26
8
46
19
61
100
104
79
60
50
43
50
44
2
43
0
0
8
74
81
162
53
26
26
0
49
120
38
68
0
81
10
82
2
19
0
194
50
98
86
65
65
85
26
0
36
0
41
26
49
86
0
0
81
6
57
90
26
72
40
0
61
68
61
8
0
0
73
52
0
0
19
70
72
63
119
156
149
73
99
119
74
93
146
127
153
154
132
114
169
138
112
126
122
68
110
61
76
52
79
80
118
89
87
90
94
85
33
85
33
82
76
72
69
67
68
13
61
64
6
18
15
92
9
44
57
8
14
11
1
10
57
12
102
108
117
77
82
71
84
61
110
25
141
117
161
233
132
175
112
158
115
116
99
188
176
197
116
210
166
233
152
211
195
229
175
114
133
137
174
135
107
124
173
179
126
134
103
128
54
94
122
153
180
216
197
205
215
206
172
178
194
187
189
114
180
173
110
105
102
96
149
97
100
138
89
97
144
94
87
77
127
140
135
99
115
117
122
124
145
150
178
167
118
139
128
126
168
179
172
153
162
97
110
156
167
170
173
173
166
172
181
176
166
164
170
114
121
146
116
126
96
107
136
149
148
89
134
119
45
64
132
34
90
53
85
0
24
120
89
65
0
24
26
132
109
137
76
129
99
87
86
28
33
43
0
58
25
23
32
72
83
0
47
31
110
0
36
26
166
0
79
38
47
101
133
72
77
41
25
20
26
27
57
0
0
117
56
53
38
0
109
73
95
103
84
42
89
12
0
113
0
0
0
42
0
0
46
121
37
16
26
26
0
92
69
0
0
13
78
96
61
24
68
92
26
66
58
99
105
123
60
10
6
9
6
75
60
4
31
17
28
53
70
131
142
99
99
90
117
157
125
81
108
136
132
152
126
131
136
127
109
69
82
72
62
64
60
63
91
121
93
92
38
41
37
36
35
35
85
83
76
73
72
75
8
64
20
18
17
54
38
90
77
2
10
7
8
7
9
60
52
71
93
110
119
71
73
86
74
64
32
136
89
117
190
150
214
105
132
113
119
104
118
95
117
202
184
174
186
149
202
220
232
135
132
92
193
157
120
120
117
75
125
160
145
146
124
109
153
169
190
175
182
185
181
192
201
195
162
133
167
133
115
179
153
107
105
102
147
148
94
95
87
88
91
94
92
138
128
125
134
124
136
99
107
109
119
153
158
162
117
136
136
135
123
113
115
106
98
148
105
102
153
170
171
112
113
176
183
126
160
164
165
161
111
112
104
117
117
159
184
161
165
155
140
127
124
94
98
99
95
79
87
76
26
26
172
0
20
169
15
28
102
61
84
121
44
61
48
61
79
78
30
51
28
0
7
79
69
25
0
0
0
163
95
59
71
97
10
40
39
37
72
64
125
90
86
38
113
56
82
0
0
58
29
97
202
43
60
115
26
88
76
87
0
109
17
6
62
94
47
75
65
32
0
26
150
6
14
32
49
48
0
20
24
24
0
55
10
43
103
133
75
40
72
71
94
141
184
59
58
60
39
61
70
16
0
4
24
57
39
57
90
143
108
109
92
89
105
148
83
91
146
136
136
159
132
140
120
131
71
73
68
61
54
67
98
106
119
98
44
38
39
41
39
88
89
36
87
79
75
74
26
8
66
23
27
24
65
76
130
106
16
15
5
8
13
0
57
58
58
73
102
109
110
123
79
76
58
50
131
101
131
181
158
148
168
128
115
122
161
212
94
113
140
179
128
115
113
165
182
158
164
134
132
173
139
116
131
141
138
165
156
137
133
78
100
125
143
172
172
152
176
160
168
176
188
158
178
117
120
119
174
141
104
105
101
147
146
144
143
89
89
87
144
140
137
132
128
126
114
70
138
152
96
114
157
212
200
167
145
124
137
118
112
104
97
96
148
152
102
168
167
167
105
159
180
131
122
151
112
112
105
113
103
112
111
104
164
197
178
178
153
153
138
179
92
126
107
34
26
60
5
26
48
50
72
11
73
51
0
35
84
51
79
22
0
53
49
90
42
26
41
0
32
4
46
0
0
0
0
0
78
0
92
49
26
134
13
68
90
68
92
117
116
138
75
141
131
88
37
59
56
94
0
161
81
32
63
110
100
120
84
76
81
52
0
26
21
58
16
48
27
26
0
90
16
19
61
107
50
26
8
17
33
0
13
43
54
103
73
62
76
50
94
13
27
118
41
41
11
68
60
75
12
0
0
56
51
94
32
85
97
97
91
89
95
87
107
97
66
99
149
135
165
135
134
87
92
71
66
67
60
55
64
103
117
108
101
43
40
36
44
93
89
38
38
84
79
76
21
22
14
16
13
76
37
98
64
146
115
47
22
13
12
10
51
52
60
61
62
41
56
105
116
120
115
95
117
139
151
151
150
197
191
169
135
116
141
182
191
146
175
190
194
156
111
94
160
202
167
153
90
149
163
130
113
124
94
98
195
151
157
147
135
105
103
79
151
155
138
162
147
146
164
111
166
100
118
150
176
108
96
152
106
102
147
145
141
139
92
90
141
140
140
142
140
139
125
113
67
138
96
86
113
151
149
140
165
190
114
127
109
111
104
102
94
106
88
159
185
103
110
156
159
123
120
167
157
166
159
112
120
99
115
100
96
100
179
169
181
184
165
175
162
115
116
125
26
83
0
2
88
80
61
101
49
32
71
74
118
52
76
26
20
33
1
26
99
73
26
113
69
49
0
50
67
26
72
59
0
28
26
106
51
26
145
17
64
167
64
75
79
128
98
128
80
73
102
57
0
53
70
2
70
128
73
24
73
61
36
56
26
55
32
86
26
48
50
0
20
19
0
13
56
26
77
73
33
0
38
0
0
47
44
10
62
82
156
85
57
23
51
75
82
0
3
26
0
20
46
0
34
0
5
0
30
69
98
92
85
116
103
94
100
106
134
80
99
86
78
139
82
86
144
92
95
70
69
76
81
61
63
56
78
71
92
50
40
45
35
44
93
89
90
38
82
81
80
75
72
12
70
62
68
92
62
81
75
77
130
88
31
24
7
59
53
50
54
60
24
51
107
110
114
104
95
116
155
162
160
125
185
190
91
188
168
213
141
83
143
182
202
245
145
110
107
135
176
130
153
172
114
149
118
99
164
125
99
176
178
188
182
132
130
112
144
131
129
139
144
144
134
126
113
113
122
150
135
178
86
108
149
109
155
148
145
142
138
95
143
144
141
146
143
141
143
132
119
71
136
87
78
110
137
133
127
117
188
172
111
98
106
111
110
92
98
98
105
121
99
115
106
108
120
162
165
161
164
159
173
123
155
116
99
99
84
94
94
122
186
182
196
174
173
113
139
45
91
81
81
175
78
80
85
5
77
20
164
140
0
9
0
12
47
58
0
71
77
9
0
103
85
79
26
74
38
65
155
33
40
26
156
89
29
85
39
149
132
37
46
56
152
139
138
93
129
26
26
0
66
0
58
46
145
105
55
170
26
58
73
46
0
113
0
0
29
107
112
0
127
96
144
81
64
97
72
72
65
26
1
0
9
16
83
77
154
26
0
1
53
68
81
46
22
0
35
80
125
45
34
91
11
0
0
54
77
51
35
95
74
90
105
89
102
146
103
85
80
88
134
98
58
117
81
128
148
130
111
75
124
61
61
93
140
74
55
40
55
38
95
94
93
93
91
94
88
84
81
30
17
67
83
23
89
41
123
118
189
157
141
63
59
37
15
62
63
48
45
58
72
97
53
51
67
113
119
159
185
136
117
182
182
76
181
120
138
125
129
84
196
189
169
205
162
205
98
186
171
170
118
141
112
101
106
133
78
110
154
127
202
167
146
126
114
147
158
81
110
95
175
130
114
197
101
154
146
115
127
80
176
147
114
159
152
147
143
137
84
72
133
142
136
137
138
135
144
134
135
128
78
67
94
88
99
118
125
157
125
104
108
101
135
103
113
104
118
110
105
114
120
104
109
106
109
161
152
160
165
170
156
110
97
107
96
88
79
77
93
97
88
91
161
111
199
225
147
50
36
33
98
26
0
49
103
128
92
128
76
139
65
64
44
66
135
0
47
119
84
0
44
26
26
14
0
0
97
37
110
84
89
85
91
94
86
65
127
82
38
26
86
123
115
119
131
107
26
68
66
89
0
123
1
71
26
26
59
119
131
0
5
81
15
0
0
82
0
59
117
73
26
144
31
42
74
26
79
68
120
106
44
29
68
102
126
92
39
0
38
33
19
70
0
17
0
97
83
99
54
37
81
11
45
41
55
82
124
73
106
120
81
104
100
97
91
74
91
87
87
84
79
92
74
61
96
128
131
124
140
130
53
70
95
148
75
110
95
110
92
96
95
96
95
40
98
86
80
27
33
82
59
85
81
47
99
108
148
202
166
108
66
68
55
53
76
47
53
0
12
60
91
50
41
71
109
137
144
167
170
163
176
173
117
154
113
144
208
163
84
187
191
196
213
166
190
149
164
208
215
168
171
149
158
158
140
91
123
131
90
195
139
92
79
89
107
118
86
104
146
125
145
169
205
105
106
139
190
183
147
185
147
116
109
102
95
92
84
77
61
73
137
72
82
142
139
143
138
141
131
82
72
88
68
88
130
122
158
108
160
177
158
146
96
130
144
101
131
139
171
164
108
166
146
104
105
153
164
166
170
148
113
84
103
85
96
88
82
80
89
80
76
147
166
153
169
156
48
63
0
0
0
35
68
24
189
49
55
105
69
73
108
140
27
64
26
40
26
26
96
64
0
2
44
12
0
58
0
58
23
97
123
113
165
145
168
177
140
26
26
72
63
27
93
111
33
52
86
9
82
52
5
104
0
0
0
37
16
40
0
91
63
26
0
1
78
63
86
50
76
62
110
76
72
35
9
113
85
90
123
56
77
69
72
203
110
88
0
7
75
47
24
57
54
27
93
143
138
87
69
75
45
26
17
0
7
88
87
119
135
100
91
98
97
91
141
140
90
144
91
89
77
148
68
75
106
139
88
105
122
113
126
109
132
45
41
110
96
109
107
97
103
95
97
100
103
93
87
86
77
96
81
108
101
107
110
89
167
171
187
94
73
68
74
48
0
0
0
9
20
60
134
116
129
130
153
67
172
170
132
177
196
65
88
190
172
146
134
96
89
185
189
139
86
179
171
193
185
224
134
152
137
92
130
103
142
175
125
101
205
149
183
113
99
120
130
103
131
155
186
150
150
134
123
124
107
128
178
185
182
164
165
119
112
152
93
94
69
116
86
0
23
65
81
83
141
136
135
137
74
75
59
76
91
97
147
117
96
126
162
197
127
105
159
120
116
147
118
171
160
165
154
150
107
155
157
113
115
162
167
166
164
154
141
96
91
76
71
76
67
73
88
132
130
137
138
78
79
27
93
0
28
52
83
19
74
83
75
26
102
50
65
26
65
26
25
16
77
5
58
79
24
42
75
10
26
0
0
109
149
115
151
166
122
152
112
106
44
0
42
35
143
11
64
0
69
32
32
38
79
0
85
9
0
47
0
37
42
0
10
48
10
0
10
10
11
0
91
51
57
88
53
38
0
90
61
113
109
63
82
7
93
67
115
63
8
0
0
53
22
13
0
37
114
61
132
136
65
38
73
61
34
63
0
0
0
43
78
99
134
143
98
146
142
144
144
148
143
136
66
70
61
92
53
57
131
132
98
70
110
122
114
131
49
46
69
109
106
108
99
100
103
51
104
98
94
93
98
27
94
88
113
90
130
147
149
180
171
173
97
85
135
123
73
0
9
0
50
59
76
121
112
75
126
155
149
172
142
137
170
104
83
174
199
134
142
106
80
108
133
167
157
169
211
177
203
165
171
129
123
128
80
129
130
146
160
109
187
193
126
137
73
103
132
120
114
144
106
187
152
114
148
112
130
119
108
217
202
191
182
174
121
103
105
103
94
91
88
79
15
62
78
80
81
142
137
137
139
73
128
63
126
137
90
112
137
97
92
135
202
168
149
180
161
205
224
172
225
192
167
154
156
158
154
102
159
158
110
115
166
165
156
160
108
84
100
215
63
60
64
78
73
125
127
128
126
86
47
53
30
22
30
42
0
65
128
26
26
26
27
38
75
26
42
47
74
32
97
72
57
54
46
90
24
26
26
107
143
195
186
240
194
161
112
109
69
42
56
92
41
94
44
20
65
40
11
5
37
127
26
82
122
46
56
0
14
16
61
10
15
6
0
0
103
92
41
58
128
119
41
0
26
59
0
52
70
126
127
57
0
0
9
0
38
60
0
13
15
46
29
6
27
60
101
92
103
35
63
4
83
53
43
45
0
13
6
63
83
135
135
144
142
146
152
98
142
141
142
120
79
74
62
142
118
71
72
88
70
55
62
119
130
110
114
125
118
114
113
53
45
55
55
112
99
47
98
109
32
91
93
63
89
152
178
156
189
171
158
148
145
142
131
81
12
16
2
50
44
93
120
55
79
70
104
176
166
135
157
174
148
131
166
180
119
147
108
144
175
153
158
140
128
209
190
195
196
182
214
123
104
91
115
147
124
139
115
170
201
170
145
100
93
121
101
119
158
100
126
155
173
163
114
136
110
140
187
200
193
198
189
186
103
110
108
92
154
152
84
53
83
77
138
141
141
87
139
140
72
128
122
72
75
75
107
94
136
123
192
211
198
231
138
208
216
194
202
219
183
160
163
194
150
149
99
154
153
108
113
165
165
158
156
92
85
83
139
60
60
58
64
63
64
116
116
116
137
54
17
81
87
87
0
0
26
106
72
27
26
28
68
26
165
171
29
4
104
88
0
62
102
44
69
92
81
26
203
144
131
203
233
159
170
128
147
8
54
46
92
108
133
108
53
102
65
73
59
26
125
49
42
77
76
18
0
56
7
72
52
20
0
0
0
70
95
92
135
161
98
0
41
43
97
82
54
162
26
69
27
42
26
0
138
167
45
46
58
40
25
21
10
108
106
143
99
36
53
55
40
95
23
64
51
9
0
10
87
96
104
137
143
147
138
121
127
144
141
133
92
92
60
71
51
79
65
62
68
69
60
105
119
125
75
82
66
72
129
110
114
50
47
53
111
118
120
104
124
107
92
32
53
88
97
103
108
102
103
102
136
135
126
149
119
54
0
10
49
63
42
89
94
109
76
108
120
175
95
101
104
126
164
138
165
196
165
163
161
129
214
238
109
133
133
135
194
192
182
167
125
95
93
109
116
199
161
105
176
167
189
153
95
78
107
172
119
134
92
113
135
171
118
145
171
173
146
171
167
198
188
187
144
131
126
129
166
162
154
104
92
81
159
138
125
89
91
144
92
82
139
142
76
69
87
79
86
61
153
161
169
217
198
211
187
184
202
173
162
161
162
165
154
142
101
103
97
103
100
155
156
104
153
156
149
142
116
79
84
74
65
57
102
107
109
103
104
108
56
63
0
0
0
0
21
50
18
49
98
65
104
63
119
26
134
70
68
64
0
38
26
33
66
89
63
117
201
192
188
209
217
190
142
102
155
101
27
49
95
150
144
152
133
121
173
173
150
126
132
114
52
165
116
91
32
0
69
14
0
35
57
0
0
72
26
81
118
26
112
110
98
40
0
26
26
26
26
140
0
11
77
48
5
139
88
26
33
44
37
59
32
15
63
6
118
32
64
41
0
0
147
14
49
37
9
50
47
71
82
91
57
78
94
107
156
154
98
152
100
79
103
143
69
71
78
66
63
58
64
120
110
119
120
75
74
69
79
67
57
114
109
47
56
53
122
124
64
133
119
51
38
52
106
92
93
109
83
89
102
80
131
124
134
137
63
10
0
0
76
90
132
119
111
83
109
110
137
95
96
101
173
179
147
190
184
164
174
151
115
128
142
123
140
147
87
139
201
117
182
108
110
91
153
159
190
205
126
186
210
169
157
90
64
92
120
110
129
93
107
136
163
188
151
149
193
142
188
105
157
175
172
125
134
133
151
131
191
178
158
148
145
167
153
133
88
143
145
144
87
143
147
79
72
66
80
76
142
150
155
211
206
113
203
185
181
164
171
175
139
161
165
108
103
163
102
95
101
97
99
151
151
149
141
136
175
93
99
85
75
70
114
107
111
59
102
103
118
117
62
92
46
0
38
99
72
0
85
131
64
46
94
31
51
26
0
6
0
7
37
56
22
60
112
68
78
116
156
206
195
234
196
157
128
110
43
38
53
98
141
122
112
205
213
211
213
158
192
166
84
68
81
26
25
50
48
28
0
0
70
43
28
0
56
54
78
57
26
0
45
34
4
0
0
91
85
38
101
81
26
79
76
78
47
51
61
26
57
0
63
3
0
143
93
69
84
117
26
34
30
26
64
76
62
68
84
52
0
0
7
30
59
76
157
100
93
75
78
82
102
68
97
92
92
79
74
70
58
66
126
117
120
112
119
126
61
72
62
68
118
117
47
52
55
68
66
74
131
131
121
53
55
103
84
98
109
83
79
95
76
74
68
119
85
63
35
10
3
69
91
73
111
100
88
99
98
135
107
112
124
183
183
136
182
168
185
212
171
128
209
169
168
138
140
78
178
204
118
114
102
70
168
142
157
197
199
144
158
175
76
89
99
54
89
122
103
123
106
114
127
180
154
149
99
182
155
176
170
140
112
122
118
131
132
150
193
203
191
181
158
163
162
174
90
88
145
147
146
145
146
150
84
78
33
100
120
118
142
152
211
129
154
173
185
184
154
156
141
153
162
161
172
114
114
93
99
101
97
97
97
148
95
134
125
126
60
81
84
80
75
117
118
65
59
103
103
103
129
114
106
60
57
122
43
33
26
37
143
117
67
85
56
26
26
52
0
51
0
30
64
71
17
0
45
75
104
188
241
201
138
175
209
148
57
68
108
79
126
210
120
128
233
230
214
153
209
211
194
26
26
26
31
0
54
26
143
53
0
0
36
58
48
40
99
74
45
26
0
26
26
98
107
59
48
110
93
0
73
30
85
153
80
48
64
47
77
62
38
53
52
36
33
88
105
26
107
52
6
59
41
33
99
57
64
57
48
0
0
0
87
96
98
123
89
90
150
142
133
125
129
76
92
107
82
85
79
61
70
78
71
121
107
112
137
98
57
119
135
126
122
99
98
64
66
111
131
125
138
135
70
61
90
74
106
108
91
74
89
72
70
61
113
121
60
105
45
86
54
93
74
87
89
90
86
86
123
118
126
196
198
220
147
176
175
216
206
213
149
211
115
122
160
146
187
193
171
111
113
109
65
117
148
137
195
186
139
128
156
47
86
138
74
85
74
114
129
128
135
131
187
138
140
123
114
185
186
150
107
101
132
126
132
124
183
144
196
184
214
166
178
169
186
76
87
145
147
146
147
147
149
84
81
75
139
67
106
126
156
173
96
170
169
160
169
109
79
162
171
161
159
194
118
109
85
157
104
97
97
97
146
146
157
96
86
139
85
87
89
79
64
74
70
58
104
105
106
104
110
118
52
48
114
36
76
74
104
107
129
129
130
101
46
36
74
0
82
0
4
26
4
0
0
88
49
113
157
208
170
131
172
133
150
113
109
131
170
203
195
193
232
227
211
195
232
228
190
169
26
0
30
26
8
86
0
49
91
26
56
60
33
29
0
0
70
155
149
161
141
95
32
26
18
0
43
101
60
19
79
34
16
75
26
12
101
76
75
50
51
39
20
4
37
21
23
139
9
35
43
40
86
46
23
28
13
78
47
0
5
27
39
50
74
83
83
137
139
88
156
126
73
62
71
157
76
83
66
120
131
126
120
115
113
116
135
113
126
142
140
105
117
104
103
125
112
126
131
152
115
93
67
76
61
132
140
98
73
86
68
70
115
114
112
122
40
53
105
125
0
52
74
104
98
68
154
109
117
149
171
176
208
154
153
171
172
217
196
100
147
100
119
150
120
200
162
162
136
107
121
58
146
159
124
150
202
182
64
112
87
116
148
137
49
109
102
103
161
210
205
201
164
130
110
117
138
164
176
116
101
177
176
133
135
178
142
201
176
197
180
197
187
187
123
84
97
147
157
144
154
146
98
91
62
70
54
113
144
150
156
95
95
160
103
96
86
143
139
158
167
135
197
148
108
115
86
155
149
148
150
143
146
147
163
130
130
132
85
86
83
75
83
73
62
52
103
100
108
110
113
56
44
13
16
57
42
50
0
47
15
37
26
43
26
50
94
37
122
0
0
0
74
0
96
167
154
192
206
218
154
113
123
111
49
90
144
211
193
136
224
174
217
213
171
228
242
189
110
0
0
56
26
123
103
50
101
135
0
72
26
88
118
29
0
52
24
143
171
188
193
149
68
96
0
0
88
0
16
73
14
82
54
51
165
33
21
0
39
38
63
131
0
77
68
73
92
0
53
9
49
53
31
78
54
75
77
40
40
0
0
16
18
73
122
124
129
144
152
143
150
140
142
71
111
124
81
95
90
127
127
70
71
125
118
123
116
130
133
151
135
112
113
103
125
123
121
146
144
152
118
131
58
147
130
130
121
109
62
72
66
48
92
92
114
105
104
145
130
124
80
108
143
92
74
79
61
88
115
188
121
132
236
122
107
196
199
133
125
126
141
113
180
99
178
159
146
176
116
99
125
135
145
64
121
157
192
154
82
133
137
109
127
119
28
91
158
121
244
163
151
168
150
102
145
155
187
95
117
128
121
126
114
118
177
129
116
199
147
190
200
189
173
234
207
186
178
255
217
123
123
146
152
147
88
142
109
109
106
71
69
133
137
144
93
158
146
154
149
146
139
185
156
101
85
108
162
142
141
146
144
147
143
191
146
134
87
84
85
136
131
75
72
121
108
103
105
109
58
60
60
67
54
0
0
14
24
0
28
90
75
0
85
65
70
87
26
96
87
82
76
45
110
149
204
163
212
180
182
144
95
170
118
110
57
123
90
166
192
210
150
139
132
143
173
145
114
8
51
89
98
63
81
0
0
34
0
0
0
104
0
27
41
52
0
36
50
97
108
42
37
52
42
49
53
61
79
70
91
90
109
49
44
94
62
35
0
19
40
25
58
10
64
74
84
106
82
74
42
51
80
0
82
76
68
71
73
32
0
5
50
51
62
86
96
124
141
144
148
149
142
145
88
135
119
107
120
130
134
135
71
68
71
75
125
120
124
122
144
146
115
66
112
123
125
119
140
155
143
129
129
129
104
139
133
123
121
98
110
59
49
45
97
105
108
113
140
146
144
146
86
133
136
141
97
73
74
115
203
137
110
198
91
152
160
117
127
155
110
189
119
178
141
139
191
132
196
169
103
143
135
122
66
119
110
158
136
149
114
140
144
109
114
35
75
213
78
215
200
136
157
192
117
107
101
107
125
149
126
127
133
112
118
170
111
111
154
102
159
212
184
226
247
210
218
255
255
212
186
216
164
160
157
146
137
114
122
108
74
112
123
134
140
149
171
148
155
152
149
87
152
112
88
91
103
158
143
140
145
145
146
133
173
143
84
87
84
84
84
133
130
77
122
111
105
104
53
56
59
58
60
126
64
34
6
30
16
0
141
27
0
42
96
26
84
45
46
2
0
49
105
154
196
224
197
212
185
110
156
141
124
125
152
173
103
165
179
154
155
154
131
169
177
111
87
84
50
127
67
104
128
26
26
23
58
170
0
0
132
0
38
0
23
62
114
26
47
5
53
36
0
24
34
59
21
52
26
57
23
38
36
88
92
115
13
55
0
46
0
0
4
11
20
71
26
93
39
98
83
44
81
143
157
85
110
18
30
57
74
0
64
55
63
73
104
129
133
142
149
159
99
146
147
78
125
116
118
137
86
73
69
71
81
81
127
125
113
130
148
125
124
125
121
125
120
128
162
134
88
81
89
88
137
72
119
125
97
83
36
51
43
48
51
109
118
145
152
92
89
77
150
77
123
97
65
118
123
132
163
173
120
149
213
86
113
118
159
88
186
72
178
174
130
97
119
161
126
109
129
53
43
63
176
188
210
115
171
133
128
100
83
46
34
47
96
86
168
149
163
143
178
105
95
114
104
128
121
123
112
108
118
112
115
103
119
142
125
228
237
207
235
255
255
255
255
255
213
225
204
212
172
146
162
104
78
117
63
76
105
113
132
128
141
168
143
143
101
107
85
185
100
83
91
94
166
147
141
146
145
144
123
137
83
85
84
84
84
83
81
134
81
122
114
111
103
50
53
55
57
118
97
143
87
61
71
16
0
146
43
0
115
50
118
0
55
75
5
76
5
155
161
200
213
227
194
190
95
185
158
156
184
214
123
204
171
151
91
114
100
142
179
102
40
0
26
28
32
89
79
160
101
73
75
21
42
133
73
58
87
4
0
0
126
71
26
86
0
130
133
9
0
0
93
125
32
15
4
3
32
84
125
76
92
88
0
0
54
2
51
26
35
35
107
63
59
76
113
30
47
65
134
146
93
101
77
49
15
80
0
49
0
10
63
77
108
123
142
138
151
145
105
96
87
93
84
141
132
133
76
73
75
80
85
134
132
115
121
144
84
80
133
125
127
127
124
153
89
82
90
81
75
82
120
119
127
108
67
61
45
29
43
53
63
118
161
144
89
77
92
134
117
120
152
69
76
198
113
102
204
109
161
189
91
150
121
149
79
200
147
178
175
63
75
135
131
112
118
99
46
54
74
177
168
178
183
134
156
124
19
108
0
3
18
0
60
79
123
161
168
184
95
101
82
66
158
106
126
141
77
119
108
172
157
181
125
135
168
190
240
244
255
214
255
255
255
255
255
205
200
153
162
170
167
89
54
67
68
103
106
125
122
134
156
151
144
95
105
86
199
77
91
80
87
136
147
140
144
92
89
71
62
80
84
81
84
83
134
133
85
83
73
118
115
100
51
52
56
108
108
59
52
57
114
132
113
152
99
65
59
123
109
117
67
32
76
55
99
36
141
182
219
201
236
171
176
87
157
161
174
212
126
123
172
112
115
125
107
142
141
45
44
48
50
47
48
71
86
44
77
123
137
99
8
61
0
98
136
72
30
53
105
29
0
43
135
95
76
30
0
48
40
50
8
0
40
28
58
61
67
113
84
137
89
28
0
43
29
0
35
15
48
57
86
62
85
128
107
76
93
158
134
105
78
95
123
38
22
47
39
46
40
49
76
42
45
74
73
126
82
150
154
93
84
86
143
134
83
85
83
83
135
84
137
137
125
67
85
89
87
78
130
130
133
78
87
144
127
140
78
75
78
121
115
67
111
79
53
83
22
37
52
73
122
153
140
86
81
102
141
135
126
130
115
154
181
107
132
130
101
175
138
81
173
124
141
122
189
149
168
190
138
143
162
118
114
123
104
62
87
95
174
162
194
174
121
145
83
49
167
0
36
0
47
3
0
71
183
161
155
98
87
88
120
122
104
123
103
132
110
116
125
168
183
165
182
210
230
253
249
210
227
222
226
225
255
255
255
208
192
229
190
157
161
76
81
114
114
58
113
121
121
135
113
105
92
90
87
229
73
99
79
79
209
142
135
89
91
140
133
117
86
83
80
84
83
133
132
81
84
75
120
115
101
104
56
58
108
103
124
113
58
68
107
130
203
121
46
133
106
82
0
97
58
80
76
126
127
146
143
161
184
212
172
115
92
140
190
170
235
221
202
190
191
190
184
142
128
71
39
8
14
44
122
91
141
17
25
0
53
91
104
122
28
168
53
91
30
64
60
26
33
22
50
95
87
53
138
142
126
89
44
41
0
39
36
0
84
26
122
33
74
64
60
41
120
45
53
26
45
114
14
53
64
89
132
145
106
108
128
99
40
54
98
86
80
62
74
46
69
48
0
3
22
35
39
68
118
78
120
116
134
78
146
142
91
91
94
91
141
141
81
86
86
83
69
81
90
91
71
135
132
86
87
79
139
130
80
86
75
69
64
103
52
53
102
60
72
26
37
47
82
79
76
144
135
95
146
148
143
125
134
147
132
140
117
168
92
148
183
131
169
213
114
133
106
154
180
160
181
150
170
171
98
84
118
134
110
101
110
171
160
240
170
166
108
13
162
108
12
45
0
40
76
38
111
168
107
92
124
93
148
215
164
141
166
190
161
154
128
125
124
182
163
171
216
221
255
255
255
217
221
229
224
255
255
255
199
207
204
190
203
213
119
153
116
128
119
53
113
104
57
118
109
93
75
139
148
86
99
89
69
219
86
79
86
91
141
144
130
146
134
132
84
83
132
131
129
83
130
69
62
48
106
111
60
107
121
61
56
68
66
74
65
171
125
108
216
111
74
90
39
120
149
72
107
156
141
147
130
190
225
175
79
89
197
208
146
218
254
216
183
216
201
188
75
71
33
13
25
35
114
190
130
147
1
45
0
17
17
114
90
61
105
48
45
38
66
34
71
41
72
91
0
65
161
89
114
145
114
8
29
0
54
42
0
83
50
101
111
82
97
59
53
46
32
80
189
171
91
86
99
108
80
85
62
90
82
56
39
71
27
190
111
88
173
105
35
100
120
55
73
35
41
37
62
49
83
84
90
124
126
121
126
122
126
131
127
123
142
84
83
81
79
81
85
80
76
80
75
76
76
76
71
122
130
71
75
72
72
69
60
56
41
86
84
73
105
110
111
64
128
138
159
156
160
131
129
88
142
118
100
160
125
118
185
183
167
152
162
127
100
114
154
178
149
167
178
133
165
160
157
111
161
119
108
123
159
124
190
159
200
108
132
106
13
110
26
51
64
4
0
31
59
54
83
119
135
121
181
185
197
113
199
200
150
137
107
120
130
173
197
152
178
229
189
252
255
208
213
220
221
255
255
225
226
221
221
255
255
217
188
226
239
218
211
198
120
136
82
87
111
150
99
198
184
117
139
97
79
82
88
93
85
93
81
124
168
118
75
93
83
79
131
127
135
131
80
80
72
68
114
116
117
66
120
115
114
60
60
59
66
116
110
119
64
70
83
99
82
92
94
168
172
162
47
148
103
60
160
168
96
135
145
138
159
142
213
225
213
163
183
162
96
59
80
42
82
155
206
246
245
114
78
41
0
81
26
0
0
13
92
26
79
45
26
138
72
60
55
37
44
41
0
26
27
45
71
27
34
0
86
0
4
0
27
1
0
54
66
20
69
81
15
0
47
57
77
56
86
33
19
70
32
106
26
10
0
22
26
70
40
71
44
183
137
142
108
118
97
102
0
0
61
43
47
41
59
42
75
48
49
126
119
115
112
75
80
130
130
80
88
84
83
79
77
129
79
69
71
73
67
127
122
127
125
109
117
63
59
103
47
38
78
83
87
112
112
122
108
119
78
104
153
159
128
133
132
98
88
63
163
173
106
191
218
143
155
138
133
90
169
164
189
132
151
200
134
179
153
140
86
158
109
118
130
160
177
163
181
187
116
113
67
0
131
26
48
42
56
15
0
38
81
66
81
100
109
201
125
194
96
186
123
152
138
116
131
143
198
103
136
202
211
178
209
255
255
255
216
218
255
255
225
224
223
255
255
255
223
212
203
255
237
255
255
198
131
119
135
155
113
178
201
208
193
132
146
82
97
124
122
75
98
88
131
174
113
77
88
82
130
132
129
81
79
79
79
72
69
67
68
121
120
121
113
113
113
113
111
114
114
109
112
55
63
62
75
63
71
58
95
151
141
112
63
72
120
169
118
109
116
128
160
136
179
213
163
229
161
158
115
104
138
144
151
255
255
191
228
206
113
73
130
26
59
108
124
110
0
26
65
82
33
5
10
26
93
69
42
40
43
0
0
0
46
73
26
82
44
0
34
50
68
60
28
0
4
85
15
0
0
41
17
71
26
0
26
19
20
34
0
0
46
0
28
30
50
26
16
143
78
62
125
129
150
41
120
111
73
14
16
41
61
36
0
36
49
33
54
57
72
97
60
71
67
68
122
126
75
79
83
80
125
124
126
120
118
68
68
112
120
117
119
71
55
112
57
49
90
85
82
74
74
88
100
109
130
118
69
79
93
99
93
122
131
122
104
86
115
130
197
127
200
205
143
119
132
214
160
156
157
180
104
104
111
121
69
52
68
110
110
72
138
130
184
234
142
205
196
168
120
56
49
52
13
0
3
0
1
0
45
71
68
67
135
164
187
129
135
163
185
141
200
118
102
133
169
119
126
135
198
201
173
217
218
255
255
213
215
255
221
221
221
222
224
255
255
255
255
255
255
255
211
255
255
214
200
225
173
154
223
234
254
239
167
190
137
142
131
221
151
159
151
86
173
119
85
84
83
129
133
77
79
78
79
78
73
70
71
71
121
121
121
60
113
114
114
112
111
112
111
62
60
67
56
63
111
105
86
120
114
123
101
62
82
61
105
53
59
125
144
77
99
121
160
242
217
207
171
153
185
187
180
254
252
245
232
209
165
93
58
33
26
86
47
92
96
115
139
123
85
95
61
2
26
138
74
0
0
80
0
38
0
0
0
26
44
137
0
43
106
102
0
0
28
38
0
8
10
0
0
93
114
46
42
0
16
23
62
2
19
30
20
58
35
14
9
0
79
5
64
127
98
98
20
38
31
7
71
83
61
98
19
10
42
0
0
46
42
0
20
36
50
54
57
77
77
73
118
117
121
130
123
115
109
120
70
64
61
55
110
107
65
65
59
56
50
91
87
72
67
69
82
37
107
71
82
82
82
80
98
80
76
54
63
109
65
116
63
191
154
194
197
143
178
109
171
144
180
175
181
124
89
78
134
96
95
86
122
101
95
145
84
195
242
162
199
185
162
176
132
136
103
0
27
14
0
0
14
52
33
110
69
110
143
148
135
184
206
198
221
166
153
91
164
209
161
216
182
158
218
233
211
221
225
255
213
255
255
213
216
255
220
255
255
255
255
255
219
217
225
214
255
255
221
217
220
218
205
255
255
225
210
216
255
250
242
255
214
158
189
174
140
169
84
95
85
91
77
134
129
128
130
130
75
73
71
124
121
121
68
67
111
113
115
114
111
111
110
109
113
113
105
100
50
63
107
88
103
96
112
97
63
58
74
45
31
46
65
76
52
119
184
216
223
194
173
124
150
249
230
230
223
225
236
213
179
149
75
56
0
0
0
0
0
0
50
119
163
94
85
26
99
26
46
76
49
30
106
51
7
0
10
26
0
57
11
61
0
24
0
2
10
35
25
26
33
32
0
28
59
138
62
71
0
44
41
35
33
48
32
22
58
23
77
6
6
72
69
40
159
60
54
12
3
57
47
91
99
27
92
91
31
34
33
0
40
41
0
6
3
2
30
43
58
69
71
74
116
117
118
115
114
55
68
119
61
63
63
110
93
94
47
46
47
48
92
36
16
61
72
83
91
108
61
84
88
80
71
93
80
87
42
57
94
62
82
73
132
171
154
213
101
179
105
160
154
194
157
162
142
119
104
99
136
113
103
117
100
98
69
115
218
225
126
117
161
183
162
138
129
64
0
22
28
6
2
3
51
0
53
42
86
128
142
180
156
141
97
117
185
159
183
223
223
193
200
164
160
162
237
255
222
225
218
214
255
255
208
211
255
255
255
255
222
223
222
223
219
255
255
255
255
221
224
224
225
255
255
208
213
255
227
218
255
255
255
220
205
180
172
180
169
95
99
82
84
79
136
76
75
127
127
75
125
72
123
69
68
65
65
111
114
115
114
58
59
108
106
106
107
106
100
95
57
108
41
36
93
93
70
41
37
102
73
79
51
63
58
66
136
165
212
217
239
187
186
198
244
137
74
114
176
183
194
95
89
0
0
0
0
81
0
0
0
81
65
81
109
73
24
82
49
26
71
110
26
0
62
6
65
50
28
0
62
0
12
31
30
21
0
20
0
0
77
51
0
89
115
92
18
2
85
85
0
12
59
26
24
24
27
37
90
46
49
7
45
130
0
26
109
44
0
92
91
70
55
46
71
116
120
21
87
61
50
49
62
0
0
40
0
0
2
6
20
27
52
59
111
110
111
112
59
96
89
45
99
81
74
84
30
38
42
46
102
39
33
33
72
72
101
100
56
80
61
61
70
73
64
80
71
107
71
105
81
86
103
104
155
173
136
152
114
105
142
255
174
168
149
136
150
129
169
106
77
117
112
104
155
170
177
248
228
147
93
100
166
168
160
63
78
0
3
30
5
6
21
66
38
69
83
91
110
101
137
128
137
141
169
89
180
225
182
225
226
215
171
156
215
255
255
217
220
217
217
255
255
212
210
255
255
255
255
255
255
209
217
255
220
224
224
221
221
222
227
255
255
222
227
226
255
255
229
229
229
255
229
226
225
255
255
255
218
185
109
84
136
138
73
73
127
126
73
73
125
122
70
68
68
67
61
64
115
113
107
50
107
63
108
108
97
45
45
55
95
111
29
100
91
39
43
36
85
39
22
65
110
117
112
106
90
133
169
227
249
209
153
181
123
39
100
89
93
98
68
110
39
0
8
47
0
157
4
10
11
20
4
67
120
36
52
76
26
64
53
119
0
0
0
0
0
61
32
96
0
87
99
13
1
20
19
0
31
120
0
0
73
121
25
18
26
57
101
46
77
50
105
183
38
68
0
12
121
123
21
39
94
26
63
135
38
67
110
137
48
30
95
78
99
25
78
21
0
68
77
17
0
0
0
30
1
0
0
37
45
51
38
39
55
54
52
104
100
104
101
93
104
94
85
34
34
37
30
69
27
22
37
79
81
96
121
118
86
62
60
77
52
60
51
76
69
113
83
107
138
77
152
164
150
163
152
127
133
134
165
123
173
175
156
116
144
140
108
130
186
185
87
185
193
247
255
173
166
115
166
165
157
140
47
83
0
5
14
1
30
13
64
48
126
56
64
58
124
119
129
180
104
118
192
183
186
195
242
170
153
184
248
255
222
161
217
223
218
255
255
255
211
201
255
198
250
254
255
255
255
214
255
255
255
222
222
227
255
255
255
227
227
255
255
227
229
255
255
255
255
255
255
255
255
255
255
244
231
158
95
69
136
76
130
75
125
125
75
123
118
118
119
67
62
62
64
63
112
105
107
59
109
107
109
42
49
56
52
97
99
41
93
44
29
51
37
91
89
36
42
106
107
51
50
114
118
180
238
229
156
216
195
157
110
64
65
79
53
23
77
57
105
126
0
0
12
0
0
32
97
26
119
72
82
32
44
61
104
75
99
4
27
0
0
0
114
45
26
69
26
26
51
26
0
17
0
87
125
0
26
27
134
0
0
25
0
0
32
26
69
137
106
19
17
0
32
63
56
0
61
65
34
0
119
6
92
63
94
0
8
49
120
86
79
52
0
22
61
58
0
2
20
70
69
0
54
0
39
33
40
26
25
34
39
45
120
57
51
102
103
101
102
109
59
49
39
88
86
45
39
5
19
26
100
104
106
135
128
73
131
128
42
62
77
66
89
115
67
130
169
181
136
121
160
117
176
180
146
145
191
218
120
137
105
150
123
200
201
194
179
196
195
213
201
188
197
179
190
151
158
156
140
57
113
0
20
42
42
16
11
15
0
36
28
7
10
57
100
135
131
127
107
173
191
220
231
192
150
172
172
238
241
206
162
255
255
255
255
255
214
204
255
255
196
255
255
212
208
255
220
255
255
255
255
223
227
227
255
255
255
255
255
255
255
229
229
229
255
255
255
255
255
255
255
255
255
214
255
193
81
123
137
118
78
127
125
73
72
117
117
117
63
62
61
64
63
113
107
106
108
109
107
56
53
51
47
37
39
41
39
39
40
35
41
29
30
85
48
34
32
40
56
48
100
126
137
150
184
203
216
179
143
120
62
52
69
112
59
37
0
32
26
0
9
20
32
0
0
79
42
39
49
55
26
34
79
68
44
0
44
25
0
0
0
95
38
71
26
53
0
9
49
0
0
18
23
57
0
63
27
133
0
16
55
50
110
26
35
53
86
37
30
61
55
63
50
14
0
89
58
66
9
49
0
24
84
54
65
0
0
103
25
5
31
11
31
58
63
0
14
50
107
77
2
0
0
0
51
54
45
0
3
14
24
97
59
57
58
49
99
94
94
91
20
25
75
28
36
29
35
19
13
37
61
63
129
125
67
134
115
55
102
64
88
50
105
60
178
188
181
166
185
149
129
153
187
131
170
132
157
110
126
128
148
170
125
164
197
131
182
199
217
208
177
213
192
176
118
154
150
138
100
154
0
65
51
16
0
23
21
0
0
6
45
38
93
149
148
96
108
199
199
135
167
132
175
215
197
236
255
164
187
187
255
255
255
255
220
217
205
255
189
255
255
242
216
218
211
218
220
222
255
255
255
255
229
229
229
255
255
255
255
255
255
255
228
226
255
255
228
255
255
255
255
255
255
255
208
121
119
134
64
78
76
126
73
72
64
115
112
112
113
113
63
63
113
109
105
105
109
107
53
50
52
44
43
38
38
38
34
29
51
32
20
22
41
23
34
94
99
109
44
93
100
152
167
176
175
181
153
138
104
59
44
51
70
42
0
43
26
82
3
70
29
51
92
0
9
107
43
28
74
70
59
50
2
18
4
41
29
0
19
0
0
54
180
7
71
0
0
55
0
0
26
31
93
28
180
32
70
28
0
13
25
88
38
26
117
36
52
33
54
54
55
32
3
0
55
61
70
0
67
0
80
61
32
124
45
0
144
14
13
35
0
13
44
54
20
0
81
120
17
0
0
0
60
48
56
42
0
0
44
47
57
35
38
51
46
99
90
75
70
7
12
59
60
12
5
70
85
82
26
66
122
119
114
113
114
46
66
99
79
51
77
130
97
147
186
224
149
151
199
128
176
143
191
163
99
116
148
174
135
148
188
167
171
207
161
185
205
209
214
186
202
195
187
151
156
137
139
94
105
85
11
57
0
2
29
16
0
0
16
0
53
89
164
108
181
192
171
137
230
204
111
169
129
211
235
201
163
170
214
255
255
255
255
216
217
214
210
175
255
255
230
255
255
219
215
223
224
226
255
255
255
229
229
229
229
229
255
229
229
229
255
226
223
222
224
226
221
255
255
255
255
243
255
173
210
139
96
74
124
72
71
71
69
65
112
111
111
113
111
61
61
60
57
105
104
109
106
52
50
53
98
50
42
38
35
26
20
21
23
80
16
11
13
99
110
106
53
48
99
96
114
118
170
110
99
59
104
96
22
10
53
44
227
101
26
60
131
59
0
102
101
104
116
39
15
25
46
100
0
31
37
0
0
2
7
19
4
54
47
29
26
80
82
74
121
0
4
56
93
58
4
79
120
140
83
88
26
0
24
88
142
38
84
62
50
0
53
18
0
32
89
44
0
68
133
87
23
0
0
57
59
76
100
63
68
38
27
69
70
28
46
24
34
56
0
87
68
32
0
42
80
98
61
53
17
14
5
13
66
53
49
0
48
57
76
96
43
37
28
6
52
48
54
57
65
71
81
101
33
41
66
62
57
119
126
54
60
123
86
103
127
153
167
199
172
244
183
129
151
166
174
101
146
161
143
173
154
166
236
226
190
213
177
191
214
211
210
210
220
167
187
183
161
150
99
97
125
27
9
0
13
18
2
7
0
0
0
18
0
72
106
103
140
164
228
213
173
202
180
199
161
189
197
217
107
216
182
213
255
255
255
219
219
255
213
205
203
255
255
255
254
255
255
223
225
227
255
255
255
229
229
255
229
255
255
255
255
255
255
255
255
223
223
224
224
221
216
214
210
255
243
255
204
230
214
182
179
124
73
70
61
59
61
57
108
106
106
106
106
53
52
50
53
103
102
99
46
45
43
41
40
34
30
30
20
20
21
17
17
12
71
73
82
79
32
101
105
105
103
94
36
57
174
109
52
29
22
49
0
26
49
93
0
124
49
30
24
0
82
67
26
9
0
0
36
0
34
25
57
74
33
1
16
0
31
0
53
57
3
26
0
111
85
26
35
45
78
103
88
0
97
164
55
82
99
72
36
26
73
56
39
76
36
38
26
63
107
26
58
83
26
121
69
110
90
34
0
0
42
26
27
52
78
117
55
60
56
73
48
45
60
104
104
26
103
76
93
24
42
78
78
65
40
53
3
15
35
30
69
62
66
0
0
64
22
24
68
0
0
0
0
0
55
0
81
91
44
53
47
63
56
45
117
106
62
50
120
80
124
111
77
164
154
176
147
117
98
129
173
115
185
206
153
159
172
139
146
209
233
202
224
186
191
215
207
206
209
211
191
190
200
174
174
129
96
108
53
7
0
0
0
0
3
2
0
0
29
23
33
95
89
153
178
205
225
174
218
199
164
200
151
137
158
162
218
213
219
222
255
255
219
255
255
204
212
211
255
255
213
211
255
255
255
255
229
229
255
255
229
229
229
229
229
229
229
255
255
255
255
227
226
225
226
225
223
222
214
209
255
243
255
189
200
222
203
149
90
87
71
109
58
54
54
53
102
100
104
50
48
47
45
51
49
43
40
41
36
93
91
93
29
28
32
14
14
20
3
44
0
18
57
73
80
82
92
106
111
118
120
124
74
108
95
55
59
28
0
0
0
0
92
28
89
32
100
115
62
67
50
0
0
31
20
94
0
13
83
74
124
49
75
56
1
0
0
22
30
46
0
8
0
39
35
65
54
58
92
149
59
6
101
33
15
62
50
1
89
154
57
60
0
15
0
0
76
68
26
26
47
49
151
0
102
119
53
0
0
0
119
98
58
38
26
72
0
84
55
46
43
48
120
75
6
178
84
128
23
25
82
74
78
43
68
23
41
43
72
94
16
71
3
5
9
56
68
16
0
0
0
0
0
56
62
91
96
106
119
45
51
109
51
13
45
99
120
49
162
27
158
69
168
159
238
184
81
144
50
201
161
167
135
128
165
152
169
196
219
216
194
188
205
255
255
213
206
209
196
218
193
193
176
231
190
134
79
34
33
20
51
46
51
0
0
11
32
47
30
36
111
127
107
134
150
145
168
196
210
197
201
172
156
144
200
196
220
220
216
216
223
217
255
212
199
255
255
255
255
217
207
255
255
255
255
229
229
255
255
255
255
255
229
255
229
229
229
229
255
225
225
255
255
225
223
223
223
255
255
255
255
224
210
255
195
223
148
106
99
71
107
59
50
51
51
99
96
102
100
45
44
94
101
48
38
34
37
49
98
88
81
29
30
36
8
5
29
27
14
61
77
83
80
72
72
80
117
125
120
116
121
122
126
66
118
39
9
0
25
80
23
97
107
64
73
58
26
44
58
11
0
26
0
38
0
15
5
103
79
82
70
85
38
26
26
0
3
14
0
0
0
28
0
101
61
33
60
99
95
79
26
36
37
0
86
34
37
47
63
0
21
5
0
0
78
69
17
0
102
26
52
82
0
12
66
77
0
27
0
60
86
50
84
68
26
36
10
45
78
62
2
34
52
0
119
73
130
43
26
0
19
8
37
54
66
2
38
43
82
71
20
10
13
2
7
8
60
50
0
0
0
0
2
67
99
72
114
119
72
111
124
62
52
54
54
94
84
153
115
99
145
107
210
165
221
68
186
93
164
180
152
190
214
156
155
198
183
166
188
189
198
255
252
251
202
198
255
196
191
196
192
171
221
211
179
71
108
102
92
66
89
60
66
4
41
18
92
72
59
66
133
149
139
182
175
147
226
202
195
192
192
145
182
189
219
215
220
255
225
212
249
255
189
248
255
246
217
210
228
228
255
255
255
255
229
229
255
255
255
255
255
255
229
229
229
229
229
255
255
255
255
255
255
255
227
220
255
255
255
255
229
212
195
195
201
181
195
211
91
74
83
52
30
46
95
94
90
94
87
96
96
90
36
34
46
98
45
43
99
88
29
29
20
19
18
23
28
31
63
52
67
61
65
71
90
105
106
96
95
98
56
97
94
85
70
41
31
36
7
26
83
40
32
72
60
49
58
0
33
0
0
16
61
0
82
51
114
80
36
86
142
26
58
26
31
39
54
5
0
0
21
10
105
86
119
48
104
64
4
30
12
8
19
5
59
77
49
26
1
37
0
0
96
86
26
11
24
67
26
61
30
32
25
23
56
0
28
11
0
0
55
103
102
0
0
32
62
17
49
64
80
57
26
0
0
125
22
26
31
19
18
52
36
60
71
37
32
18
31
14
0
19
11
15
15
63
52
47
45
39
45
0
77
83
30
45
104
113
108
119
62
28
44
51
122
94
110
137
107
195
163
146
167
155
111
53
135
92
237
183
151
86
182
171
178
191
158
200
207
198
255
254
229
251
205
184
209
192
194
180
181
211
217
197
154
136
73
114
119
132
83
72
34
78
134
60
72
107
127
74
198
187
162
187
159
178
143
180
197
196
176
202
176
222
214
255
255
225
211
255
189
148
255
248
130
220
222
255
255
255
255
228
255
229
229
255
255
229
229
255
255
229
229
229
229
229
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
198
215
236
199
210
174
136
80
60
43
36
42
88
29
36
35
40
41
27
27
83
91
92
46
47
50
41
29
32
22
22
77
92
74
21
12
68
68
80
95
102
117
112
104
86
95
103
51
87
83
20
13
0
0
0
26
75
24
0
0
0
0
26
47
68
78
0
54
43
26
17
79
78
83
26
26
0
26
26
101
26
12
24
0
0
0
0
18
9
101
106
72
59
81
92
24
35
17
7
15
18
14
0
0
6
4
0
19
65
0
0
0
31
4
20
66
84
65
75
0
70
61
24
48
113
104
0
18
28
0
0
0
41
26
111
36
81
79
13
41
16
0
19
0
42
5
39
5
42
0
12
58
74
35
51
31
33
52
7
1
0
55
56
59
53
50
44
53
57
80
101
97
40
105
106
99
49
52
56
45
39
34
129
138
110
208
132
160
162
162
118
119
124
93
107
109
131
158
120
162
117
160
166
169
186
202
200
203
255
248
249
165
208
189
194
177
184
181
241
219
198
131
104
145
122
120
136
107
80
124
76
13
56
130
112
118
149
161
199
201
174
155
158
175
119
138
125
179
167
220
255
218
255
255
224
220
149
137
178
255
255
255
237
216
229
255
255
255
229
229
229
229
229
229
255
229
229
229
229
229
229
229
255
255
255
227
255
255
255
255
255
255
255
255
255
255
255
251
255
227
253
206
220
227
194
217
113
129
50
48
39
38
33
28
36
30
30
20
24
91
83
87
88
92
88
26
26
78
21
75
77
80
62
11
21
66
64
64
72
78
95
95
100
99
89
87
38
65
57
45
0
0
0
0
99
45
0
0
0
0
0
121
45
26
80
20
83
70
69
57
48
90
26
87
112
26
62
54
75
73
44
0
37
62
120
41
29
0
50
85
105
66
72
84
102
47
0
0
45
0
0
21
0
0
60
0
23
34
0
1
47
114
71
55
66
0
26
65
38
96
24
50
13
6
68
44
55
0
22
0
0
5
73
48
82
73
63
20
0
105
0
25
46
37
13
51
0
55
0
1
99
119
125
71
76
79
29
48
49
38
43
48
60
57
1
47
2
58
66
37
38
31
105
97
88
39
42
35
52
58
38
106
152
107
128
167
127
186
133
107
120
115
123
100
154
119
125
190
108
115
105
162
169
176
201
190
247
252
199
191
153
167
183
202
168
189
185
242
230
206
124
125
126
138
101
93
45
47
32
36
70
77
130
146
186
166
190
183
209
127
156
109
112
115
134
155
168
176
188
214
223
220
255
225
255
155
160
255
255
255
255
255
255
255
255
255
229
229
229
229
229
229
255
255
229
229
229
229
229
229
229
255
255
227
255
255
255
255
255
255
255
223
212
218
249
255
232
245
195
202
176
180
156
189
185
113
84
55
43
64
66
48
32
31
23
20
24
29
91
82
84
86
90
86
80
82
76
76
77
70
18
66
71
30
15
74
73
76
79
91
99
95
36
92
95
78
55
48
37
35
49
31
87
87
26
0
0
0
18
61
73
4
32
138
90
80
97
149
79
91
110
119
88
63
64
82
26
70
26
99
34
62
26
118
95
129
47
33
64
26
66
12
0
25
54
0
29
17
93
0
24
0
0
73
36
0
26
84
83
99
96
92
89
65
36
36
56
57
94
81
44
0
0
18
41
72
0
81
63
30
18
77
105
44
76
63
63
0
0
92
75
0
28
1
72
0
0
15
71
73
113
138
94
39
33
15
88
54
36
38
37
48
6
1
0
1
6
9
32
51
76
40
81
82
84
86
18
38
51
62
57
141
128
179
153
81
112
104
49
125
144
141
119
113
131
141
130
137
169
138
202
180
168
239
199
249
253
249
251
181
105
143
174
192
186
194
224
243
226
200
172
104
139
130
75
63
32
55
74
117
101
90
85
54
185
204
176
181
154
122
94
93
86
133
132
73
149
175
210
224
218
255
255
255
250
252
255
255
255
255
255
255
229
229
255
255
229
229
229
229
255
255
255
255
255
255
229
229
229
229
255
255
225
225
225
255
255
255
255
207
223
198
217
181
190
176
185
192
193
196
244
187
198
214
102
121
82
54
92
40
46
25
32
19
21
29
89
87
84
84
91
95
94
42
35
79
80
76
66
64
64
64
19
16
9
21
27
27
28
41
38
30
25
76
59
42
38
32
0
0
14
102
110
72
26
0
13
0
4
54
48
39
67
74
111
96
102
68
80
55
0
40
72
31
44
26
5
0
49
36
41
26
159
67
113
40
61
32
83
63
34
0
0
79
26
62
33
29
14
9
37
11
71
83
29
26
88
78
107
45
47
98
54
54
26
40
73
60
61
27
0
12
0
0
18
70
36
99
36
40
0
84
26
13
41
32
0
90
160
64
0
57
13
60
0
18
62
12
16
91
100
42
27
100
125
110
86
67
56
0
0
3
0
0
9
15
30
52
100
76
78
72
88
80
81
87
76
81
110
135
138
165
134
92
105
70
118
95
113
235
227
242
212
136
176
147
128
154
140
214
152
232
254
238
255
202
199
201
203
142
94
135
195
184
193
169
239
225
210
124
102
85
63
111
67
77
78
128
99
131
107
62
70
176
182
223
151
109
96
67
86
80
83
139
86
151
196
212
225
218
227
227
221
255
255
255
255
225
255
255
255
229
229
255
255
229
229
255
229
229
255
255
255
229
229
255
229
229
229
229
225
225
225
225
255
225
217
255
201
219
202
193
181
183
181
188
213
192
178
251
199
200
179
112
90
137
169
154
111
19
1
35
14
81
84
95
85
89
86
97
43
43
44
33
29
29
13
59
71
25
19
18
24
67
76
27
23
23
20
21
17
1
47
44
35
0
0
0
0
26
99
26
108
63
90
20
0
40
13
76
99
46
51
89
109
153
94
58
0
18
94
102
74
3
26
0
2
26
123
26
21
0
0
49
66
114
37
21
7
45
0
0
36
26
52
0
0
7
0
2
0
0
95
96
31
63
80
141
113
54
74
40
66
91
35
26
34
0
0
32
19
23
24
0
121
110
108
33
25
0
0
4
46
21
14
67
138
91
117
4
47
0
22
0
24
89
81
25
55
118
133
146
137
123
130
130
109
88
16
1
0
0
2
22
29
44
81
91
41
22
74
100
79
78
105
79
80
89
145
83
168
182
59
111
107
109
113
90
155
214
195
192
234
212
194
164
117
153
144
206
223
237
251
253
191
199
191
193
180
121
234
229
239
185
182
226
208
125
132
110
83
134
140
145
47
127
166
122
168
72
105
30
116
184
159
170
78
135
74
91
84
105
151
216
218
255
216
224
217
229
228
255
229
222
255
255
255
255
255
255
229
229
229
255
255
255
255
229
229
255
255
229
229
229
229
255
229
229
229
225
255
255
255
225
225
209
216
198
214
220
166
193
192
186
136
131
141
238
255
173
140
102
184
93
102
102
144
169
46
10
27
0
0
88
101
85
98
41
102
41
38
37
28
26
25
1
1
11
24
15
5
12
20
17
8
3
7
3
0
40
42
42
38
35
0
0
0
0
26
36
77
20
23
80
105
0
3
27
38
30
34
89
85
93
0
87
54
0
78
41
0
41
93
26
0
0
9
0
120
93
0
0
102
26
0
0
0
0
39
0
0
48
34
72
0
48
35
17
23
0
0
47
65
0
33
111
132
76
71
64
26
39
56
55
67
0
43
26
0
37
0
13
0
67
95
23
0
0
44
0
39
26
0
0
184
156
26
61
56
12
0
20
45
32
15
80
20
62
152
171
156
155
133
134
136
87
2
6
0
0
0
17
11
10
2
21
82
91
104
97
89
101
94
88
100
40
107
134
115
88
107
175
141
113
94
57
174
118
165
171
203
153
126
186
148
111
168
152
208
223
226
194
191
186
173
199
191
196
188
190
244
224
240
238
220
155
157
180
175
123
151
98
112
60
153
92
111
129
83
48
77
99
219
211
168
100
122
85
60
88
192
199
255
206
196
220
221
255
228
229
255
255
229
255
255
255
255
255
255
229
229
229
255
255
255
255
229
229
255
255
229
229
229
229
255
255
229
229
223
255
255
223
217
209
222
206
225
171
172
102
92
159
46
0
0
38
122
151
161
213
139
141
75
95
129
120
73
118
31
16
0
48
42
58
29
108
24
95
54
31
22
28
37
16
0
9
10
9
0
3
6
3
0
0
0
41
34
0
36
44
47
0
38
38
0
55
51
36
36
39
0
0
0
8
0
0
2
0
67
23
57
33
26
65
131
50
35
93
22
2
69
26
29
1
55
4
8
69
17
0
10
51
0
62
64
17
17
62
24
16
35
91
113
76
0
36
40
6
61
55
39
137
26
1
0
82
90
26
45
72
77
54
40
59
99
58
102
115
68
75
126
103
52
61
50
29
94
4
35
10
0
0
3
56
41
60
70
12
39
39
0
8
70
31
14
19
81
140
111
139
134
127
137
66
50
15
1
48
50
56
73
83
23
20
27
80
86
41
29
9
83
87
81
84
90
83
130
129
152
106
102
57
103
147
167
159
34
137
128
95
113
140
137
137
156
135
173
142
151
225
232
240
238
185
238
223
186
197
248
249
255
251
195
223
212
124
157
110
159
141
171
110
149
121
93
189
121
59
65
163
157
87
161
217
63
62
47
106
182
172
171
199
255
255
255
255
255
255
229
227
255
229
255
255
255
255
229
255
255
229
229
229
255
255
255
229
229
255
255
255
229
229
229
255
255
255
226
220
255
255
211
205
221
210
220
166
176
155
103
122
94
96
59
30
96
63
31
42
80
146
170
88
120
127
178
100
130
4
35
78
255
149
121
59
106
137
66
53
10
66
0
0
0
53
26
26
50
0
0
31
32
31
35
34
36
33
35
0
40
0
0
42
41
0
56
58
58
0
44
38
21
18
0
58
0
48
0
84
48
82
62
60
93
56
76
42
0
0
85
0
0
48
32
79
16
20
0
6
117
0
52
54
75
84
58
47
56
117
97
31
92
108
35
26
54
16
27
42
70
59
73
53
36
53
58
84
37
93
95
42
67
46
26
26
58
35
22
43
0
0
99
26
26
143
48
120
25
24
0
49
4
5
109
127
70
78
23
7
1
0
26
58
0
34
30
107
124
122
169
167
152
138
134
55
11
0
50
3
10
16
59
0
0
26
26
11
5
20
93
81
23
23
22
34
88
87
127
113
153
92
108
144
96
126
189
169
137
148
157
71
147
200
206
161
147
188
210
197
196
235
232
233
170
212
174
189
245
248
255
229
247
223
202
222
195
123
103
158
153
137
126
109
135
93
162
82
37
100
136
157
93
109
189
78
101
64
133
252
240
161
223
255
255
255
255
255
255
255
255
229
229
255
229
255
229
227
255
255
229
229
229
229
255
229
229
255
255
229
229
229
229
255
255
255
255
224
222
255
255
207
196
207
201
181
175
111
164
19
14
50
21
32
32
36
77
63
47
0
9
46
126
78
126
141
151
111
100
0
16
174
194
180
140
63
70
97
123
5
14
12
26
0
52
0
25
0
0
39
35
0
39
37
36
39
41
40
0
34
0
0
42
39
43
59
61
65
58
50
0
0
10
24
36
36
25
6
69
20
48
126
114
70
85
65
26
35
0
0
0
32
57
57
88
30
62
11
16
168
96
0
0
37
49
71
27
53
53
61
37
26
58
50
71
92
53
68
76
44
104
26
102
84
72
9
70
48
103
97
48
53
49
40
70
92
26
54
10
38
0
18
55
77
127
41
105
26
46
31
46
49
10
62
83
53
52
83
31
45
48
68
9
29
30
56
51
64
124
106
102
122
135
122
77
37
31
0
0
0
5
81
26
25
11
3
10
19
11
65
47
43
25
33
35
105
89
127
131
105
72
119
176
182
132
144
172
167
156
169
211
82
201
210
198
195
203
164
211
212
215
217
224
227
182
206
241
234
238
255
244
237
215
173
193
211
170
165
90
146
151
116
131
65
114
143
139
64
92
119
81
30
61
98
133
167
176
149
201
246
155
144
226
220
255
255
255
255
255
255
255
229
229
229
229
255
255
255
255
229
229
229
229
255
229
229
255
255
255
229
229
229
255
255
229
255
255
219
215
248
185
187
193
151
147
153
77
136
109
32
38
34
20
30
75
71
55
47
53
27
0
73
88
124
129
155
137
126
145
0
157
159
142
161
101
76
46
99
77
47
0
56
41
0
0
34
0
0
0
0
0
0
0
0
0
0
41
0
0
34
0
0
36
38
46
49
51
47
45
0
0
0
58
55
74
37
65
16
89
57
117
68
60
77
42
90
106
87
15
3
17
78
56
110
26
29
30
72
26
49
86
29
30
0
43
5
6
11
29
26
75
0
0
118
84
65
95
92
75
70
75
49
47
0
78
91
87
74
29
40
62
26
27
126
112
80
67
69
10
32
0
91
140
79
26
24
40
33
33
26
36
0
26
26
17
31
0
0
50
30
40
42
12
14
44
72
90
96
103
103
140
99
98
28
5
55
0
0
12
34
90
38
34
85
79
64
3
61
61
13
19
17
35
25
104
121
115
71
115
113
142
154
179
190
177
177
160
178
132
51
62
204
199
211
197
205
182
178
170
220
171
166
234
195
214
177
185
242
239
233
217
178
95
126
169
121
112
87
131
124
125
139
56
70
160
68
98
73
104
81
59
155
11
89
153
204
167
200
208
169
194
214
255
255
255
255
229
255
255
255
229
229
229
229
229
255
255
255
255
255
229
229
255
255
255
229
229
229
229
229
229
255
255
229
229
255
212
217
191
164
185
174
140
184
129
81
133
100
100
42
39
42
21
70
80
51
52
0
0
0
12
95
77
131
126
136
157
107
76
119
155
151
146
130
116
66
66
60
95
0
18
8
0
0
0
0
0
0
0
0
0
0
0
46
39
38
34
0
0
40
0
0
35
0
0
39
41
0
0
41
0
27
96
133
0
76
69
106
65
61
59
84
26
32
74
67
43
44
0
26
86
21
32
60
28
32
54
57
30
107
34
96
26
90
3
42
45
26
28
59
28
98
49
74
43
92
26
70
60
34
40
48
61
82
101
31
3
0
0
23
11
54
66
174
104
26
124
1
3
0
54
87
38
55
101
48
4
0
34
28
26
119
0
0
48
44
0
62
7
25
50
82
81
135
113
106
109
116
117
169
138
91
74
41
103
49
24
19
8
22
40
25
76
74
74
42
87
56
0
0
0
11
71
93
107
68
71
78
173
171
164
176
116
174
145
119
93
140
116
80
160
195
182
94
177
197
193
130
122
162
157
173
221
233
187
147
200
244
238
171
165
116
128
160
91
90
129
53
128
95
47
35
55
87
50
90
132
73
100
70
53
93
93
169
197
212
170
230
235
251
255
255
227
229
255
229
255
255
255
229
229
229
229
255
255
255
255
255
255
229
255
255
255
229
229
229
255
255
229
229
255
255
228
229
228
255
219
203
235
249
203
184
206
145
83
79
63
38
61
39
99
75
79
62
48
52
0
11
5
0
55
71
130
115
96
109
73
86
90
137
135
139
133
57
112
88
49
57
50
0
19
18
55
1
0
0
0
0
4
0
0
0
53
40
37
33
41
45
0
40
38
0
0
0
0
0
0
0
51
45
39
49
67
0
0
50
92
62
47
0
129
27
45
80
94
32
116
0
0
25
79
42
125
55
48
46
58
65
97
104
89
88
88
34
90
82
42
42
35
76
65
84
27
67
34
29
3
57
65
56
82
37
92
56
0
0
18
18
0
72
149
146
54
37
0
90
72
68
0
18
0
0
51
71
97
0
43
71
26
77
82
17
14
33
49
40
38
0
0
18
17
94
94
76
78
111
117
183
163
86
91
74
100
45
49
34
52
6
21
19
68
57
82
89
80
94
80
75
22
74
64
36
90
56
87
87
134
132
125
142
71
109
170
174
105
152
179
175
134
158
74
111
156
202
151
148
165
165
90
112
151
132
156
165
166
159
230
189
173
160
142
212
194
100
102
139
54
51
107
118
51
60
55
71
68
103
35
13
17
70
71
86
134
134
175
255
153
191
206
213
255
224
226
255
229
255
255
255
255
255
227
227
255
255
255
229
255
225
229
224
255
255
229
229
229
255
255
229
229
229
229
255
255
229
255
255
220
255
255
191
201
143
137
113
146
59
19
98
113
57
34
57
80
6
3
0
0
0
0
0
0
69
60
62
46
55
53
56
113
63
121
119
106
0
4
68
88
63
24
27
0
0
7
0
65
0
0
0
0
0
57
45
37
0
39
40
0
0
0
47
0
0
2
0
45
45
55
46
46
0
0
0
0
19
26
73
0
32
28
11
26
60
62
113
162
131
0
0
87
50
120
0
117
51
0
181
26
29
45
45
64
4
46
46
73
91
35
59
85
76
75
68
15
30
5
0
7
26
22
23
35
0
33
4
2
32
30
0
98
141
135
28
0
0
43
49
37
95
37
26
31
47
144
26
47
0
21
26
26
98
116
82
15
43
33
64
21
0
63
37
116
125
109
148
73
80
93
84
70
70
74
57
53
64
30
32
22
80
65
93
98
104
93
97
93
88
63
15
68
82
106
62
91
144
144
147
159
133
132
82
116
101
114
150
99
88
153
163
167
150
103
67
64
164
181
106
95
118
145
130
119
111
137
180
185
213
156
165
140
191
189
146
170
101
81
56
47
136
95
87
88
95
73
52
35
54
77
80
86
94
160
178
188
170
212
174
187
209
215
255
224
226
229
229
255
255
255
227
227
255
255
255
255
255
255
255
255
229
227
255
255
229
229
229
255
255
229
229
229
229
255
255
229
227
255
255
255
255
213
201
158
214
139
147
38
54
121
68
70
115
52
61
8
4
0
0
0
0
0
0
93
64
65
46
46
44
43
46
98
55
59
101
63
25
0
0
54
0
31
18
14
0
0
0
11
30
75
34
54
23
0
40
38
41
0
0
36
41
0
0
0
0
0
43
43
45
42
45
0
0
0
0
0
28
29
43
108
21
0
0
83
121
80
115
43
0
0
0
0
37
91
37
79
43
46
35
0
59
0
54
71
6
0
0
39
35
105
101
86
0
0
57
0
73
0
0
0
0
120
85
71
4
36
0
0
26
29
127
151
95
0
65
100
38
72
61
33
13
0
61
26
137
26
73
74
0
60
0
100
104
46
22
30
29
34
70
0
64
23
102
63
145
140
161
90
86
74
86
74
67
78
72
48
60
57
43
36
127
120
114
125
109
85
89
61
41
43
62
80
88
87
82
99
79
130
168
199
163
127
150
113
110
107
126
105
122
35
133
158
165
129
127
24
152
144
88
118
116
87
120
102
134
130
121
156
144
154
132
193
193
163
100
80
76
33
39
99
94
111
94
96
119
92
93
113
132
70
84
99
87
110
121
157
201
210
192
203
216
255
255
255
255
229
229
227
227
227
255
227
255
255
255
255
228
255
255
255
255
255
255
229
229
255
228
228
227
229
229
229
255
255
229
225
255
221
255
255
255
212
191
150
137
159
110
110
65
118
94
56
23
25
11
5
0
0
44
3
44
50
6
69
66
96
39
36
87
85
84
91
45
37
104
105
101
75
7
0
19
8
67
27
0
0
17
27
51
57
48
0
0
0
38
0
0
40
33
39
40
0
0
0
41
40
41
41
41
43
41
0
1
0
0
63
0
63
118
80
0
74
188
119
48
26
113
0
14
12
15
66
59
70
84
73
75
0
23
19
37
82
26
68
0
48
57
87
79
49
36
7
0
39
26
27
0
0
0
0
111
84
72
26
98
0
0
31
119
150
107
31
61
72
38
39
41
108
123
43
14
29
0
65
41
65
64
44
100
96
62
0
0
116
62
36
1
99
84
73
33
56
83
102
124
137
131
178
154
148
105
103
38
32
46
39
53
55
23
0
6
60
85
80
7
20
23
26
26
43
60
108
127
126
101
66
75
89
130
194
128
182
103
105
123
117
179
144
177
125
164
123
132
125
127
125
146
161
136
95
68
95
106
121
103
103
132
141
149
159
94
116
173
77
74
57
23
22
55
29
49
98
103
88
81
108
92
66
112
103
83
140
145
148
136
167
181
215
189
202
255
224
255
255
229
229
227
227
227
227
227
255
255
226
255
228
227
225
225
229
229
255
255
229
255
255
255
255
255
255
255
229
229
229
255
255
255
217
213
255
209
218
121
67
141
129
101
92
59
69
21
98
50
13
6
0
0
42
54
42
47
0
68
64
45
34
34
86
83
84
87
85
26
30
66
107
139
15
11
0
46
34
7
0
0
0
32
36
28
43
6
0
0
34
36
36
36
34
39
0
0
35
43
41
39
41
46
43
42
0
0
45
0
0
33
0
0
37
0
28
54
109
0
124
74
84
50
45
35
8
30
132
60
71
89
5
0
45
0
12
29
80
53
2
99
147
75
109
31
3
0
30
26
38
83
42
69
16
10
109
97
26
26
70
13
27
95
18
154
163
0
66
0
0
46
71
120
173
69
42
0
0
0
33
49
26
55
80
85
70
39
0
49
0
35
49
34
54
95
94
104
85
64
81
88
131
126
118
128
159
93
75
74
15
3
7
26
34
44
45
74
74
44
34
28
0
6
16
25
80
103
100
95
155
154
98
84
1
91
113
170
121
101
94
107
181
186
181
174
120
72
83
109
144
109
162
177
115
48
40
27
22
55
77
78
89
111
90
80
68
99
123
73
70
84
36
29
41
41
24
90
57
0
55
81
99
139
103
132
96
146
172
202
158
174
123
140
189
255
255
255
255
255
229
255
227
227
227
227
227
255
255
225
226
228
227
255
225
229
229
229
229
255
255
255
255
229
255
255
255
255
229
255
255
255
255
255
213
217
199
213
180
71
143
100
98
112
104
85
83
75
89
66
58
0
0
40
51
41
0
35
108
65
46
81
82
83
81
84
88
83
25
41
86
71
110
4
14
46
66
51
63
36
0
33
74
71
32
27
0
31
0
34
36
36
36
33
0
0
0
41
43
43
41
43
0
0
0
41
43
42
0
0
0
0
0
82
0
94
67
26
85
123
89
39
0
36
100
8
117
109
73
15
98
0
46
9
28
46
0
0
67
50
22
26
0
47
9
5
26
26
47
88
32
70
0
0
38
74
11
65
49
88
45
57
26
118
59
62
26
0
0
84
99
54
77
137
26
0
79
43
7
6
70
63
89
44
52
64
73
53
28
52
0
26
48
48
55
71
107
117
174
113
92
141
138
134
128
95
92
101
105
83
57
10
83
82
45
27
63
60
49
95
80
79
28
13
53
99
96
103
110
127
140
171
96
107
106
150
72
114
89
123
140
110
147
41
123
101
85
108
60
88
123
83
83
63
7
54
77
53
52
127
118
3
0
25
51
29
95
107
23
63
80
69
75
114
127
60
66
88
98
48
134
136
107
73
167
109
92
165
155
144
130
168
183
255
255
255
255
255
255
255
255
227
227
227
227
226
226
224
255
226
226
222
255
227
225
226
255
255
255
255
255
255
227
255
255
223
255
255
255
255
255
213
255
255
201
218
247
167
90
133
148
91
113
100
118
97
87
53
64
57
45
38
40
47
51
46
53
66
65
107
89
89
86
84
83
89
90
40
28
97
111
141
11
5
3
58
69
53
50
48
59
26
69
26
57
0
26
37
35
40
42
43
0
0
0
0
49
40
45
42
46
40
0
0
49
45
1
0
0
0
0
32
0
0
0
51
36
45
65
44
24
0
0
45
90
34
103
55
20
107
63
13
0
37
0
46
3
0
109
0
31
44
71
26
0
2
31
26
103
57
26
31
0
106
114
70
84
16
24
22
22
35
0
90
52
38
47
51
79
50
8
96
223
26
0
37
37
0
40
54
47
69
61
72
84
38
0
26
29
33
61
51
47
52
65
117
102
158
109
135
137
138
142
130
107
87
66
78
93
115
109
85
90
128
48
8
31
28
6
23
51
56
116
140
103
136
86
124
172
143
120
58
51
66
104
0
50
73
74
95
158
146
121
77
134
149
72
123
101
123
118
76
68
33
39
55
46
40
89
27
95
56
22
24
91
109
57
78
101
75
91
103
56
43
32
68
77
47
105
89
82
121
138
129
101
127
161
171
170
195
196
193
213
242
255
255
255
223
255
255
227
227
227
227
255
255
224
224
225
255
255
223
227
222
255
255
255
223
223
255
255
225
220
255
221
255
255
255
255
255
213
211
255
255
198
255
143
99
153
142
124
148
97
140
64
73
101
11
5
46
38
40
49
57
52
4
0
115
112
98
102
101
97
91
90
94
97
14
101
84
165
18
4
10
0
1
11
53
42
56
39
58
29
43
54
58
33
32
37
41
41
0
0
44
44
0
0
44
41
46
40
51
0
49
36
48
36
43
0
0
0
26
26
46
37
83
39
59
107
102
26
17
42
45
66
81
70
0
43
79
112
0
0
26
40
24
14
109
33
40
1
33
29
22
16
18
36
77
101
77
87
82
34
74
61
101
90
43
41
45
46
0
34
17
80
26
77
92
70
0
0
58
35
26
65
111
55
76
0
0
0
55
16
53
42
0
0
0
40
60
70
12
75
115
103
67
118
149
142
138
142
137
139
114
70
101
101
56
44
48
57
71
65
32
0
0
2
18
0
91
61
108
156
158
160
137
138
144
149
140
120
113
101
112
111
87
45
41
65
150
134
86
108
100
121
74
146
169
183
114
96
87
69
70
51
107
66
37
37
51
69
61
62
55
68
70
60
47
41
46
29
11
99
72
74
85
114
95
117
119
130
68
107
129
115
91
160
134
214
179
243
186
252
255
255
255
225
212
229
227
227
227
226
255
221
221
224
255
255
255
255
255
255
255
255
219
255
255
255
255
215
222
218
218
255
217
212
210
255
255
255
255
255
210
206
186
166
164
101
66
58
117
73
119
66
0
3
0
49
43
0
0
52
47
1
57
91
116
91
90
90
91
93
91
94
42
80
95
112
153
83
12
30
7
13
0
39
49
50
29
72
66
56
58
130
48
40
0
26
0
0
0
0
41
0
0
0
0
0
35
39
44
49
46
40
47
38
0
0
0
0
42
39
26
90
0
33
0
42
26
113
29
69
73
65
34
97
69
26
47
0
0
0
25
46
94
84
0
25
48
9
41
7
15
0
64
86
138
39
113
122
33
83
99
104
32
49
0
72
35
38
66
36
0
4
114
113
59
10
42
0
61
0
14
85
44
122
23
0
0
58
73
95
8
13
0
24
26
34
0
9
89
87
87
96
116
112
163
162
142
142
126
116
119
69
12
0
87
68
57
112
79
87
52
95
73
26
51
45
60
56
38
61
90
108
115
88
100
121
152
85
121
130
116
125
119
92
130
160
96
82
187
188
73
31
39
102
107
68
77
83
114
85
84
102
104
97
14
0
57
52
40
45
57
92
108
97
83
90
83
67
102
81
103
137
159
81
95
77
65
173
157
142
93
118
127
207
170
236
215
202
212
221
255
255
220
218
226
227
227
227
226
255
227
224
211
255
255
255
255
255
223
224
221
255
255
255
255
255
217
221
255
255
211
210
209
209
208
255
255
255
252
255
205
197
139
114
113
104
116
134
62
99
47
12
16
9
0
38
35
42
0
0
55
3
21
59
91
92
42
93
41
90
91
94
78
104
70
150
119
39
32
3
3
76
0
46
38
30
76
56
45
38
77
40
51
42
11
0
0
0
0
0
38
37
0
0
0
0
42
42
44
42
36
45
48
31
0
0
0
40
0
26
26
14
26
0
58
101
82
54
28
70
119
0
82
62
104
90
81
5
0
71
85
104
24
8
24
43
26
50
11
3
26
7
2
117
35
36
118
76
56
86
50
0
33
0
132
124
46
54
73
26
92
136
0
41
0
16
9
35
0
25
127
29
50
158
122
0
53
167
62
51
50
0
12
40
27
55
72
41
81
115
84
109
119
139
157
147
134
44
38
30
86
105
113
100
78
109
71
60
81
94
99
123
90
92
38
34
74
91
3
41
20
43
111
125
83
132
99
66
72
60
73
37
43
128
123
129
85
134
143
159
115
85
101
45
33
59
85
73
93
98
111
93
57
61
82
98
118
73
76
62
71
78
79
112
53
37
98
92
92
122
90
75
77
93
100
89
94
112
125
104
166
148
149
161
213
195
215
222
214
206
206
210
225
225
227
255
255
255
255
255
255
211
219
217
255
255
255
224
224
223
255
255
255
255
255
255
255
216
255
255
204
206
208
207
255
255
255
255
255
199
165
119
125
77
110
118
38
81
38
60
45
9
1
0
0
49
43
39
38
4
2
3
58
38
41
43
40
92
89
93
95
36
57
74
153
142
63
78
4
53
68
0
37
0
0
0
26
46
44
61
93
60
61
2
0
0
0
0
0
39
36
38
0
0
0
42
39
41
42
43
50
65
37
0
0
0
38
0
46
0
0
0
0
58
109
26
26
0
0
68
56
130
81
26
85
26
60
0
7
66
49
0
64
72
48
58
44
64
4
40
36
26
4
64
0
116
86
73
0
0
41
24
6
121
75
65
26
64
59
35
26
65
108
45
0
0
57
76
162
50
26
0
0
0
2
0
0
47
46
80
0
3
26
35
0
63
149
80
69
94
137
184
176
131
74
48
67
74
118
115
84
82
6
61
51
56
47
54
84
61
78
84
0
0
17
104
124
79
135
96
96
94
155
88
148
139
102
167
144
77
69
49
60
131
139
121
140
148
130
81
137
121
90
79
97
103
100
147
132
124
128
118
124
127
6
24
64
100
82
68
83
63
17
55
94
100
0
0
119
66
126
175
94
44
76
197
187
179
198
199
154
179
229
255
221
255
255
255
243
223
255
255
255
255
255
255
255
255
255
255
255
226
211
219
255
215
222
221
222
223
223
222
255
255
218
208
204
206
255
251
250
255
203
205
204
205
195
205
188
129
150
135
91
128
77
76
164
66
32
5
30
19
5
3
51
47
48
0
0
13
0
116
35
39
37
39
88
85
90
40
35
24
37
70
153
122
56
4
2
29
61
56
42
0
56
39
48
36
29
38
46
40
76
70
47
43
0
0
0
0
0
42
43
0
0
0
0
45
31
37
46
0
0
0
0
0
0
0
0
0
0
0
15
36
59
45
90
89
53
73
49
88
26
26
48
33
4
0
7
67
36
26
79
65
73
47
44
91
32
47
41
7
52
92
94
51
43
0
0
19
14
9
100
42
72
60
63
103
86
0
38
127
127
110
0
113
113
80
32
0
0
36
41
15
0
39
38
81
82
68
12
11
3
32
63
58
114
159
170
158
166
137
142
93
93
141
136
129
91
39
41
0
14
0
0
8
47
0
52
47
0
0
52
25
84
85
39
71
98
55
69
82
66
152
161
68
138
161
97
89
80
76
126
142
151
138
150
116
99
81
109
112
119
90
124
114
133
122
130
153
134
148
85
62
35
34
67
6
77
15
17
53
58
91
128
154
119
176
154
154
107
123
145
124
156
169
198
179
180
153
209
255
213
254
255
255
255
222
193
255
255
255
255
255
255
255
249
255
220
218
255
255
217
215
214
221
220
221
221
221
219
221
255
217
209
206
202
251
249
238
252
253
202
204
203
210
212
242
150
114
163
91
103
89
46
141
109
95
92
72
65
8
64
63
0
2
1
0
13
0
110
30
41
41
43
39
83
31
32
39
23
33
114
98
92
0
0
0
38
58
47
0
0
0
0
50
43
46
26
43
48
64
64
47
40
38
42
43
46
46
39
41
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
44
40
0
0
74
29
112
0
26
72
57
125
0
0
26
72
99
46
34
26
56
70
62
13
5
110
7
0
43
18
17
51
28
17
0
5
0
7
0
41
89
0
65
101
35
75
117
71
63
67
30
133
78
89
62
58
45
0
0
27
79
0
29
11
57
138
106
72
60
0
0
2
48
63
96
82
42
164
159
167
95
89
86
146
169
131
101
113
40
44
74
91
43
18
8
30
94
51
25
51
11
13
39
36
57
84
95
110
128
135
159
163
144
111
134
117
161
112
103
172
184
109
159
164
154
94
125
175
122
140
182
180
132
120
97
133
146
149
142
76
51
91
73
62
55
72
68
33
98
144
69
50
30
88
61
105
141
139
113
123
118
209
162
115
137
255
255
254
231
188
186
253
255
255
255
255
220
255
255
255
226
255
255
255
255
255
221
219
223
255
217
216
217
223
222
223
222
221
218
217
255
255
255
206
199
194
244
218
247
248
201
204
203
201
201
242
141
143
156
118
60
90
116
115
84
61
96
82
76
66
56
1
7
3
3
2
7
0
100
73
87
39
41
90
85
83
32
46
21
30
117
160
120
0
3
41
77
0
0
0
0
0
0
0
0
0
0
0
56
36
45
48
0
0
0
40
41
41
39
40
46
0
0
0
0
36
40
42
0
0
43
36
0
0
4
7
35
54
51
57
33
44
26
15
0
107
20
46
36
72
9
71
0
88
120
13
77
71
51
5
28
24
50
26
126
2
5
44
32
7
19
35
0
0
58
0
1
38
94
59
24
45
16
0
42
108
63
66
12
0
30
64
16
65
54
31
0
0
0
0
0
32
0
15
76
69
106
60
73
5
0
0
57
107
123
150
133
145
78
51
67
38
54
121
125
122
109
34
2
65
81
43
24
0
0
3
3
0
2
17
17
38
57
61
33
80
89
154
160
153
178
180
109
104
108
189
124
183
200
154
152
126
130
130
143
145
202
142
133
184
120
118
113
131
152
152
135
163
175
147
125
91
80
37
67
112
103
151
81
99
153
66
61
73
33
30
101
92
107
74
106
190
191
190
253
222
242
232
241
209
255
255
255
255
255
231
224
255
220
226
225
225
255
255
223
220
227
227
255
218
218
220
224
223
224
223
255
255
211
196
195
254
255
249
242
239
203
192
194
200
255
203
201
199
198
150
137
144
129
83
168
158
119
106
100
138
68
66
65
9
9
12
1
3
5
1
39
94
63
30
34
34
87
87
37
37
46
56
12
65
169
139
0
11
0
77
1
1
1
0
0
32
0
0
0
2
0
33
57
28
49
39
0
0
38
35
35
41
39
47
38
0
40
45
34
36
41
37
49
48
0
0
0
0
0
59
35
36
29
0
34
66
0
42
107
55
65
111
16
0
0
98
26
74
101
121
74
81
5
108
1
33
0
30
1
0
26
82
11
0
85
61
34
75
0
36
65
26
26
54
79
39
0
32
48
54
80
58
55
0
37
0
4
30
21
11
0
16
10
27
8
23
2
79
73
59
71
104
33
59
62
43
29
81
111
70
66
73
76
68
38
54
121
106
34
39
30
54
105
31
62
11
43
4
51
0
44
46
56
83
103
126
79
78
65
74
97
155
174
194
205
160
159
149
146
202
205
146
163
169
154
143
145
154
145
144
157
152
144
126
144
183
187
124
162
156
137
99
103
99
106
118
68
75
82
108
118
104
88
129
139
149
130
146
157
155
136
125
161
151
218
255
217
255
251
253
255
255
229
255
255
223
255
226
228
228
228
228
229
255
255
255
229
226
228
222
224
255
255
255
210
215
222
225
223
218
255
255
255
238
253
246
250
246
242
233
251
251
255
253
198
192
196
181
129
130
127
151
99
114
38
154
92
121
114
93
76
58
60
5
5
1
3
49
48
0
91
23
31
31
88
90
91
42
93
54
13
52
80
150
151
68
0
59
100
58
0
0
0
0
43
0
0
0
0
0
39
36
43
53
0
40
37
40
41
0
0
38
46
0
0
47
33
37
39
41
37
43
45
46
45
42
36
0
46
46
46
46
45
36
0
5
88
31
0
0
66
0
45
26
96
0
98
98
68
26
77
95
34
47
68
35
125
34
88
0
27
42
48
12
0
0
0
0
73
47
35
76
79
44
59
0
26
35
146
170
71
23
20
0
42
24
0
20
58
76
91
82
86
74
5
27
11
11
40
62
73
60
26
62
67
35
94
105
71
78
124
111
116
59
52
104
13
0
0
0
0
50
64
75
75
99
98
76
64
113
100
99
128
156
162
85
73
89
103
178
182
197
157
163
172
174
173
167
213
217
221
180
180
186
145
150
174
153
172
163
159
158
146
146
136
125
127
137
177
126
117
91
93
97
111
123
110
106
69
121
218
156
188
219
223
228
246
198
206
205
200
204
224
214
255
255
255
255
255
255
255
255
255
255
223
255
228
228
229
229
229
227
227
227
220
227
226
227
223
255
255
255
232
245
218
223
227
202
189
168
242
251
255
255
244
213
231
255
245
255
204
251
250
199
246
196
209
155
153
138
141
67
101
79
98
116
32
39
24
20
66
58
6
8
2
3
0
0
0
44
79
86
36
40
93
96
49
102
102
5
58
112
192
148
65
7
53
71
40
0
0
0
0
43
45
0
0
0
0
0
40
46
0
0
40
34
43
0
0
0
0
0
0
42
0
0
41
38
37
38
42
36
36
36
38
43
41
0
37
38
37
48
0
0
45
38
0
13
0
0
11
53
117
66
60
0
66
43
39
65
91
18
52
55
58
115
91
7
0
30
0
55
26
0
26
0
40
130
72
9
102
57
87
50
4
26
26
171
112
79
87
4
53
105
142
58
107
97
91
76
65
44
50
26
24
5
0
0
81
29
63
28
86
76
134
113
108
78
81
124
90
72
120
30
95
76
22
0
41
14
69
66
60
59
21
53
12
71
56
9
92
80
100
127
84
124
145
184
171
187
143
162
176
175
173
167
163
170
222
224
231
180
170
216
167
170
180
236
232
156
152
213
161
151
135
180
189
195
188
138
116
101
82
101
105
134
98
168
114
137
168
126
177
175
162
172
167
166
255
255
211
255
255
255
255
255
255
255
255
255
255
255
255
227
229
228
229
229
229
229
222
255
255
220
225
224
225
255
221
255
255
191
130
255
224
216
208
229
207
188
198
209
203
197
171
184
204
194
207
255
201
198
198
245
238
255
181
150
146
130
44
156
112
68
51
33
55
32
79
66
6
5
60
2
3
49
50
48
55
40
98
98
98
98
102
56
107
67
2
52
118
136
147
57
1
0
76
44
0
0
0
0
41
40
45
0
0
0
0
0
0
43
40
40
34
39
0
0
0
0
0
0
40
36
39
42
38
35
38
41
37
35
36
40
43
43
51
35
36
36
47
45
0
0
2
51
0
0
0
49
14
62
0
36
72
26
44
58
53
75
4
4
62
80
85
87
61
74
63
26
88
34
0
0
0
48
98
45
98
85
26
4
6
0
62
26
122
116
121
60
33
57
57
62
103
116
83
69
66
65
70
0
26
85
0
7
14
41
61
64
31
39
14
81
106
125
71
67
101
86
61
102
58
45
66
24
32
87
77
96
76
37
0
0
66
33
24
67
69
92
76
92
95
68
115
128
138
153
175
146
156
160
160
162
168
176
180
174
165
158
156
150
155
160
150
165
156
160
150
147
198
153
153
148
126
125
146
132
111
91
51
44
105
118
132
189
202
219
163
170
172
178
117
121
157
181
233
255
255
255
255
255
224
215
255
255
255
255
255
225
223
227
227
225
229
229
229
229
229
255
255
255
222
223
222
220
223
221
223
210
175
123
222
216
210
192
211
240
253
208
214
210
214
201
204
209
205
203
255
255
251
248
204
233
246
166
150
159
139
55
142
161
53
56
131
37
38
81
62
62
61
58
54
56
2
6
39
54
40
45
95
92
94
96
49
51
49
58
58
119
164
155
55
51
46
26
0
0
0
0
0
0
36
44
41
47
43
0
0
0
42
44
45
40
37
0
0
0
0
0
0
41
35
41
41
37
35
39
40
36
35
35
39
40
40
51
36
38
38
45
43
0
0
0
55
0
0
0
46
42
0
0
0
54
26
26
56
69
32
0
56
118
27
121
116
78
115
99
86
109
71
0
0
0
0
116
94
128
49
27
86
12
17
0
82
85
98
124
78
0
29
66
86
28
19
0
48
62
60
55
0
1
26
0
9
50
26
35
72
26
26
15
66
95
106
59
89
162
94
92
113
45
52
32
38
39
110
117
131
104
89
44
25
15
6
23
18
50
47
80
104
117
102
98
134
121
150
154
129
150
148
156
207
169
173
213
208
204
139
133
137
126
141
153
149
138
143
163
165
147
137
136
133
135
130
129
116
108
87
90
58
77
132
62
181
102
148
175
151
141
213
146
128
167
172
230
255
255
255
217
191
254
255
222
216
255
255
222
227
225
227
227
217
229
229
229
229
255
255
254
255
219
218
255
255
255
220
255
255
255
209
221
226
255
255
255
159
205
255
255
210
220
213
211
208
255
201
201
204
251
248
249
244
255
131
136
126
157
116
135
178
116
129
43
108
86
78
58
65
66
57
53
56
4
10
0
57
39
43
95
94
42
45
48
49
108
61
6
102
150
79
59
66
40
18
0
0
0
55
0
0
0
46
46
47
0
0
0
45
46
47
50
45
41
0
0
0
0
0
0
44
38
44
38
36
35
0
0
0
33
34
35
38
37
49
38
39
39
44
41
0
39
0
0
0
0
0
0
0
0
46
26
49
33
38
43
48
7
0
0
0
0
111
29
8
55
78
78
73
60
130
33
7
130
1
54
135
34
85
47
37
52
44
0
159
156
26
38
77
36
90
91
0
3
27
53
37
40
87
0
6
3
0
74
56
26
62
26
46
48
98
63
60
114
56
80
163
95
97
112
91
65
70
70
62
78
12
61
52
19
32
17
32
39
23
9
6
30
100
88
94
111
109
142
178
162
164
177
203
205
199
200
156
154
205
205
211
188
119
115
168
166
75
91
148
147
153
106
115
197
141
120
128
116
132
127
109
114
56
76
142
137
142
196
135
138
108
118
161
192
217
180
186
212
219
227
239
249
202
158
144
191
217
195
251
255
255
255
226
226
255
255
229
229
229
255
255
255
255
216
255
255
255
255
255
255
255
255
255
255
255
255
255
250
255
255
203
193
208
209
219
209
209
207
255
252
252
252
250
249
242
247
251
112
134
156
65
82
180
106
138
126
91
104
78
76
59
61
62
57
52
55
54
8
54
62
37
42
99
95
97
97
101
49
43
19
83
74
151
61
72
67
0
12
42
0
0
1
0
0
0
45
0
0
0
0
0
43
46
44
48
40
0
0
0
0
0
0
0
44
40
44
35
0
0
0
0
0
0
36
35
39
36
46
39
39
37
44
42
41
36
0
0
0
0
0
26
32
38
39
38
85
70
44
67
21
13
0
0
0
26
117
33
56
48
136
56
120
77
63
59
51
29
43
133
144
72
7
14
24
40
0
120
61
48
24
0
73
51
22
0
7
0
112
71
83
56
154
0
41
20
0
89
49
51
26
18
45
54
119
104
109
102
121
89
64
78
86
70
59
78
112
59
29
30
13
68
85
96
99
75
35
32
77
95
86
73
86
88
111
105
103
109
74
147
175
177
178
182
174
194
191
197
204
207
212
160
129
84
117
132
147
151
148
145
110
114
170
184
151
142
187
163
170
152
133
104
158
151
200
155
198
16
56
0
0
108
84
100
125
111
150
141
121
162
165
89
134
161
191
194
203
222
227
255
255
226
226
225
255
255
229
229
255
229
255
207
220
215
255
255
255
254
255
255
229
219
214
255
255
255
255
255
202
192
206
242
255
255
222
255
255
255
255
254
251
249
249
198
204
181
217
57
105
114
117
48
119
144
112
56
148
98
74
78
63
53
54
58
51
53
52
57
62
60
28
34
44
36
88
88
40
41
38
50
75
89
132
117
71
45
48
63
46
0
40
46
38
0
0
0
0
0
0
0
0
41
0
38
0
0
0
0
0
0
0
0
0
41
38
41
32
0
0
0
37
41
0
0
0
0
0
45
40
38
35
0
0
42
0
0
0
0
0
0
52
0
40
42
47
29
42
49
26
45
0
53
63
4
74
26
70
78
142
84
67
94
111
130
72
45
26
81
148
97
75
32
138
77
70
102
95
59
74
12
1
95
30
0
13
0
97
63
9
68
118
63
0
123
120
57
60
34
0
45
83
52
66
38
112
128
119
136
137
110
117
111
60
48
37
43
68
102
61
39
69
83
85
108
83
122
117
138
129
110
103
112
60
32
35
30
134
146
126
148
111
152
150
146
100
141
120
130
133
124
97
137
142
164
197
145
128
146
136
184
161
121
149
150
86
113
101
136
132
124
122
112
123
50
86
39
80
53
89
156
155
156
141
150
152
128
114
78
90
163
111
47
67
109
90
99
155
166
224
197
213
214
211
255
255
227
226
225
222
215
218
198
200
245
242
224
211
187
245
222
226
222
207
255
255
255
255
255
255
215
214
255
255
255
255
255
255
238
243
252
204
241
190
241
183
130
71
83
54
43
115
62
85
72
55
67
113
68
9
0
0
0
0
37
46
42
0
17
58
29
35
34
40
41
37
42
43
28
40
65
81
87
72
18
0
56
49
0
40
38
43
48
45
35
0
0
0
0
0
0
38
0
39
37
44
0
0
0
0
0
39
0
0
0
37
40
37
0
0
0
45
0
0
0
41
43
39
41
40
37
0
0
0
0
0
0
0
0
0
0
0
0
0
50
33
40
83
76
31
110
26
0
13
0
50
0
95
63
26
79
125
40
67
26
5
0
148
178
35
26
62
96
88
46
88
77
87
19
0
79
35
0
13
18
18
82
45
63
41
123
53
26
38
26
34
26
58
15
0
120
41
26
65
67
91
102
120
117
92
67
75
78
58
91
29
60
36
12
20
25
88
64
75
102
116
107
130
108
106
83
63
74
56
94
72
52
115
172
169
123
179
161
94
69
67
140
49
84
152
92
130
77
114
118
164
160
110
72
154
145
112
113
67
84
128
129
150
66
107
141
81
113
74
103
81
95
77
57
82
54
103
57
74
96
150
108
116
42
27
32
47
73
108
88
126
100
74
184
243
217
255
237
255
210
224
225
227
227
222
216
206
240
239
249
244
210
161
170
229
223
220
211
255
255
255
255
255
255
255
255
255
255
219
255
254
199
193
246
253
212
242
242
237
185
171
65
100
76
56
77
71
66
72
61
93
27
5
0
0
47
44
36
42
44
0
0
38
50
30
38
29
38
90
36
42
43
17
32
45
95
69
0
16
2
31
0
0
47
0
0
46
48
38
36
34
39
0
0
0
0
43
43
0
41
41
41
0
3
0
0
0
0
42
40
40
40
43
0
0
0
0
0
0
43
0
39
0
0
0
0
0
0
0
0
0
0
0
47
0
0
0
0
52
32
37
89
0
23
77
26
0
39
0
27
0
90
50
26
137
138
55
77
0
0
30
0
50
107
77
104
109
83
48
119
109
68
13
0
63
56
0
92
152
49
115
3
83
54
38
78
60
0
0
0
26
0
12
6
71
82
50
60
70
103
95
106
116
90
87
85
122
99
148
115
94
104
20
0
18
40
120
107
105
103
120
96
56
116
126
103
90
103
113
72
56
44
129
115
141
122
112
100
78
84
164
125
64
62
75
138
142
117
121
124
152
92
124
123
111
116
90
125
116
118
136
127
48
85
82
62
59
62
34
29
50
20
83
91
116
100
115
83
72
115
66
96
94
135
144
69
25
60
87
131
80
98
117
169
164
234
246
252
222
219
224
224
216
223
255
214
239
241
233
247
253
229
187
229
220
219
217
209
255
229
255
255
215
221
220
255
255
216
195
201
255
255
251
255
224
245
244
232
196
250
122
52
80
80
60
106
86
71
59
37
0
2
51
47
47
0
0
0
0
49
48
106
100
29
34
31
89
91
91
44
42
29
52
58
94
0
0
11
10
28
0
0
47
0
0
47
49
39
34
32
41
0
0
0
0
0
0
0
40
0
0
0
0
0
0
0
0
42
44
43
42
40
37
0
44
0
0
0
0
0
38
41
0
0
39
0
0
0
0
0
0
0
39
0
0
0
0
46
33
35
109
0
68
116
26
39
59
0
12
0
150
6
38
99
109
107
85
86
31
65
0
7
49
154
42
65
127
67
126
112
0
0
0
0
89
112
51
66
166
83
0
26
59
74
0
72
41
42
23
39
0
23
108
105
60
26
22
41
101
88
110
85
121
93
96
78
50
115
124
125
133
93
32
43
48
55
42
45
84
106
109
133
133
119
91
100
104
99
64
87
108
173
104
156
76
65
132
163
160
169
108
102
134
161
130
111
155
180
151
126
102
127
161
103
74
83
146
152
57
112
104
69
141
93
123
99
110
74
57
0
29
95
124
139
134
122
101
107
58
94
78
65
99
38
87
136
94
37
80
113
172
45
176
241
161
255
247
255
255
222
213
219
222
211
255
252
255
245
255
255
255
192
226
218
218
191
170
223
255
255
255
213
218
218
212
212
210
202
204
255
247
250
251
230
241
239
245
213
214
76
78
71
64
21
76
75
74
75
66
0
2
0
0
44
41
0
0
0
2
48
116
97
82
83
89
93
93
42
43
40
38
81
142
106
62
20
57
57
47
62
43
38
40
53
51
46
36
32
35
47
45
0
0
0
0
0
0
0
0
39
0
0
0
0
38
40
42
46
0
0
0
33
32
41
0
0
41
0
0
36
0
0
39
0
0
0
0
0
0
0
0
0
47
0
0
0
0
36
37
26
74
98
130
34
67
25
0
0
15
148
0
96
81
122
98
26
52
59
113
33
0
49
71
70
26
90
80
80
48
26
7
0
0
12
127
58
26
122
61
28
57
134
157
0
23
69
0
16
14
56
107
87
73
67
40
13
45
34
119
112
51
58
36
39
92
115
122
100
106
96
112
98
33
47
38
72
69
138
128
169
157
132
115
155
97
76
139
118
67
94
157
154
170
98
101
108
153
154
147
176
185
151
113
99
119
163
150
154
138
166
154
177
154
94
61
107
101
99
61
148
83
81
77
142
143
145
78
73
31
70
87
68
159
134
63
62
71
40
110
80
142
59
58
84
111
102
61
54
74
99
197
138
185
153
230
182
192
208
220
208
255
213
212
255
255
255
251
255
255
255
219
225
208
208
134
169
224
255
255
216
213
215
216
219
214
212
201
204
199
187
201
199
187
241
238
229
209
226
146
85
37
36
32
70
94
64
72
42
11
0
0
44
39
36
0
53
0
0
5
66
39
84
83
95
46
99
99
40
33
28
128
153
73
62
17
0
56
31
50
49
49
48
48
54
40
33
31
37
51
0
42
0
0
0
0
34
40
40
44
44
37
39
44
39
41
40
45
40
41
0
0
40
40
38
39
41
0
38
34
38
0
42
0
0
0
0
0
32
47
0
35
40
0
0
0
0
40
43
74
97
34
15
64
60
26
5
0
49
0
22
72
109
82
110
94
85
0
0
139
30
0
22
63
26
0
26
26
4
0
0
0
33
85
26
62
53
111
97
148
39
91
40
0
11
25
29
0
0
0
0
0
73
35
42
0
0
81
97
157
112
80
78
70
29
64
45
110
79
84
61
75
12
22
8
32
36
68
111
122
125
125
98
32
8
117
124
122
50
110
91
94
99
122
175
189
163
137
169
169
175
150
167
148
152
143
124
139
162
107
180
171
114
88
147
147
175
175
116
126
152
147
164
210
231
203
155
157
113
161
148
135
159
74
51
29
35
66
164
96
111
55
57
45
96
135
120
133
168
222
104
120
188
229
225
234
216
145
129
218
185
218
216
255
255
255
255
212
224
218
219
214
218
207
230
213
209
220
207
195
209
212
213
209
208
211
198
198
247
245
188
183
183
173
169
118
210
165
47
57
87
51
26
57
71
57
57
53
51
0
0
44
40
40
41
50
45
0
52
117
76
93
93
96
101
52
99
29
70
118
139
177
28
10
16
86
44
39
52
39
36
45
62
52
30
36
35
37
48
45
39
0
0
0
0
39
38
0
42
0
0
42
40
39
40
35
38
36
36
0
0
0
41
36
38
45
0
0
36
40
37
0
0
0
45
0
0
47
30
0
51
34
0
0
0
0
41
53
100
63
70
50
46
26
69
47
49
149
5
0
41
90
77
105
42
34
49
19
100
74
26
0
14
40
0
88
47
2
0
0
53
84
91
34
74
68
46
44
31
17
32
51
0
12
20
3
3
91
0
27
95
61
90
6
47
28
68
112
81
87
119
96
75
60
47
39
106
82
105
97
113
103
22
29
47
58
58
150
133
74
84
75
155
144
148
120
124
170
153
91
103
177
102
152
149
92
78
103
120
120
123
155
171
167
180
177
160
155
174
186
202
134
129
145
148
131
145
141
152
172
164
167
221
222
216
222
211
166
176
161
169
117
126
33
28
12
41
32
106
124
118
131
84
97
86
152
139
195
164
192
223
200
125
203
134
180
142
253
217
222
205
218
255
255
255
215
255
221
225
224
185
217
187
255
255
255
213
205
192
209
181
237
210
205
255
255
203
254
237
198
198
195
189
193
119
163
44
78
101
68
14
10
0
52
65
58
16
0
0
0
0
41
42
51
0
51
30
125
108
85
80
78
90
94
111
85
79
71
150
72
66
0
0
16
48
34
35
53
45
40
40
53
47
0
34
0
40
45
45
0
0
0
0
41
40
36
0
0
0
0
49
42
40
41
42
0
44
40
46
41
37
37
0
41
45
46
0
40
38
40
38
45
0
39
39
0
49
34
39
43
44
0
0
0
45
50
40
74
90
30
15
107
26
26
63
0
0
68
41
30
24
70
49
0
61
48
37
47
63
0
0
48
1
14
121
10
17
115
30
97
63
50
83
101
65
0
0
79
45
5
74
53
94
9
4
110
67
26
80
86
35
43
0
7
40
34
13
69
91
100
85
66
93
73
73
57
133
138
83
53
40
80
37
36
34
86
64
48
97
81
116
164
148
72
130
148
139
113
165
127
113
103
111
101
96
119
135
164
160
105
177
163
116
179
171
100
170
203
211
158
170
149
156
204
198
206
160
220
172
165
173
236
234
179
232
177
170
197
177
172
144
137
116
94
65
61
38
0
97
137
113
78
94
105
112
157
145
136
146
185
166
238
159
155
143
215
204
255
203
203
255
255
255
255
225
203
212
211
197
254
202
203
212
255
255
255
255
255
197
180
180
220
173
164
180
168
236
205
225
247
209
177
183
126
123
108
101
79
87
3
0
67
55
9
0
11
0
0
0
0
42
0
0
2
0
46
118
106
85
93
85
94
45
88
111
102
61
18
0
38
1
5
19
0
41
35
47
41
39
41
49
42
0
0
0
0
0
0
0
0
0
0
38
40
0
0
0
0
37
46
41
38
39
41
0
0
0
0
0
40
38
0
0
42
0
0
41
41
39
37
43
0
38
39
43
45
36
41
39
44
0
0
0
49
45
37
88
94
0
10
40
63
0
0
105
2
39
114
0
28
67
17
27
50
60
65
68
62
0
3
0
0
88
49
9
0
80
19
58
96
29
25
117
144
0
34
26
93
86
41
76
71
56
26
79
74
70
57
61
55
46
0
0
55
0
69
58
117
138
119
64
56
75
50
54
99
41
75
129
138
112
52
81
121
55
80
80
93
133
123
135
139
132
157
149
146
178
151
78
185
114
90
116
158
133
141
152
112
154
194
135
103
123
177
119
214
226
164
127
157
184
150
154
228
201
208
230
182
178
183
247
241
246
239
194
169
210
185
153
141
149
138
82
60
78
54
35
125
107
122
86
88
81
179
155
137
130
170
126
113
192
175
215
217
206
251
231
160
212
255
214
191
255
255
209
251
255
157
202
200
212
255
255
255
255
255
255
254
238
252
253
228
241
255
222
242
241
223
181
203
198
174
175
151
108
92
98
65
0
2
15
0
6
0
3
0
0
0
0
0
0
41
2
0
79
111
98
71
91
81
99
115
106
136
106
46
0
0
50
23
9
15
49
49
41
42
37
36
41
45
0
0
0
0
0
0
0
37
36
37
38
0
0
0
0
0
0
37
42
39
37
38
39
37
41
0
0
0
0
0
0
0
0
0
0
42
44
39
36
41
0
0
41
42
39
38
45
40
43
44
0
0
50
41
38
100
29
32
2
18
0
12
0
86
77
5
28
29
77
71
0
27
26
90
29
135
88
118
0
26
117
80
18
0
14
105
85
26
136
107
0
19
44
35
33
66
101
95
57
0
0
0
49
26
60
61
26
65
42
0
10
6
21
10
87
39
108
129
72
54
67
7
63
19
119
132
132
68
64
78
69
83
116
98
163
100
78
52
123
157
135
152
170
99
115
144
148
106
198
148
141
183
119
84
120
86
96
143
99
140
137
138
138
105
184
166
154
147
155
208
228
225
239
170
176
177
196
249
192
248
241
253
238
248
180
137
155
137
155
150
84
95
95
61
55
55
108
49
57
69
68
88
125
157
173
232
172
144
152
199
193
233
216
241
255
172
255
195
255
255
205
227
217
206
255
222
198
192
213
255
199
215
197
255
245
179
207
255
255
240
185
169
172
216
222
205
226
224
245
255
169
243
180
101
99
133
40
8
61
0
0
2
0
0
0
0
0
40
45
45
47
0
0
59
108
98
64
35
26
61
134
150
141
71
33
0
0
0
41
1
3
41
52
49
45
36
0
40
43
0
0
0
0
42
45
45
42
40
40
0
0
0
0
0
0
0
40
41
39
37
38
0
37
37
0
0
0
0
0
0
0
0
0
0
41
47
43
36
40
0
38
43
36
37
38
45
45
43
0
0
0
45
40
43
58
130
26
3
0
0
0
51
0
34
0
35
0
147
61
29
58
28
83
50
41
53
41
0
41
65
59
0
29
0
9
110
79
120
52
87
92
0
8
62
34
25
46
24
76
18
36
26
44
52
0
0
26
96
50
84
2
12
30
64
128
138
52
135
139
108
65
35
91
76
90
41
19
54
70
35
44
71
94
112
102
148
112
153
125
144
177
160
133
121
97
187
160
110
90
133
158
133
90
178
183
100
127
91
74
172
91
96
105
131
164
189
230
208
253
234
226
227
197
206
191
249
250
195
189
192
246
231
218
162
164
159
162
121
126
67
77
99
81
83
72
143
84
51
22
82
60
148
153
170
124
150
192
165
194
124
190
198
183
203
203
212
251
197
255
213
191
255
183
250
255
203
255
190
212
187
195
201
240
243
228
255
157
227
232
227
191
193
194
203
255
245
245
250
255
237
187
96
118
105
54
64
78
52
4
4
0
0
0
0
0
0
42
43
44
41
77
69
61
93
87
37
37
34
77
109
82
98
47
75
30
58
6
0
0
42
32
38
46
50
44
0
36
44
38
39
41
41
40
45
43
43
40
38
32
0
0
0
0
0
0
45
41
41
39
39
41
39
43
37
0
0
0
0
0
0
0
0
0
0
47
47
38
43
45
40
44
0
0
0
33
43
0
0
0
0
42
39
42
42
131
49
41
0
0
7
62
66
70
0
26
13
129
86
117
77
43
146
45
52
64
28
0
113
99
34
0
26
0
11
74
48
96
37
32
35
34
34
86
89
2
64
15
0
9
31
0
26
21
0
78
26
67
82
94
0
20
22
38
118
129
148
164
168
129
130
137
102
75
89
47
31
15
50
76
69
106
101
115
127
85
93
192
170
188
171
138
141
86
162
143
118
84
134
142
144
125
136
122
132
49
142
97
124
142
113
98
164
121
130
178
210
218
210
222
230
235
178
177
201
248
245
246
243
251
183
177
202
223
146
131
80
98
96
89
136
96
58
72
82
137
134
78
84
54
175
100
149
118
89
96
189
136
187
196
234
238
255
241
249
200
123
244
255
192
197
200
195
215
135
89
255
235
255
188
184
181
244
224
217
248
212
206
236
217
163
172
185
195
208
255
252
243
252
246
212
167
114
99
65
46
75
48
6
40
0
0
0
45
0
40
43
0
43
62
113
80
57
84
83
43
18
26
82
108
89
66
61
86
2
0
50
0
0
0
0
39
44
42
47
44
36
0
0
37
43
43
36
40
39
42
42
40
34
0
0
0
0
0
0
42
37
39
0
38
40
37
42
42
0
0
0
0
39
0
39
0
0
40
0
44
37
44
45
38
0
0
0
0
36
42
42
0
0
0
41
43
41
55
47
67
103
84
34
26
78
129
22
0
41
14
87
43
76
70
69
102
87
99
62
0
42
121
74
0
0
64
24
62
81
0
165
0
21
21
48
92
56
18
35
6
0
0
41
86
26
79
112
26
67
26
76
61
59
0
26
21
36
59
128
151
148
137
134
149
148
146
43
11
0
11
18
35
77
87
73
108
163
177
175
154
136
158
93
100
104
97
140
179
120
145
105
188
154
87
28
127
138
178
213
117
161
167
84
99
94
150
169
165
136
225
238
226
249
251
185
206
204
204
253
249
247
243
253
223
174
139
172
144
150
139
71
32
67
117
101
58
37
81
118
129
73
69
88
146
89
91
120
84
59
132
208
129
255
188
228
250
181
209
119
141
243
253
179
212
204
203
255
140
195
244
247
253
190
177
187
169
219
232
199
214
229
242
225
212
225
183
183
207
241
255
253
221
241
224
203
119
101
74
42
76
42
53
57
46
45
46
48
43
43
0
43
41
88
129
106
60
30
45
52
4
25
100
92
113
11
0
68
59
44
31
0
0
0
0
46
47
33
49
49
37
0
0
0
0
44
0
0
0
44
46
44
41
0
0
0
0
0
0
0
0
0
0
0
38
36
0
0
0
0
39
44
44
0
0
0
38
41
0
0
36
43
0
0
0
44
37
42
43
46
0
0
0
0
37
50
43
31
73
28
0
61
35
26
140
85
21
0
0
0
0
78
27
0
0
66
96
94
6
0
19
83
23
14
43
173
26
68
56
37
66
18
13
59
91
93
100
9
38
9
0
0
115
29
41
104
74
46
65
29
35
135
55
89
1
64
21
34
75
109
138
121
124
138
122
94
58
49
6
0
0
44
69
125
148
182
203
181
60
58
96
131
140
173
170
170
122
102
139
159
167
161
145
151
148
125
112
138
174
109
117
151
57
83
190
132
153
106
210
176
159
252
246
190
194
186
179
204
255
253
246
242
236
232
166
148
140
144
137
130
70
42
46
54
88
67
67
97
121
101
78
18
114
93
142
110
133
112
65
176
144
151
253
169
191
250
232
201
166
214
250
255
195
219
208
203
211
163
214
220
241
240
219
206
214
203
214
210
210
225
230
232
239
181
181
184
195
215
243
193
246
223
232
228
168
162
109
87
132
25
0
52
39
46
47
44
45
48
0
0
43
19
73
121
66
107
97
50
12
0
50
82
174
65
12
37
43
41
41
0
0
0
0
40
49
41
43
42
41
0
0
0
0
0
0
0
0
0
0
49
44
39
37
0
0
0
0
0
0
0
0
34
36
0
35
41
0
0
0
0
39
42
0
38
47
44
41
0
0
39
0
0
0
45
35
41
40
45
43
0
0
0
0
42
45
36
41
28
124
0
50
26
32
120
120
82
17
0
57
0
0
0
0
0
0
108
77
11
4
18
9
59
56
52
88
30
32
66
18
77
9
35
0
14
98
137
37
29
150
26
26
162
66
94
55
79
50
107
79
28
116
106
72
46
25
100
110
57
163
95
138
174
152
140
124
86
75
0
53
14
89
104
123
159
165
165
152
147
155
120
212
180
141
161
177
166
144
160
171
141
113
118
148
154
91
94
222
255
116
121
114
163
148
242
109
121
199
148
154
179
185
188
242
197
203
205
216
191
235
235
186
237
238
163
150
117
152
144
121
84
62
97
64
51
24
69
25
34
117
58
8
83
122
121
126
55
110
58
138
121
188
126
145
204
214
211
193
228
190
218
231
208
196
255
196
164
185
229
200
198
252
207
196
197
211
188
183
212
209
193
180
233
183
192
196
195
197
187
171
213
240
249
225
199
161
107
88
135
20
6
0
3
47
46
49
46
52
50
8
38
60
63
66
71
103
71
0
0
0
91
176
89
0
59
46
39
40
40
0
0
0
0
0
48
43
44
43
0
0
34
0
0
0
0
0
0
0
0
0
41
41
43
42
0
0
0
0
0
0
41
35
36
0
0
32
0
0
0
0
0
42
40
38
39
39
43
45
0
0
0
0
0
39
39
43
40
43
0
0
39
0
0
0
0
40
48
158
74
0
0
9
34
127
63
93
0
26
98
81
0
24
24
22
0
0
64
5
29
0
0
73
116
45
0
55
0
0
45
45
12
0
57
3
3
36
10
73
26
0
0
71
30
76
138
95
181
42
26
63
78
23
73
87
140
75
122
112
127
171
91
153
62
130
101
92
85
57
50
52
74
94
134
81
110
100
137
123
157
99
135
148
176
132
123
155
147
198
94
121
96
145
159
147
117
166
158
172
119
186
216
49
143
149
152
154
216
218
198
177
181
203
198
255
255
201
206
205
255
250
235
233
221
125
107
63
65
126
96
86
112
92
63
12
61
23
29
7
0
40
23
72
103
123
102
104
55
20
107
92
65
156
183
144
229
250
222
232
181
195
209
210
232
204
174
160
178
163
234
221
215
210
195
208
173
177
174
160
178
162
193
249
212
244
255
206
211
168
218
255
245
188
195
144
139
114
161
84
35
69
48
37
0
44
57
53
57
83
72
55
57
64
56
31
0
4
0
0
0
0
0
0
36
37
56
26
0
43
49
40
0
0
0
0
43
42
43
0
0
0
0
0
34
38
0
0
0
0
0
36
0
0
0
40
38
0
0
3
5
44
36
36
0
0
0
0
0
0
0
0
43
41
39
33
38
44
41
41
0
39
36
0
0
46
44
40
0
39
0
37
38
0
0
42
45
77
106
74
0
0
0
25
49
72
92
34
27
55
45
89
107
75
0
0
0
31
8
43
0
0
86
26
101
0
0
15
32
21
44
60
14
24
12
36
35
88
50
20
0
0
57
89
140
57
43
132
54
60
0
146
0
90
86
68
4
34
38
126
119
95
108
92
72
93
97
77
58
92
49
97
70
99
62
86
96
115
112
80
81
169
165
156
118
71
117
171
80
77
98
115
113
112
124
167
151
127
106
160
190
118
185
124
137
106
228
192
234
210
167
203
247
200
215
255
255
255
255
255
226
229
216
135
104
139
85
108
104
82
44
69
86
69
20
19
0
56
20
45
29
64
30
47
102
114
42
23
32
76
99
34
199
125
168
251
217
142
204
219
131
184
190
204
219
204
95
141
136
194
249
208
203
153
202
163
172
182
138
155
188
161
153
242
249
245
197
255
236
254
249
207
181
183
129
129
157
145
86
61
97
98
86
76
6
0
28
116
119
117
60
63
58
45
22
0
0
3
0
0
0
0
3
71
29
52
46
0
0
45
38
43
0
0
37
39
39
0
0
0
0
34
53
37
37
0
0
0
0
0
0
0
0
0
0
35
32
0
1
4
0
36
38
41
0
0
0
0
0
1
0
0
42
39
41
43
43
39
41
44
34
31
39
0
0
42
41
0
42
41
0
39
34
0
39
44
55
32
28
19
8
10
38
51
38
84
39
99
88
83
61
49
55
54
0
18
43
58
6
0
0
36
26
0
9
0
63
71
18
4
3
29
66
63
0
0
69
26
79
13
1
88
30
30
40
0
137
82
90
134
24
59
58
29
55
4
21
66
93
135
133
60
106
55
71
68
60
81
45
46
54
79
100
72
107
117
102
91
98
203
170
158
161
108
139
162
103
85
124
82
142
123
116
91
189
132
81
134
148
39
168
179
120
163
251
195
223
204
183
186
208
254
214
206
199
214
255
255
255
251
215
207
189
101
118
96
41
48
52
15
83
65
85
96
47
41
90
35
73
18
11
117
51
126
92
79
76
45
58
50
76
110
157
169
216
208
154
139
220
121
106
157
176
180
190
123
181
115
151
234
191
174
156
156
196
150
181
137
171
175
142
152
200
231
223
238
255
242
255
167
206
172
159
144
186
155
84
89
128
117
135
138
142
91
81
80
116
126
121
58
67
65
17
1
0
37
0
0
0
0
0
3
49
33
47
60
0
0
0
0
45
41
29
36
38
40
44
41
0
0
33
54
40
35
0
0
0
0
0
0
0
0
0
0
0
35
38
0
0
0
0
40
0
0
0
0
0
0
0
0
0
42
0
46
0
0
40
0
0
0
0
0
0
0
41
42
41
46
43
41
0
0
0
37
41
32
74
11
19
20
110
107
106
2
65
30
12
10
119
36
26
26
52
0
5
0
0
37
0
8
0
0
61
105
0
48
45
0
56
26
115
96
76
138
0
32
113
0
0
13
70
2
34
69
63
48
92
119
73
11
10
59
16
42
58
122
78
50
58
61
29
63
109
93
63
67
47
67
69
22
65
108
82
89
101
128
180
186
173
169
157
141
178
167
136
146
135
66
101
128
103
84
175
116
93
123
203
62
134
171
111
139
144
129
156
193
216
178
190
185
209
215
201
191
206
255
242
240
186
197
131
112
145
122
107
87
41
30
32
93
81
56
67
79
72
5
78
72
100
28
43
71
105
98
63
72
53
48
91
52
68
118
178
203
222
225
191
199
175
154
152
169
174
201
172
170
134
126
194
193
189
181
184
169
189
204
199
183
142
139
213
170
206
206
227
255
234
255
221
183
164
128
137
114
103
83
171
148
130
130
129
131
134
128
67
119
115
115
78
64
46
0
0
0
45
37
0
0
0
0
0
34
55
37
0
0
0
0
0
40
39
33
39
40
44
47
42
41
43
39
53
41
35
0
0
39
0
0
42
0
0
0
0
0
0
38
40
0
0
41
44
43
0
0
0
0
0
0
37
0
0
0
0
0
0
0
0
0
0
47
49
3
48
41
42
40
46
43
40
0
0
34
38
39
45
78
47
39
26
19
67
33
0
93
99
0
11
46
26
91
0
14
0
79
12
34
79
0
14
0
32
57
13
25
0
69
0
69
99
80
75
85
155
56
72
42
0
0
12
0
0
7
68
102
109
69
64
140
0
56
71
24
38
75
96
27
27
52
27
69
26
59
106
86
99
57
82
74
31
56
78
61
107
116
122
164
127
168
149
162
155
148
127
145
107
92
85
120
97
82
140
95
161
119
214
199
115
147
158
160
101
121
155
150
124
170
195
192
160
198
246
206
204
211
207
173
224
225
138
127
107
75
49
46
15
39
27
21
24
68
45
54
52
0
49
58
11
37
108
26
5
116
107
33
68
77
72
2
33
22
35
162
213
183
117
121
141
175
158
163
172
157
179
153
187
133
171
172
189
197
172
133
144
151
159
139
151
148
133
133
144
153
152
168
197
204
234
222
187
139
129
184
103
120
162
162
152
153
89
141
132
128
125
130
133
129
115
121
61
0
1
53
0
0
44
0
40
0
0
0
44
26
44
42
0
0
0
0
0
38
38
42
43
48
50
44
39
40
46
52
41
35
35
36
0
0
44
44
37
0
0
0
0
0
0
0
46
46
44
46
42
0
0
0
0
0
0
0
0
0
42
0
38
43
0
42
0
0
44
45
53
51
42
42
38
0
0
0
0
0
41
39
38
44
80
120
114
27
25
45
38
26
79
50
43
12
25
3
29
19
0
0
33
12
0
87
62
0
0
4
21
39
0
73
26
78
114
48
8
75
4
32
64
56
52
39
0
0
4
87
118
129
118
140
37
41
99
94
99
0
5
26
80
80
79
17
26
42
29
49
81
73
126
121
160
56
50
73
51
75
72
107
137
175
178
187
148
108
98
131
169
179
161
117
73
154
123
119
171
104
65
173
166
172
61
157
154
168
139
87
135
203
174
125
172
179
201
184
182
183
205
195
200
177
205
198
204
215
175
155
94
11
52
28
9
31
23
12
0
0
0
58
55
5
9
26
22
77
99
93
39
114
86
64
83
66
18
13
36
51
88
152
124
137
114
92
168
160
169
167
161
174
166
175
176
185
163
158
126
118
144
140
166
166
118
136
144
196
144
127
154
150
152
196
162
171
140
195
186
111
185
175
110
110
163
149
143
139
87
84
80
83
128
68
75
124
116
42
0
0
55
42
33
0
0
0
0
45
46
40
47
27
50
0
0
0
0
0
0
49
50
49
51
46
47
0
36
44
48
55
51
39
37
32
46
41
45
36
35
0
0
37
36
0
0
0
0
0
39
0
0
0
0
0
0
0
0
0
0
0
0
48
41
0
47
44
0
50
41
0
0
0
0
41
0
0
0
0
0
35
31
40
44
79
112
125
83
47
63
14
80
86
46
57
0
31
0
34
5
48
15
55
0
6
65
95
58
0
26
10
5
65
42
53
108
65
82
85
88
45
101
66
0
61
42
9
55
0
0
62
2
59
76
0
70
38
80
105
70
0
46
73
21
5
11
23
29
63
179
156
120
69
108
48
0
0
68
64
76
48
67
72
96
85
176
151
84
87
205
194
143
90
88
82
152
177
87
149
152
143
98
149
159
187
133
125
81
161
120
104
209
181
147
159
192
197
250
220
189
197
183
155
186
211
198
118
148
161
130
139
114
100
35
30
4
1
45
52
5
53
1
45
0
0
4
1
21
68
24
49
43
63
41
82
6
12
24
18
21
89
106
111
133
112
100
107
121
134
159
158
168
163
166
165
179
105
115
121
124
123
117
141
147
144
192
192
186
149
159
152
156
162
234
219
196
139
112
164
177
170
159
108
105
99
147
149
142
86
77
75
80
75
124
116
57
77
56
52
0
0
58
81
31
19
9
48
43
0
0
28
50
0
0
0
0
0
0
41
40
42
43
38
41
38
34
45
39
41
52
53
48
47
42
52
39
0
0
0
0
0
0
0
0
0
0
0
0
39
0
0
0
0
0
0
0
0
44
0
0
0
0
38
42
45
42
47
0
0
0
0
0
0
42
0
0
0
0
0
0
40
47
26
104
91
85
69
115
81
9
90
112
15
43
21
8
28
19
7
8
51
114
51
0
28
60
48
27
32
107
52
104
107
90
126
26
74
31
24
26
96
71
0
28
36
16
61
0
0
39
12
30
131
13
60
0
58
84
91
45
54
61
21
4
43
82
82
129
186
169
67
65
62
48
40
38
92
70
73
40
81
72
103
164
112
131
129
133
151
168
138
140
54
113
153
139
84
210
116
108
143
120
165
142
188
113
85
80
79
131
139
181
162
131
217
224
217
254
248
243
228
220
158
150
110
113
135
178
125
70
85
75
16
0
5
0
4
18
75
70
9
0
0
0
0
0
11
5
16
46
43
48
43
90
25
5
17
32
83
106
90
90
118
134
138
108
81
90
152
157
161
162
162
159
113
117
117
116
123
117
121
132
128
124
119
195
202
205
159
155
156
158
222
208
184
181
104
110
113
156
149
102
155
150
143
140
84
78
75
73
128
124
115
105
52
84
73
74
61
13
12
36
40
81
78
66
67
66
9
0
4
0
0
0
0
0
35
38
39
39
41
34
37
36
36
0
0
37
50
53
51
48
43
49
41
0
0
0
0
0
0
45
0
0
0
0
0
0
0
0
0
43
42
39
0
0
41
38
37
41
0
0
39
43
43
0
0
0
36
43
45
46
45
43
0
0
0
0
43
39
45
69
102
65
81
59
158
106
57
88
65
10
58
30
33
0
35
4
35
92
68
121
0
0
0
46
26
0
105
86
83
109
74
128
0
53
0
64
30
0
15
83
0
47
91
68
26
61
17
141
42
64
79
26
0
95
96
47
46
61
54
57
85
53
119
102
127
117
70
43
63
70
63
64
52
83
69
75
53
128
75
119
65
128
132
137
89
135
134
161
99
165
95
201
110
161
186
126
66
165
143
199
122
187
76
171
130
105
140
95
155
196
202
179
216
199
198
227
185
188
244
216
205
152
96
153
101
136
95
50
2
17
19
12
2
39
51
48
90
70
53
50
0
0
0
14
27
32
22
36
41
52
37
46
15
23
95
45
106
136
82
113
121
119
109
97
97
144
142
144
153
157
102
101
118
116
102
117
115
115
117
120
134
165
164
170
177
199
152
149
146
150
193
181
114
107
163
101
99
95
94
149
146
83
79
127
76
72
70
123
118
58
47
47
42
39
91
78
86
20
33
28
72
81
75
78
84
81
15
0
5
0
0
0
0
31
34
41
0
40
35
0
0
0
0
0
35
49
52
0
0
42
42
45
41
40
0
0
0
0
41
47
0
0
0
0
0
0
0
42
39
39
40
41
0
41
0
0
0
0
44
39
39
43
45
47
0
38
41
43
44
43
0
0
0
39
0
46
38
43
37
103
52
36
26
140
73
13
63
0
19
0
64
47
56
24
68
39
101
83
57
1
0
29
41
0
73
78
59
71
47
49
23
24
58
48
69
63
35
23
14
103
27
52
26
57
26
61
98
57
61
27
31
36
85
57
64
55
68
76
104
132
118
104
79
121
105
18
81
119
72
75
47
97
79
64
67
10
127
101
94
129
130
151
111
113
144
192
153
132
120
197
105
107
164
100
134
153
162
108
191
100
208
192
135
167
135
92
162
182
164
202
163
213
203
223
183
189
161
171
233
174
170
165
103
102
142
85
40
73
75
22
41
111
123
129
119
56
79
54
50
0
0
0
18
31
38
28
81
102
62
90
104
36
41
94
51
33
59
56
103
124
121
107
98
91
137
135
135
152
160
103
112
117
123
98
122
113
118
112
113
174
161
164
167
173
131
141
140
136
134
183
182
105
109
160
152
98
92
89
90
86
76
76
75
78
69
118
118
60
58
51
44
43
44
93
89
97
83
35
30
74
85
32
82
39
33
32
12
26
6
0
0
0
33
36
0
0
41
0
0
0
0
0
0
0
47
49
0
0
42
38
46
44
39
0
0
0
0
0
48
0
0
0
0
0
0
0
43
37
38
42
42
45
43
40
0
37
40
0
40
38
43
45
0
0
40
0
0
0
38
0
0
48
44
46
44
41
45
59
111
66
41
64
100
75
90
97
59
36
46
46
49
61
94
65
36
26
108
38
71
26
0
32
0
97
57
53
90
13
61
73
0
153
148
96
138
34
26
0
138
26
61
98
47
57
66
82
38
28
37
47
43
50
31
64
55
52
77
170
98
118
73
121
91
82
113
142
149
154
125
81
118
83
74
77
36
66
70
97
121
150
130
122
92
112
153
135
114
102
155
87
151
105
137
114
202
132
145
110
199
164
114
139
149
139
90
75
144
83
135
146
152
198
202
216
154
158
158
193
134
103
168
100
162
83
35
28
15
3
18
30
70
136
134
128
123
92
56
50
0
0
0
22
16
85
98
92
103
101
56
45
46
54
96
58
39
70
58
91
109
107
104
94
89
128
134
130
148
153
96
111
114
100
112
134
112
114
97
99
154
155
175
180
182
168
134
137
141
180
185
134
104
107
99
97
87
136
86
83
84
128
78
129
128
120
116
57
51
49
50
43
45
44
39
44
93
41
39
44
86
96
97
34
31
24
30
27
35
20
8
3
0
43
0
40
39
40
0
0
0
0
0
0
37
47
47
42
39
47
39
46
43
39
39
0
0
0
43
50
41
0
0
0
0
37
40
42
38
42
43
41
44
39
39
40
41
40
43
41
39
40
0
0
0
0
0
38
0
0
0
0
0
0
45
41
40
43
66
10
26
26
83
28
73
167
104
68
26
78
55
39
39
26
161
91
60
65
87
68
107
119
103
87
42
120
39
94
61
31
0
29
29
11
26
82
106
34
8
45
86
64
112
59
62
58
40
36
199
122
116
53
81
57
95
71
144
133
91
97
107
121
127
131
84
77
139
81
130
123
108
48
80
23
76
16
5
14
104
99
131
117
99
95
62
151
107
113
110
106
120
101
48
159
145
142
117
99
140
150
56
119
172
176
123
123
156
110
164
128
122
108
173
174
165
177
177
141
138
166
95
106
109
147
71
55
53
40
27
48
35
14
76
96
133
132
115
62
53
0
0
0
27
24
82
95
103
76
74
44
41
46
104
124
65
147
83
82
82
149
100
97
94
144
129
125
67
133
79
76
104
105
95
103
100
97
92
89
133
127
138
152
142
122
175
172
141
139
183
175
106
106
102
100
90
133
82
88
86
81
80
79
128
121
107
105
103
101
46
46
47
47
47
46
46
99
50
46
97
96
39
99
95
36
29
37
35
25
24
48
34
69
58
58
49
37
0
0
0
0
39
0
0
0
41
42
39
48
53
37
49
51
46
48
45
0
41
42
41
39
41
0
0
41
38
44
0
0
46
45
40
0
0
0
33
43
44
45
38
42
41
46
0
0
0
0
0
0
0
38
38
0
0
34
0
39
37
35
64
35
43
57
60
57
99
120
93
29
54
99
26
86
54
52
51
22
26
116
117
143
48
64
42
63
84
18
103
31
20
48
12
53
26
74
34
10
45
58
26
66
86
43
41
74
28
30
33
120
26
26
0
78
66
120
135
97
104
44
102
67
101
109
90
59
63
63
63
65
56
106
104
38
21
17
72
67
73
66
200
123
95
87
94
113
125
137
160
83
129
123
74
168
99
68
54
140
136
179
176
132
128
179
149
82
139
138
118
124
118
129
94
86
148
119
147
142
164
136
162
104
145
78
127
57
75
68
25
66
82
56
6
75
93
129
130
115
62
52
46
0
0
12
31
24
103
96
81
70
41
91
58
117
123
61
128
128
76
128
139
142
150
92
93
138
120
121
143
135
131
154
154
147
151
95
96
92
90
135
131
81
94
137
109
157
154
120
118
169
165
153
157
99
98
140
135
136
140
133
79
79
124
121
114
55
104
102
100
47
47
47
47
47
47
46
99
48
45
85
93
41
100
89
40
31
35
88
80
28
94
88
31
73
70
66
3
0
0
33
36
0
0
0
40
41
41
37
52
53
41
43
44
43
46
0
0
43
40
37
41
41
40
0
44
41
0
39
38
0
0
0
0
35
47
39
38
39
0
0
39
40
49
43
48
0
0
0
0
0
41
38
0
0
0
0
0
37
43
4
45
82
96
26
121
74
60
49
25
14
65
28
27
41
56
48
33
120
106
110
89
26
26
127
35
48
50
79
116
33
29
24
3
0
61
145
43
0
41
36
59
36
59
44
63
85
0
0
63
36
64
0
114
117
113
103
93
98
77
74
82
85
78
82
92
62
108
114
67
58
55
52
93
75
17
3
69
75
134
164
140
102
107
142
200
100
135
119
129
76
94
37
132
73
86
88
98
197
159
139
152
169
172
80
119
119
118
134
105
104
98
122
125
203
104
124
99
157
160
141
87
121
81
123
102
66
61
44
22
48
47
58
28
42
128
130
116
62
53
47
0
4
0
37
21
106
86
84
69
90
45
55
123
128
72
131
134
134
135
141
142
145
90
92
146
125
130
148
136
134
148
151
146
147
140
94
143
143
138
136
131
90
136
94
140
141
100
97
101
102
147
102
146
143
140
135
137
136
127
128
125
118
113
53
102
101
100
98
99
99
99
49
49
47
98
98
48
43
84
39
93
101
42
42
33
30
90
84
19
81
79
29
26
24
18
13
56
41
0
37
0
0
0
0
43
41
40
52
47
46
39
39
40
44
0
0
44
38
35
43
40
40
43
46
44
36
0
0
0
0
0
48
0
0
41
36
36
44
0
39
41
51
47
51
53
48
0
45
0
0
39
41
0
0
0
37
0
83
12
0
95
78
28
122
69
67
30
108
0
27
8
26
26
5
0
86
94
121
85
46
53
110
88
3
61
36
77
74
41
4
45
7
64
83
143
68
0
26
49
72
26
120
3
84
39
23
32
73
43
57
60
87
55
107
90
116
125
131
79
78
82
73
71
74
66
65
123
128
69
55
47
89
81
78
69
56
80
147
144
139
68
110
152
127
150
126
149
105
67
61
42
80
57
89
94
69
158
89
111
115
143
170
90
130
89
108
125
112
101
103
104
201
164
172
170
72
113
93
176
78
95
83
113
98
109
72
35
38
87
100
99
40
49
129
134
116
10
57
51
2
5
5
36
26
97
83
84
25
35
112
56
74
130
133
137
88
88
90
142
142
88
139
142
91
140
140
142
136
140
141
147
144
145
86
93
141
143
139
139
135
142
137
142
136
142
89
86
92
96
146
96
138
139
137
134
133
130
123
121
119
60
56
50
47
98
99
96
99
99
99
101
49
47
47
47
45
91
44
39
92
48
53
40
32
24
91
89
80
91
89
30
28
22
15
66
59
4
0
0
0
0
0
0
42
42
49
46
38
50
39
38
39
43
42
0
43
0
38
43
41
42
40
42
0
35
0
0
0
0
0
0
45
0
0
39
0
0
0
0
0
0
0
0
42
47
45
0
0
0
0
0
0
0
0
0
0
56
44
0
37
9
26
56
127
64
31
58
58
33
44
75
15
26
48
92
50
18
14
53
82
63
0
13
4
17
57
14
18
30
77
70
75
178
119
146
91
67
118
0
61
0
56
94
47
14
2
56
95
111
44
90
42
93
134
123
137
56
119
121
84
82
74
66
58
68
70
71
118
104
45
34
82
81
81
66
64
108
111
73
81
108
84
142
116
146
113
118
73
38
87
45
103
80
52
93
77
75
153
132
103
160
99
98
81
101
149
153
159
187
42
136
132
160
168
127
143
150
162
146
164
135
130
105
113
76
29
64
67
113
61
57
62
133
136
57
7
5
0
56
51
25
30
34
31
42
36
39
32
120
121
78
125
128
77
136
135
86
134
134
138
141
90
89
96
143
140
139
140
87
91
145
147
89
91
138
88
138
137
135
138
83
139
134
88
85
132
144
146
145
141
134
83
84
76
125
121
68
63
62
58
55
50
45
43
95
95
97
97
97
99
47
47
98
98
45
39
48
43
41
46
51
88
32
18
92
93
89
37
83
26
30
76
65
71
16
13
4
2
0
0
0
0
0
41
56
43
34
48
37
35
41
45
43
40
0
0
0
41
42
42
37
0
0
0
38
38
40
0
0
0
0
0
37
40
37
48
0
0
0
0
0
36
0
0
0
0
41
37
0
0
0
0
0
0
0
38
0
0
77
11
16
43
65
86
92
42
18
57
38
39
48
73
88
76
30
74
63
92
69
17
0
0
0
42
71
47
11
26
25
40
31
99
96
89
77
66
131
13
0
48
56
82
21
8
11
68
54
86
63
122
145
161
144
158
139
118
109
141
131
76
58
115
72
128
124
72
115
113
59
38
80
81
67
61
0
0
76
35
68
98
95
94
141
139
117
40
40
115
94
156
92
58
87
98
87
141
121
142
142
144
90
83
55
76
168
121
151
94
90
70
147
105
127
77
42
37
56
59
61
63
88
127
131
56
40
66
26
136
147
130
131
130
121
70
55
55
52
72
13
43
29
89
97
102
104
98
52
111
51
58
128
78
89
137
82
88
82
84
85
84
84
88
135
140
93
92
90
146
93
95
144
143
139
131
131
128
128
130
76
69
66
68
70
70
64
77
124
130
79
81
76
69
67
65
62
64
57
109
108
106
51
47
46
100
100
99
99
101
50
50
107
106
105
53
47
41
45
51
47
39
33
39
16
85
86
96
69
25
30
72
70
19
24
24
23
19
19
10
1
56
0
0
45
55
45
40
0
43
36
44
0
44
0
0
0
0
43
42
0
0
0
0
0
38
39
38
40
0
0
43
0
0
0
0
0
0
0
0
42
0
40
49
0
0
0
39
41
0
0
0
0
0
0
0
11
53
6
80
88
0
0
15
66
105
54
73
24
21
26
60
26
0
0
0
59
52
27
55
5
0
9
14
0
190
0
0
0
29
50
7
60
70
64
69
79
0
0
0
43
50
63
7
20
63
63
77
128
131
105
160
144
153
100
112
87
89
140
132
136
124
136
79
70
69
123
57
71
62
83
81
89
82
45
39
60
55
56
68
95
78
96
135
176
152
69
60
76
78
125
104
137
75
71
65
64
131
141
137
145
103
59
130
139
152
122
160
144
79
56
71
105
82
33
43
24
51
42
87
85
134
137
143
25
78
82
82
130
134
131
130
126
113
53
60
59
56
85
29
38
86
84
114
91
108
92
67
109
117
67
133
74
131
135
78
85
79
82
79
77
129
138
134
141
88
89
95
98
94
95
89
141
138
129
128
124
72
78
76
67
111
114
69
68
57
64
113
69
76
84
72
62
67
68
116
115
60
59
109
106
103
102
101
102
102
100
100
102
103
103
110
109
111
109
104
100
98
49
48
101
90
95
68
84
84
83
63
78
77
79
29
35
39
39
35
30
29
15
1
68
53
0
53
55
42
41
41
52
45
0
0
0
0
0
0
0
0
0
0
0
0
0
0
41
41
39
39
0
0
40
0
0
1
0
0
0
0
0
0
0
0
0
45
45
39
39
47
0
44
42
38
0
0
0
10
42
76
78
57
73
104
10
35
101
110
117
61
27
30
48
11
0
12
15
15
96
81
70
48
11
0
0
26
154
14
18
33
42
72
93
0
114
30
27
37
71
2
4
59
75
87
108
88
91
132
164
163
158
116
119
150
177
112
111
139
147
87
133
136
86
82
74
61
76
70
72
63
119
37
45
32
5
11
71
51
122
72
66
87
84
87
162
171
148
48
66
90
105
84
109
146
103
192
69
68
141
75
100
100
71
122
121
152
75
159
146
109
100
25
88
156
98
35
72
11
82
42
106
85
115
123
95
112
69
46
123
54
122
67
127
97
68
49
51
47
61
78
43
46
43
76
108
93
106
95
98
106
110
66
73
128
136
131
132
137
138
85
91
95
95
91
153
151
94
97
100
77
76
74
69
64
119
124
117
117
119
67
66
70
120
116
67
61
69
118
101
82
91
58
125
65
62
113
111
109
109
63
111
55
53
51
52
53
103
105
106
109
59
112
62
50
111
116
105
30
44
53
101
86
27
81
63
75
74
81
69
78
74
38
36
35
30
24
27
37
32
25
0
20
12
6
57
42
36
42
50
0
0
36
0
0
0
41
40
38
37
0
0
6
4
0
0
0
42
0
0
45
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
43
43
44
41
38
0
0
75
26
112
94
105
76
78
34
96
109
89
78
56
0
59
64
0
0
15
0
9
87
56
81
93
26
40
59
74
23
56
64
32
30
26
70
98
98
56
70
78
49
0
0
7
82
92
115
135
144
167
173
165
158
152
152
147
93
149
156
154
154
142
128
132
91
64
67
61
78
73
72
66
69
44
43
82
91
73
50
14
98
83
69
57
92
68
177
60
57
38
50
52
95
92
86
144
139
103
67
135
179
56
116
30
107
153
113
143
78
27
70
147
140
105
126
132
102
94
50
25
86
99
137
43
75
51
91
123
28
39
100
21
116
145
103
62
0
7
38
56
51
103
100
53
44
72
105
108
97
115
101
115
116
77
78
134
134
83
82
84
142
144
86
92
146
94
148
147
95
147
147
73
73
125
122
67
119
124
120
117
61
60
113
64
115
62
69
117
123
119
119
90
101
114
135
64
62
113
112
110
110
63
59
56
106
105
54
55
53
106
107
58
57
61
58
53
112
113
110
50
34
29
35
99
81
80
59
72
74
77
66
75
27
28
26
25
78
25
30
101
105
8
86
29
10
52
54
43
34
0
0
0
0
40
0
0
0
0
38
39
39
40
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
46
0
0
0
0
0
0
0
0
0
0
43
42
0
41
39
0
0
84
59
64
17
26
13
0
50
125
167
52
50
85
34
26
12
11
0
32
0
45
12
73
73
97
62
26
72
148
0
22
10
0
0
80
51
78
54
89
3
3
0
16
19
27
35
48
83
86
101
117
174
164
152
154
105
103
108
109
126
142
146
131
129
79
87
110
111
117
134
130
126
53
62
57
53
98
88
75
82
65
62
25
44
47
74
57
76
88
115
74
35
50
101
110
96
124
93
56
82
66
174
113
101
96
104
77
80
133
51
56
55
60
124
120
157
100
111
104
79
64
103
77
130
108
88
94
115
112
54
81
109
0
39
46
65
51
0
2
0
21
64
111
105
53
48
73
104
117
94
115
109
119
64
80
80
85
81
137
135
81
143
146
86
91
145
145
142
91
147
144
141
70
71
124
123
69
120
120
68
64
56
62
65
68
69
70
71
121
125
119
143
144
165
77
90
63
113
113
112
59
60
64
61
58
109
108
57
58
56
56
57
60
59
62
54
58
63
111
115
57
46
96
96
46
86
83
60
74
79
89
70
71
20
23
19
67
73
26
24
73
85
18
33
88
59
50
55
0
0
0
0
0
0
0
0
0
0
0
41
42
39
41
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
49
0
0
0
0
0
0
37
40
36
42
42
42
44
41
39
0
0
63
68
76
66
0
7
114
0
147
55
105
62
91
83
0
17
66
0
0
0
18
70
80
63
60
55
26
89
105
32
85
78
52
63
72
55
83
85
57
12
5
18
32
52
43
85
105
106
120
113
113
166
103
98
87
90
70
74
72
128
125
115
63
131
124
121
64
112
135
142
138
127
55
67
68
99
42
105
70
55
74
65
38
18
57
52
85
66
47
37
39
62
46
117
113
99
44
55
85
129
83
139
107
79
74
93
61
148
128
108
44
52
58
51
91
109
87
120
101
65
74
62
104
111
114
48
143
96
79
122
32
58
46
0
5
55
0
1
2
23
31
49
46
45
42
65
101
106
49
63
94
124
115
76
70
87
69
83
136
135
84
86
139
89
87
86
138
138
138
136
134
81
73
73
124
120
117
116
50
54
56
61
58
63
65
68
71
71
123
124
118
159
109
160
126
70
63
113
61
114
61
63
115
116
115
61
62
63
63
62
62
63
63
61
62
64
55
56
57
101
44
39
96
90
89
34
29
23
81
86
87
31
86
92
89
82
9
7
13
36
73
68
43
96
92
20
17
23
16
8
0
0
0
0
0
0
0
42
0
0
47
44
44
43
48
0
49
40
0
0
2
0
0
0
0
0
0
0
48
48
45
0
45
50
37
45
42
38
37
40
41
45
40
39
41
0
0
0
0
58
11
8
63
0
0
0
72
141
26
86
43
54
64
0
13
54
26
0
0
0
54
76
49
45
39
2
79
85
0
65
65
28
60
54
55
64
54
45
71
69
94
56
77
112
98
116
113
104
98
162
155
97
86
71
78
74
83
72
117
102
104
77
65
114
121
98
112
138
138
84
73
49
67
70
56
104
93
64
86
78
80
60
31
31
59
63
51
85
44
66
38
46
107
116
80
123
78
50
102
64
119
156
81
57
144
133
160
92
109
47
101
108
91
96
86
106
62
91
72
65
58
61
50
54
73
67
91
71
75
53
23
68
0
58
55
44
2
21
15
27
35
62
42
45
123
108
106
53
68
117
124
125
140
128
144
70
83
87
89
91
89
140
136
83
84
140
85
83
131
131
132
73
72
70
64
112
114
46
49
103
66
63
66
69
70
71
123
122
122
119
142
49
92
176
62
65
63
63
115
113
116
114
117
117
115
63
64
65
63
117
118
64
61
60
64
107
53
53
43
40
33
40
34
88
82
22
27
80
83
91
84
89
92
91
85
64
5
63
20
30
55
41
49
46
35
28
28
16
5
0
0
0
0
40
0
0
0
39
40
0
0
49
40
47
52
63
49
44
45
50
0
47
42
41
0
0
0
43
48
47
43
0
48
40
48
47
40
0
0
0
0
0
0
0
0
0
0
0
47
0
38
34
0
0
0
87
50
26
81
54
86
95
48
0
0
73
9
0
3
0
69
43
75
93
66
48
27
39
0
44
26
54
34
7
0
32
72
78
89
118
146
112
97
100
104
112
113
102
97
125
127
74
133
135
118
89
99
121
111
118
128
109
110
116
88
106
134
129
130
122
47
121
123
66
62
34
95
102
66
71
74
68
80
93
76
39
61
45
72
26
99
98
53
86
75
41
69
72
71
36
156
139
113
143
141
136
108
114
75
95
107
100
101
86
116
51
87
31
2
73
110
97
120
140
46
35
109
126
57
25
45
48
43
58
61
26
40
28
34
45
60
45
52
120
104
115
115
68
127
123
132
88
138
142
81
85
89
90
91
89
88
133
80
80
137
79
79
77
129
130
68
67
117
60
55
61
101
102
49
119
70
71
75
74
72
124
123
70
123
119
59
127
152
64
68
65
64
115
113
119
116
120
69
119
118
67
68
118
117
119
116
61
60
110
106
102
99
43
39
91
50
39
85
84
69
28
79
82
100
81
29
81
89
85
72
68
74
89
62
40
111
48
47
97
35
32
20
8
53
37
0
48
34
40
0
0
44
43
0
0
47
39
41
47
61
46
40
43
43
0
48
42
42
0
0
0
0
0
47
45
0
42
41
0
0
0
0
0
0
35
0
0
0
0
0
0
0
43
27
11
72
69
0
0
33
26
83
70
56
70
93
43
11
28
20
25
0
0
0
0
4
98
121
42
56
30
167
0
0
49
59
33
12
43
104
103
92
116
122
135
104
122
110
151
154
146
134
74
108
123
138
126
113
89
43
109
103
49
74
61
59
113
106
39
100
129
122
125
121
64
84
119
108
48
52
100
83
74
74
23
22
90
106
76
86
47
61
103
103
58
95
74
93
62
30
78
55
78
40
72
42
133
128
166
116
97
107
83
93
77
98
104
95
66
95
40
43
0
79
38
29
60
56
58
100
96
129
54
28
55
61
60
73
29
47
54
57
49
74
42
49
53
112
94
126
69
65
121
126
134
128
90
85
92
88
86
138
137
139
139
135
78
77
131
75
75
76
76
128
63
63
113
57
53
61
53
52
48
65
67
66
70
68
65
73
72
71
126
52
126
116
128
122
70
66
65
115
113
120
64
68
122
120
119
120
69
119
118
119
64
59
60
103
106
101
93
98
97
88
42
33
88
38
69
81
30
84
95
71
75
85
88
88
80
84
91
108
102
43
38
35
98
101
40
37
81
17
7
38
0
0
31
46
47
34
53
49
48
0
0
40
35
38
51
34
37
42
38
50
48
43
45
0
40
45
0
0
44
44
41
37
0
0
0
0
44
41
43
43
0
0
0
0
0
0
0
0
41
55
49
61
26
0
40
71
0
63
65
52
55
89
79
63
51
68
0
14
12
0
0
0
34
68
52
49
65
39
55
19
21
67
64
93
49
143
149
145
138
166
169
121
163
156
141
122
109
125
120
145
125
102
97
98
95
115
86
122
64
102
62
51
63
40
58
117
120
123
119
122
86
90
51
97
111
94
85
44
25
40
60
90
78
102
65
46
60
32
104
54
44
94
88
157
106
133
107
99
58
100
36
63
104
137
107
110
74
85
115
89
87
92
50
41
37
57
75
76
15
49
32
39
57
105
92
82
49
55
75
48
84
50
100
111
119
65
56
117
108
63
106
61
102
119
124
122
62
56
133
84
85
82
83
137
143
140
141
136
86
134
128
127
75
126
76
75
74
72
70
64
48
51
60
38
96
53
58
60
62
68
70
70
65
64
119
73
116
122
67
68
123
125
123
117
63
115
115
114
118
66
67
67
119
120
68
68
116
65
64
114
54
57
109
98
98
90
45
94
96
91
93
34
37
23
85
83
84
91
83
84
15
80
79
79
88
46
111
114
109
49
42
86
39
50
47
83
60
57
32
0
0
35
0
46
39
50
49
45
42
0
0
40
42
41
0
0
42
44
43
49
44
40
0
42
49
0
0
47
42
41
39
0
0
0
0
43
39
0
0
0
38
36
0
0
0
0
139
26
54
0
41
35
0
26
106
37
50
87
79
88
44
52
76
99
36
58
4
6
0
0
0
0
0
43
60
66
54
55
56
32
91
104
108
105
105
163
160
150
113
149
157
154
145
129
129
137
72
80
42
73
107
104
97
104
103
44
116
108
47
61
111
54
48
100
123
73
123
115
75
90
76
58
60
107
97
93
46
42
25
29
72
63
91
43
78
121
50
44
116
114
97
92
148
94
117
122
36
100
132
54
150
119
121
123
125
108
139
128
68
87
103
43
47
42
107
105
64
84
74
111
94
145
103
92
79
92
111
88
48
89
24
58
64
71
121
106
62
111
115
112
116
106
117
117
120
115
64
86
140
85
81
81
84
140
132
134
135
139
84
128
128
127
75
127
75
74
122
119
53
45
46
55
53
40
99
111
65
70
69
69
121
70
71
71
116
110
111
72
73
124
123
119
117
115
115
115
114
119
67
67
67
67
68
69
68
65
123
119
64
61
59
103
97
100
95
92
23
86
90
39
24
30
21
37
77
76
88
78
73
24
34
76
61
21
82
105
108
105
100
89
91
78
83
38
96
71
67
41
48
0
0
0
0
0
48
48
47
42
39
41
40
0
0
0
43
39
47
0
0
44
44
47
0
51
46
42
0
42
42
42
0
0
0
0
0
38
41
43
39
39
39
0
0
0
0
0
19
49
0
38
107
22
52
108
103
43
117
47
58
100
44
77
78
114
45
0
3
39
19
14
18
3
53
36
52
55
55
81
26
35
62
87
157
158
161
165
167
163
114
151
123
119
120
150
141
56
75
71
71
50
52
48
51
28
61
52
46
38
92
113
29
102
89
115
102
102
117
81
78
38
75
56
99
107
107
52
35
47
30
84
84
30
66
44
59
107
94
60
122
93
114
54
44
44
110
23
68
58
87
123
138
138
121
115
89
78
102
77
94
96
23
54
30
23
64
73
83
91
29
48
133
93
63
61
82
89
91
69
109
63
66
65
66
53
108
54
119
112
121
110
104
103
51
123
122
132
138
135
83
82
79
80
82
79
130
129
127
126
73
75
72
125
129
126
120
57
48
37
88
85
87
50
56
99
110
66
70
71
70
69
72
125
114
59
118
129
72
72
72
126
125
67
117
117
65
64
71
70
70
70
121
124
123
122
120
121
115
63
53
52
48
96
93
89
89
100
101
82
24
25
39
32
27
15
20
76
77
10
46
74
72
88
50
48
45
104
108
115
45
88
63
47
48
2
6
7
47
46
38
0
0
0
0
0
0
43
41
40
40
35
0
0
0
0
0
0
0
0
54
43
40
35
50
50
0
0
0
34
39
0
0
0
0
0
40
38
0
40
41
42
39
0
0
0
34
0
0
0
35
23
133
66
50
53
19
116
112
26
73
10
0
21
76
69
59
0
6
8
0
5
0
10
37
59
56
55
29
46
55
78
90
91
156
153
153
152
146
85
126
104
100
102
154
130
65
62
93
64
53
56
45
39
33
58
51
100
40
86
110
34
46
87
110
95
95
112
135
61
37
77
39
46
111
106
53
57
34
53
69
70
68
1
14
0
11
55
46
57
94
131
45
94
86
103
51
55
95
133
131
69
113
146
53
103
93
96
80
76
45
29
58
31
25
53
13
93
10
66
41
54
83
65
69
92
21
76
82
52
56
59
59
56
46
56
105
116
58
116
103
100
101
57
66
120
132
138
137
135
81
79
80
79
75
127
125
122
70
73
126
71
124
130
125
112
49
40
32
30
30
87
92
117
105
113
67
69
71
72
70
67
117
125
121
119
121
125
73
72
74
73
119
117
65
65
64
71
70
69
68
68
123
122
120
68
59
57
65
53
56
47
94
81
72
86
73
81
6
0
11
41
41
31
28
82
67
81
69
40
51
93
85
85
93
95
103
109
119
52
102
79
3
0
45
0
0
44
41
0
43
0
0
0
0
0
0
0
43
43
37
37
43
0
0
1
0
0
0
53
34
35
34
46
48
47
0
0
0
0
41
0
0
43
46
48
0
0
39
40
41
39
0
0
0
32
0
0
19
15
25
42
74
120
57
45
62
63
62
89
0
15
3
0
24
68
64
41
0
13
0
44
0
11
6
62
64
34
67
68
83
106
111
172
156
94
129
111
128
136
127
126
129
121
98
50
81
91
59
63
115
89
35
44
103
103
99
98
92
107
99
44
32
106
44
43
101
79
39
48
65
34
51
113
105
109
55
44
49
29
25
77
4
9
19
0
64
37
52
49
136
98
81
80
100
109
30
133
123
66
85
91
120
45
58
88
46
52
22
20
47
63
44
44
55
49
79
5
80
47
57
78
72
77
97
16
11
31
36
48
54
50
45
48
52
105
111
61
59
98
103
103
65
60
117
132
139
144
135
82
79
78
76
69
123
126
124
72
74
73
73
124
129
121
104
44
38
28
28
32
96
96
117
112
118
122
72
72
125
123
64
62
67
121
119
124
131
78
73
123
121
120
118
66
66
65
69
69
67
66
118
70
68
66
66
61
55
62
43
45
36
22
0
33
41
28
0
0
0
0
22
26
29
91
80
67
84
78
34
50
94
94
91
99
99
105
108
117
56
107
35
9
54
50
0
0
0
37
0
43
36
0
0
0
0
0
0
44
49
43
41
41
0
0
2
0
45
0
0
0
34
37
42
44
0
0
40
0
40
39
0
50
49
48
54
48
36
0
0
40
41
0
0
0
92
0
51
83
38
20
0
0
114
37
37
77
78
3
8
68
25
32
29
7
12
17
55
18
65
70
42
42
0
16
24
80
100
76
73
70
85
92
75
80
136
146
144
132
138
133
83
94
46
49
107
88
40
63
116
113
84
45
54
45
49
90
98
51
52
109
42
34
43
88
90
91
118
66
58
38
42
57
112
106
115
99
58
37
46
90
26
5
0
27
14
55
35
53
55
122
97
77
36
82
109
42
124
105
49
91
76
56
37
53
108
37
100
29
27
60
57
49
101
54
69
82
79
55
54
114
83
71
75
22
20
7
25
25
42
50
40
35
54
46
52
104
117
105
90
106
106
62
115
120
130
137
146
136
133
79
128
125
121
122
125
122
123
74
71
73
122
122
112
93
93
40
32
35
40
105
110
117
119
123
73
74
73
124
123
120
67
61
116
120
134
131
130
124
122
120
121
67
67
67
66
70
69
67
66
65
70
68
66
66
127
58
45
9
50
0
0
28
33
34
26
31
46
44
0
1
0
11
98
73
83
86
89
38
38
85
104
54
56
58
113
112
114
111
53
43
74
64
54
4
0
44
38
0
0
0
0
0
0
0
0
0
0
46
44
44
0
0
41
0
0
42
0
0
34
36
0
0
0
0
46
44
50
41
0
0
0
0
0
0
43
42
0
0
40
43
0
0
0
63
3
5
10
47
0
0
66
0
0
83
54
13
0
22
58
69
113
96
0
45
56
87
43
43
30
12
45
0
47
40
86
105
76
82
145
96
91
83
140
140
140
128
144
136
120
73
94
72
66
108
126
27
71
58
103
83
57
59
42
48
30
93
110
47
111
40
38
81
73
80
87
104
48
113
13
50
62
110
108
68
64
45
103
35
24
0
2
4
77
64
90
35
58
55
105
91
81
103
58
82
109
91
106
42
112
70
70
100
5
82
46
102
94
77
117
48
45
40
49
36
75
32
47
53
106
92
63
70
0
24
6
19
22
88
99
30
78
108
40
51
48
121
102
32
106
106
54
72
74
130
134
142
135
134
130
129
125
125
123
73
64
119
126
69
73
69
116
105
85
40
42
40
44
47
108
121
120
126
74
72
72
74
124
122
125
126
73
64
66
129
127
126
122
124
72
69
67
67
67
66
121
120
66
65
64
69
67
64
117
37
17
67
56
43
39
0
35
52
37
41
26
0
0
0
0
0
0
47
67
101
38
47
47
53
89
91
97
99
70
71
117
114
114
107
111
95
28
6
4
50
44
40
0
0
0
0
0
0
0
0
0
0
0
42
45
47
41
47
37
52
41
0
0
0
0
0
0
0
45
49
47
47
40
0
0
0
0
0
39
34
47
43
41
40
46
48
0
0
51
53
60
0
0
16
132
43
70
94
8
25
21
4
35
40
116
67
26
34
36
35
86
9
74
0
61
58
29
45
60
75
139
138
138
138
91
95
135
138
144
151
134
106
140
128
68
69
60
52
112
108
39
71
101
65
79
109
49
52
98
48
46
50
40
35
94
71
65
75
79
88
66
105
50
110
78
109
106
113
105
59
61
37
13
7
47
52
51
58
19
17
78
97
31
103
29
53
36
25
97
106
128
99
83
47
57
58
91
71
39
92
100
82
96
106
102
127
99
35
98
98
87
33
77
79
22
77
82
73
20
21
56
71
87
93
97
114
113
106
40
41
94
100
35
100
109
59
68
128
130
83
77
76
130
77
77
79
78
130
74
66
121
70
58
61
51
33
40
79
89
86
42
103
108
115
123
73
74
73
73
76
73
123
69
70
122
124
76
77
130
127
128
128
73
72
70
69
67
69
66
120
113
104
103
53
61
59
53
67
4
48
56
42
39
41
46
48
0
0
0
0
0
43
44
35
0
0
5
75
37
46
39
25
80
94
91
112
102
71
54
103
48
110
109
114
103
45
24
15
7
2
53
64
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
44
0
36
43
42
0
0
0
0
41
48
48
0
0
0
0
0
0
42
41
0
0
43
42
46
44
0
0
0
53
92
53
126
26
108
114
21
44
74
13
34
91
0
20
61
120
58
0
61
29
21
12
7
26
39
35
52
25
30
55
70
86
104
100
140
137
87
100
136
89
138
116
118
134
61
56
79
56
56
110
107
43
113
50
60
35
60
51
40
103
52
37
48
43
28
75
60
62
70
79
73
78
113
75
88
79
109
59
63
99
117
48
27
4
6
49
52
52
62
24
69
79
95
86
47
43
58
42
23
60
99
105
80
121
81
66
25
52
59
73
104
105
89
95
101
101
109
100
76
108
92
93
83
106
78
51
22
41
79
73
78
56
79
75
85
102
110
106
97
93
87
98
95
98
96
110
79
63
78
83
85
81
75
77
77
77
132
130
77
76
63
62
66
55
57
44
27
35
32
94
95
50
111
115
119
123
71
78
71
69
74
73
127
74
69
120
71
128
130
132
130
131
78
73
74
74
71
69
68
61
118
111
99
102
109
114
110
92
0
46
47
46
35
36
43
45
49
54
0
0
0
39
40
35
34
34
37
39
47
75
93
84
72
80
88
105
68
67
63
57
51
60
100
109
109
93
34
48
31
18
4
52
10
17
0
0
0
0
47
0
0
0
0
0
38
0
0
0
0
0
0
36
0
44
42
0
0
0
45
51
0
0
0
0
0
0
0
0
0
0
0
44
44
48
44
45
0
0
77
61
49
84
37
121
3
41
56
5
11
0
16
4
7
117
74
52
0
58
30
67
0
10
36
28
54
88
125
74
88
102
102
93
94
150
150
149
95
76
76
73
115
150
115
56
58
69
55
111
54
56
51
61
40
40
48
107
51
30
51
54
38
42
88
65
62
59
61
61
20
6
45
44
74
58
65
104
109
106
104
51
36
64
3
55
51
57
59
70
80
73
79
92
95
102
57
50
38
29
82
96
102
73
131
80
61
35
76
73
81
100
92
82
91
95
97
91
62
85
105
95
38
39
97
100
31
30
38
31
75
84
60
82
74
87
93
101
98
93
100
81
98
92
98
106
121
140
67
82
85
85
84
74
77
77
129
132
131
76
128
65
60
63
48
50
40
35
39
39
99
55
58
117
120
122
121
120
126
71
69
70
73
126
73
121
119
68
125
128
130
132
133
79
73
74
125
120
70
61
106
114
53
102
57
60
52
39
14
0
49
47
38
46
43
48
45
50
58
0
0
34
38
39
34
0
0
0
35
36
56
87
85
79
88
86
107
68
78
60
55
52
109
104
105
93
31
22
38
45
33
11
0
0
17
12
0
43
0
47
0
0
0
0
0
43
43
0
0
0
0
0
39
0
0
0
44
39
42
0
47
0
0
0
0
0
0
0
0
0
45
0
0
40
45
39
39
0
0
106
82
83
71
46
143
49
69
34
68
19
24
30
24
0
99
40
54
32
88
92
86
0
0
0
11
92
92
91
77
92
103
154
153
102
150
136
76
62
73
79
84
85
87
55
76
122
49
110
113
102
110
109
59
40
33
104
98
101
78
46
53
58
41
29
6
16
12
63
4
19
8
32
47
38
21
78
102
102
101
58
26
26
0
1
0
51
60
13
23
77
29
77
84
94
98
60
34
29
38
86
121
87
73
108
89
88
106
75
63
113
88
72
71
96
101
100
25
69
43
41
104
29
49
41
28
104
25
39
33
76
88
67
82
35
101
82
97
96
98
108
26
96
93
96
126
83
133
129
84
84
82
138
127
130
77
77
80
80
75
75
67
60
59
40
41
91
33
36
51
108
115
65
121
123
124
120
122
69
75
128
71
73
123
120
119
67
68
126
128
130
133
134
132
74
125
126
119
120
111
51
53
52
59
62
92
24
5
0
0
0
0
0
0
49
53
48
0
5
0
0
35
38
40
0
0
0
43
39
38
45
79
89
79
83
78
104
65
81
78
51
46
91
119
107
90
41
28
18
50
45
22
0
0
54
72
66
47
46
0
0
0
47
42
45
47
53
47
0
0
0
0
43
47
42
39
44
41
0
0
0
0
0
0
0
0
45
0
0
0
46
42
0
39
43
0
0
0
0
80
0
23
36
66
49
128
149
0
67
87
15
23
38
98
92
62
26
85
81
76
85
64
0
16
0
53
61
105
83
96
95
94
95
94
89
86
86
127
132
79
85
153
114
55
77
64
58
111
112
49
57
108
53
101
96
42
42
98
77
90
97
55
51
47
14
9
13
11
6
18
18
19
32
10
46
109
103
43
52
102
7
16
0
46
0
1
11
69
76
21
36
72
77
85
87
101
27
26
43
105
128
67
90
90
94
10
116
89
86
113
89
80
81
91
111
57
20
62
40
33
55
27
48
44
93
91
17
39
87
74
85
24
27
89
105
71
95
86
110
113
32
48
49
54
88
140
122
84
84
133
82
139
131
134
80
79
81
83
131
76
66
57
52
33
85
90
76
28
114
66
68
125
125
126
127
70
128
123
132
83
76
73
69
64
66
68
73
129
131
133
132
133
130
126
126
129
68
122
108
51
49
56
56
50
7
6
0
0
0
0
0
0
0
0
2
50
0
1
0
0
0
0
42
0
0
0
0
40
39
46
72
87
66
68
71
96
60
72
79
60
59
35
53
74
43
42
38
34
49
49
31
0
0
40
62
75
58
48
0
41
0
0
41
44
46
61
57
0
0
0
46
46
47
42
41
45
46
0
0
0
0
0
0
53
37
0
0
38
43
0
0
41
41
44
39
39
0
0
35
15
10
0
0
44
74
92
42
38
31
111
148
48
99
68
78
215
115
68
61
99
95
59
24
48
51
106
101
96
98
157
148
149
148
141
134
131
132
124
137
128
121
62
114
109
32
50
108
109
52
49
40
53
83
97
82
49
45
26
29
79
94
79
24
0
11
8
7
0
0
8
12
8
33
51
50
41
47
42
53
1
0
7
47
61
23
24
78
85
83
34
64
87
88
90
64
97
90
36
120
100
102
101
58
92
65
154
92
90
93
85
15
45
74
43
57
35
56
42
41
38
45
22
49
111
76
40
35
41
68
68
32
83
86
55
93
124
32
136
63
62
68
72
74
75
133
129
86
81
81
86
82
136
137
133
131
80
82
137
75
48
33
34
29
79
35
57
44
62
70
79
134
77
76
79
75
122
124
118
65
73
125
72
68
66
65
72
127
128
128
129
130
129
74
126
127
61
63
50
49
60
44
0
0
0
49
44
0
0
0
0
0
47
0
0
0
0
0
0
41
46
0
0
0
44
0
0
35
33
37
61
80
49
80
82
65
31
96
113
122
62
64
33
15
57
53
44
90
111
55
30
0
42
46
37
0
75
70
53
45
47
43
51
43
39
53
50
50
38
0
45
46
50
46
48
49
41
0
0
0
0
0
0
46
45
0
0
34
32
0
0
42
39
40
0
40
42
42
30
0
95
51
0
15
79
61
37
57
0
35
71
103
73
50
117
120
26
49
75
96
44
52
40
25
24
70
100
87
153
152
151
96
91
81
79
131
135
141
135
121
120
98
66
33
86
99
56
48
101
106
45
50
42
37
77
74
33
43
24
72
38
25
23
8
3
9
59
57
57
56
10
14
19
40
39
38
38
69
0
3
0
0
5
9
18
38
39
81
94
29
81
71
96
108
91
80
90
89
101
108
81
91
33
55
64
152
44
121
84
87
2
81
106
106
67
97
107
107
30
51
40
38
85
86
25
39
88
73
5
70
89
82
46
49
123
133
70
83
80
82
88
89
138
140
88
83
84
84
85
84
137
135
136
137
136
82
136
133
72
54
92
26
39
44
41
67
65
67
75
129
132
78
79
78
80
131
127
125
123
125
120
66
71
70
120
127
133
134
133
126
129
131
75
126
127
106
44
56
42
51
11
1
0
1
46
37
0
2
44
0
0
41
38
51
1
3
0
38
32
39
0
1
0
0
0
0
40
42
37
51
63
67
76
77
65
6
74
107
122
113
107
110
25
36
112
99
41
106
49
39
0
48
41
43
44
47
95
77
49
48
37
47
45
42
0
0
38
50
52
46
43
40
41
40
41
0
0
50
38
44
46
48
42
43
41
44
35
34
33
42
0
40
34
41
43
42
43
30
0
0
59
34
76
0
57
34
58
0
94
42
149
102
71
73
48
1
22
0
68
31
0
52
11
37
77
124
143
150
147
92
90
85
132
134
130
128
131
128
120
102
94
125
47
92
65
55
107
105
44
32
45
89
99
82
23
30
91
24
72
81
26
25
7
7
9
59
57
58
57
55
65
75
84
27
29
11
53
0
1
0
0
7
13
80
33
39
94
34
22
17
35
99
92
86
29
38
55
48
106
81
40
39
51
103
120
43
61
30
51
38
84
105
106
116
102
113
112
43
31
17
45
80
42
23
36
83
84
76
76
43
47
58
58
127
139
135
137
83
86
90
90
87
141
139
137
85
85
136
136
137
135
137
137
136
134
133
129
65
42
80
37
42
101
50
69
120
70
76
77
133
131
79
78
80
130
72
121
120
124
64
63
70
76
77
130
132
133
131
130
129
129
75
72
120
111
46
30
13
40
1
5
53
48
46
40
38
40
0
0
37
38
33
43
0
0
37
41
35
43
0
49
0
0
0
34
39
43
0
45
60
62
68
72
61
0
7
92
123
117
52
105
97
6
122
113
46
54
43
34
0
0
43
39
40
37
72
93
0
6
50
42
40
0
0
0
0
0
50
48
46
39
41
38
0
39
38
50
41
47
43
47
42
43
40
41
38
42
40
0
0
40
32
40
43
40
40
35
15
0
36
72
104
13
40
0
0
97
0
0
61
44
67
77
61
31
0
6
48
106
56
67
51
75
72
131
144
94
90
88
87
83
131
130
124
119
119
65
117
87
89
123
52
91
74
108
103
41
43
40
94
87
101
84
24
27
83
76
73
72
79
78
7
10
11
9
58
58
57
3
66
74
79
71
17
0
0
0
0
0
4
12
19
84
38
45
103
38
21
70
98
95
80
80
28
33
67
45
104
84
43
48
45
85
34
41
51
44
56
109
121
65
101
107
104
115
61
45
37
18
102
79
109
24
36
26
34
93
90
105
62
71
121
131
142
146
141
141
92
93
92
88
88
140
85
138
84
137
85
136
137
138
137
84
134
78
124
111
36
23
104
49
56
61
72
124
126
130
129
82
80
80
78
131
76
70
117
117
119
65
63
70
79
81
132
132
132
78
80
77
74
70
118
109
63
48
8
0
76
41
6
3
44
46
42
35
34
0
0
37
38
32
36
41
0
44
43
0
46
0
0
0
0
0
31
38
44
36
40
52
54
64
70
67
56
59
71
116
117
103
99
116
3
97
117
113
51
50
35
0
44
44
37
38
35
41
80
0
0
0
0
0
0
37
2
0
0
46
47
44
37
41
0
0
38
39
49
44
48
41
47
43
42
40
39
41
47
43
0
0
0
32
37
0
38
37
0
32
46
49
88
26
34
12
0
22
145
26
0
90
26
0
94
129
78
0
0
16
10
2
23
84
90
99
128
90
142
140
142
139
85
78
119
63
63
111
55
61
91
101
120
101
92
73
101
95
39
44
42
94
37
37
80
24
24
25
24
73
17
76
23
10
7
11
9
6
7
60
12
70
70
78
72
6
0
4
2
2
6
8
68
22
33
51
104
101
104
82
86
94
89
82
76
80
78
115
94
102
93
47
53
41
81
30
43
48
51
56
116
103
118
95
94
50
108
52
43
51
29
59
76
116
76
39
21
31
91
102
58
68
128
126
130
137
141
141
142
146
92
90
87
88
140
87
139
85
138
136
136
140
140
87
85
135
77
122
112
46
37
62
60
116
123
127
127
130
132
77
84
82
83
132
79
77
75
120
118
114
68
68
124
129
130
134
133
132
131
76
75
71
59
105
104
105
92
55
37
62
37
52
0
0
0
0
0
0
0
0
37
39
38
37
40
36
48
0
0
45
0
0
0
0
42
0
0
0
0
37
43
47
60
65
74
67
65
55
97
105
102
95
117
91
55
98
128
112
53
15
0
0
0
0
0
0
33
48
2
0
0
0
0
43
36
0
0
44
0
0
0
37
0
0
42
39
41
46
44
46
40
48
45
43
42
41
42
47
41
0
0
0
36
34
35
38
37
97
11
0
120
0
53
15
0
26
44
37
59
47
44
13
0
31
58
69
81
1
0
55
42
74
92
114
97
119
144
139
138
86
128
80
73
113
68
68
115
111
110
120
127
105
86
97
96
97
97
101
82
23
90
78
80
74
25
23
72
21
20
22
64
62
16
3
15
13
11
12
12
12
68
62
56
47
0
4
5
3
11
19
14
79
80
60
95
91
105
89
87
88
95
98
94
81
91
87
104
89
98
60
59
57
95
19
66
45
52
50
57
69
100
111
99
38
55
44
39
56
106
85
111
70
97
75
84
14
48
24
47
116
140
137
129
80
84
79
86
138
89
87
85
85
137
137
140
87
86
136
135
135
139
138
83
81
129
64
56
114
69
72
69
129
128
128
130
129
129
79
77
82
81
81
76
72
71
131
123
70
108
65
73
134
133
81
131
133
131
74
57
106
41
84
86
101
63
58
1
0
51
45
36
30
58
0
0
0
0
0
0
0
0
39
45
43
41
46
37
39
40
0
0
0
0
0
0
0
0
0
38
36
41
64
68
82
84
75
53
57
67
98
99
101
63
106
72
104
114
56
30
0
0
0
0
36
0
0
0
0
0
0
39
0
0
0
0
0
42
42
0
47
38
0
0
50
41
45
40
41
38
40
50
45
44
50
43
0
48
49
8
49
0
0
36
32
41
41
0
81
26
66
28
0
38
35
62
105
61
88
80
93
40
16
0
83
97
79
100
91
69
57
65
65
102
100
142
139
85
85
138
127
76
72
69
71
70
66
121
114
116
65
101
90
100
88
102
99
34
85
91
85
79
84
23
24
76
73
71
19
71
11
57
14
11
16
15
13
14
14
8
61
51
52
44
4
57
56
6
64
72
66
86
85
46
33
84
104
86
88
92
50
98
39
37
40
38
97
88
95
63
64
61
54
32
70
51
60
55
48
111
101
121
49
39
60
42
37
100
114
105
93
78
93
84
27
26
48
35
95
124
139
88
72
79
85
83
137
136
87
85
83
84
135
135
87
87
84
84
135
134
137
136
81
78
126
116
58
120
74
78
73
129
131
126
129
128
126
77
77
80
79
80
73
69
118
73
67
71
64
119
127
134
82
83
78
130
75
64
52
39
14
26
88
87
46
47
0
39
50
0
0
32
60
41
36
0
0
0
1
0
0
0
0
39
44
0
0
38
43
46
39
0
0
0
0
0
0
0
36
37
39
68
70
84
94
86
60
54
59
91
52
49
56
130
101
32
112
53
2
11
10
0
44
36
47
0
0
0
1
12
0
0
0
0
0
47
41
40
51
0
40
0
0
54
41
46
39
44
40
39
0
0
41
51
0
0
0
0
54
0
39
44
44
40
41
42
34
33
0
30
82
0
30
97
81
55
87
61
86
97
62
27
0
82
0
90
77
70
15
55
81
93
107
112
107
132
134
85
88
80
128
125
74
69
70
68
129
117
106
65
60
58
115
47
45
53
39
84
94
31
86
86
23
76
77
74
70
19
66
63
55
63
19
17
16
14
15
16
61
55
42
56
2
8
62
63
60
11
71
65
38
36
20
31
31
45
97
92
53
52
92
89
96
38
89
88
88
40
114
120
117
118
111
121
110
68
39
46
67
108
111
47
38
60
40
36
42
56
109
86
89
96
42
27
39
37
48
96
130
127
88
66
75
85
87
85
84
85
85
84
135
133
82
86
87
84
84
82
134
136
83
79
128
124
120
116
76
77
79
77
74
81
73
77
74
124
76
76
131
78
79
72
119
115
67
63
72
71
125
130
79
131
133
129
128
123
55
52
28
0
25
91
72
39
47
0
0
0
0
0
0
8
37
39
0
0
0
4
5
0
0
0
0
45
41
47
0
47
43
34
43
40
35
0
0
0
0
32
39
38
6
7
23
41
36
12
5
7
34
56
49
61
65
131
23
36
76
17
0
49
28
43
41
53
0
0
0
8
29
8
0
0
0
0
0
42
37
0
0
41
45
47
57
40
46
39
48
43
37
0
0
39
0
0
0
0
36
38
0
31
40
0
0
40
42
32
54
0
37
6
43
20
63
103
116
129
66
26
3
7
0
95
41
0
93
83
50
12
13
47
86
95
94
103
80
134
136
79
80
78
127
127
125
131
73
70
64
116
111
63
111
58
45
55
103
32
89
89
81
79
73
20
86
75
71
69
19
19
14
66
69
63
67
10
2
15
12
1
1
51
53
44
60
12
69
60
68
63
77
40
31
79
32
32
46
31
47
56
87
91
100
94
52
79
76
48
39
66
64
61
118
91
109
112
72
41
48
54
122
63
42
52
52
49
45
51
57
86
83
103
35
33
35
47
35
65
42
125
88
87
84
82
82
84
84
84
85
86
86
129
136
84
85
87
88
88
88
139
148
82
73
122
115
119
122
74
77
75
129
80
81
132
131
133
129
124
129
139
112
78
69
77
111
66
67
72
130
123
121
87
84
135
121
121
112
89
76
46
0
101
110
47
4
0
44
18
0
0
0
0
7
37
0
42
45
0
0
2
0
0
0
0
32
35
51
0
0
47
44
38
45
44
0
44
0
0
48
45
0
0
0
13
21
22
10
5
9
23
67
60
66
58
115
120
20
1
39
0
47
41
35
43
41
41
42
0
0
4
93
0
0
2
0
0
39
44
0
0
48
42
38
48
49
44
44
52
46
31
0
0
0
36
44
0
37
32
43
0
39
0
0
0
0
0
37
64
0
0
0
48
42
103
117
104
80
97
31
16
50
69
121
76
26
26
54
92
55
50
50
11
43
97
122
129
78
81
132
137
82
76
126
122
125
125
124
121
121
115
119
105
46
48
102
92
29
86
84
80
77
22
22
77
71
72
68
70
19
17
68
69
71
65
60
12
21
13
4
3
52
60
1
66
71
76
70
73
21
32
24
25
26
37
35
39
31
45
94
95
98
94
99
101
31
24
49
45
61
66
60
68
107
117
114
72
46
48
52
120
70
41
48
46
54
51
53
55
92
87
89
34
27
47
55
49
72
49
80
92
87
84
83
83
84
84
85
137
86
86
130
138
138
85
139
88
140
139
139
148
132
70
123
118
123
126
77
80
76
75
129
133
134
130
132
131
125
129
82
61
74
68
72
57
117
68
125
131
76
128
129
78
82
131
102
103
73
84
76
61
105
97
46
3
0
0
0
4
0
0
53
44
37
41
0
0
45
46
1
0
0
0
38
40
0
0
0
0
38
41
0
42
0
0
39
0
0
42
39
43
0
0
1
5
5
9
0
2
16
56
63
63
46
51
118
24
6
1
54
39
45
42
43
43
42
0
0
0
0
84
13
0
59
54
39
41
0
0
0
0
46
44
47
43
42
42
42
39
37
0
0
34
42
47
0
37
35
49
0
0
0
0
0
0
0
74
80
36
26
27
104
167
43
49
0
13
95
47
64
26
33
105
60
26
76
90
138
59
0
10
24
56
91
81
72
75
131
134
137
83
78
126
123
122
123
123
120
118
121
111
52
44
49
98
32
30
87
28
28
25
23
25
82
80
81
69
16
20
21
19
71
76
62
9
73
23
14
6
4
55
66
8
61
69
73
73
32
26
34
22
27
35
42
35
33
40
44
37
100
104
95
106
97
38
24
51
104
53
70
111
67
122
124
116
66
54
51
49
64
128
93
44
41
60
57
57
105
100
92
97
48
25
48
51
117
130
107
137
144
139
137
84
84
85
137
85
86
139
139
81
86
86
87
88
88
87
87
139
147
79
71
123
72
78
79
81
85
81
127
128
80
82
130
132
131
126
76
75
62
68
70
69
60
119
124
129
131
130
131
128
69
122
126
81
88
57
98
59
82
98
73
45
52
0
0
0
6
0
0
59
38
40
43
0
0
44
44
0
0
0
0
0
0
0
0
0
0
35
39
0
0
0
33
37
42
0
41
38
41
38
0
0
0
0
56
0
0
6
35
41
59
47
42
36
19
61
0
55
39
46
45
40
42
0
0
0
0
0
67
34
0
58
56
39
0
0
0
0
0
0
51
48
38
39
39
34
33
0
0
0
31
0
0
38
37
38
54
0
0
0
0
0
0
0
163
49
106
83
30
72
34
19
82
62
4
70
110
26
26
47
38
72
79
128
180
65
99
56
5
12
15
31
100
64
77
83
135
131
80
83
132
131
126
120
64
63
64
67
106
111
51
50
41
41
95
94
36
32
26
29
32
86
87
83
77
29
27
24
27
28
64
73
30
75
16
31
15
69
68
69
59
65
76
75
37
39
76
35
46
49
92
39
39
43
46
45
53
47
102
104
58
51
63
89
107
114
97
123
113
116
125
124
119
102
119
119
50
50
116
102
100
98
112
108
117
104
109
106
108
85
46
55
79
86
133
115
136
137
138
138
87
139
138
139
87
140
140
140
139
142
141
89
89
88
87
85
136
86
86
134
134
131
140
140
142
90
90
130
132
75
83
77
128
128
77
75
67
122
67
81
76
131
133
132
134
129
120
118
102
42
85
63
69
61
50
97
77
108
54
39
0
0
0
4
0
0
38
2
1
43
43
39
40
52
40
40
0
0
0
0
0
39
0
0
44
0
0
39
37
0
0
42
42
0
42
45
42
36
0
0
0
0
0
41
41
0
0
0
66
6
5
62
0
59
58
59
33
53
43
40
38
39
44
0
0
0
42
46
83
83
45
51
36
0
0
0
0
0
0
47
52
0
37
39
0
0
0
0
0
0
0
0
0
41
44
47
43
45
42
0
0
40
42
65
94
50
129
61
40
51
22
0
46
0
114
81
127
133
135
82
116
120
121
150
29
67
20
0
12
21
32
43
62
75
81
80
82
136
87
132
130
76
73
70
124
74
62
123
104
44
56
43
45
100
94
89
36
32
34
33
31
84
78
75
79
30
29
32
31
68
82
39
22
18
35
20
22
73
71
60
15
78
74
40
37
88
47
97
98
79
91
47
99
89
47
50
52
103
98
58
55
69
50
110
114
101
119
116
116
122
128
119
109
124
125
102
95
111
106
102
104
108
108
121
105
115
117
119
87
58
54
85
90
140
124
139
140
137
139
140
140
139
139
140
140
141
141
142
144
143
144
91
87
86
84
83
81
88
137
136
134
89
88
144
89
92
129
133
127
81
81
130
128
80
78
70
126
73
135
134
136
136
132
132
122
115
110
13
26
83
52
69
52
46
89
88
106
38
42
0
0
0
0
0
45
46
41
46
38
44
40
47
55
40
0
41
0
0
0
0
34
0
0
51
0
39
38
0
0
0
0
41
33
0
40
39
42
0
0
0
0
0
0
0
47
0
0
49
43
47
1
0
12
58
0
0
46
45
42
43
0
44
0
0
0
43
46
66
89
54
55
43
44
0
0
0
0
0
43
0
0
0
0
2
0
12
0
0
0
0
0
0
0
0
0
0
0
44
44
44
49
48
77
126
116
129
24
24
122
4
0
31
0
81
46
0
4
84
27
169
100
61
124
0
22
38
38
25
19
6
24
59
67
72
75
77
134
139
83
134
127
77
131
129
75
67
74
50
104
108
50
53
105
98
92
91
37
36
88
67
71
79
94
47
29
36
36
30
83
90
97
79
30
36
78
79
79
80
71
18
27
72
93
94
99
54
51
95
82
95
49
96
98
54
52
52
106
102
58
54
67
65
113
112
105
115
119
109
117
129
58
67
74
127
100
90
59
55
98
107
105
112
126
106
124
131
126
102
63
58
133
143
92
128
140
90
85
88
141
141
88
88
88
141
142
142
93
144
143
144
143
139
86
83
82
132
137
82
82
84
88
89
91
88
93
130
132
130
132
87
134
128
83
82
77
77
78
80
132
133
132
126
73
112
97
37
4
27
27
7
9
0
0
38
37
95
35
41
0
0
0
0
0
0
44
0
0
36
43
40
55
48
35
37
40
0
0
0
0
34
0
0
48
47
45
43
40
0
0
34
42
0
0
0
0
0
0
0
0
0
0
0
0
47
0
0
0
0
0
0
0
6
55
0
40
37
46
43
42
42
43
44
40
39
40
43
0
20
68
56
48
43
0
0
0
0
0
0
0
0
0
0
0
0
11
0
0
0
0
0
38
39
44
41
0
0
44
42
39
48
48
124
95
85
51
0
56
12
89
14
28
0
4
0
0
66
44
82
157
16
81
4
0
15
30
41
35
53
12
11
55
57
63
71
123
127
138
86
138
126
81
135
128
66
131
61
55
122
105
61
112
110
104
94
95
40
39
89
103
52
97
91
84
27
93
90
29
98
93
97
32
40
33
80
29
80
87
80
28
89
80
50
51
103
53
66
96
97
100
98
92
117
61
61
47
107
112
57
54
64
76
113
110
109
112
122
98
111
127
98
71
74
74
45
34
60
51
92
53
102
115
126
105
129
138
111
101
57
72
87
88
142
129
138
88
85
140
142
142
88
88
88
89
142
142
146
146
145
145
142
139
138
135
81
79
134
130
79
84
139
138
91
86
142
128
131
134
130
142
83
128
137
84
133
129
130
129
129
126
123
120
117
103
79
69
20
37
19
68
0
0
0
47
36
36
0
0
26
51
0
44
0
0
39
0
0
42
42
41
60
42
28
31
0
0
0
0
0
0
2
34
38
51
56
50
35
46
51
30
45
0
46
3
2
49
0
0
41
42
39
41
52
47
0
0
0
0
0
0
0
0
0
0
0
34
43
41
37
39
42
42
38
37
0
0
0
0
75
55
51
40
0
41
45
0
0
0
0
0
0
46
0
0
0
0
0
0
0
0
38
37
43
42
0
0
45
39
32
38
42
36
64
96
70
0
127
28
97
84
49
62
0
0
0
59
0
70
121
2
8
0
0
82
86
0
39
53
13
18
28
94
39
57
121
128
130
94
89
142
85
83
80
128
129
65
70
71
60
62
111
55
53
58
57
92
39
45
52
99
101
87
34
32
95
90
49
43
109
85
45
41
94
41
40
35
94
89
41
40
91
100
52
63
64
45
88
99
101
45
101
110
113
114
53
56
60
51
66
54
67
57
111
109
115
113
33
49
64
107
115
132
60
44
47
52
104
47
41
93
113
109
110
123
132
125
53
64
68
142
138
133
132
134
87
89
141
141
89
89
87
87
88
90
142
146
145
147
144
137
144
132
127
134
75
82
86
116
137
92
91
83
86
91
135
78
148
118
126
85
71
125
78
59
73
67
67
113
114
125
73
89
97
86
49
45
29
63
40
41
0
2
54
39
0
0
0
0
42
0
48
2
46
42
0
44
43
41
53
51
51
36
37
0
0
0
0
0
0
0
0
0
0
0
41
40
0
46
43
38
41
36
0
0
41
48
0
0
0
38
35
51
51
0
0
0
0
0
0
4
0
0
0
0
34
47
51
48
35
32
45
51
26
50
0
37
0
86
51
49
44
0
42
45
0
49
48
0
0
0
0
0
3
54
0
0
0
0
44
45
43
0
0
39
42
44
39
37
40
36
66
70
81
5
43
0
71
0
0
0
68
0
0
45
0
60
91
94
60
87
15
77
0
0
138
0
0
14
29
33
93
84
74
89
100
119
69
75
87
89
90
87
84
78
75
121
67
64
115
59
65
61
61
50
66
63
44
51
99
102
96
99
50
57
102
50
40
43
57
49
49
53
53
102
44
57
108
54
54
104
106
58
55
58
38
34
36
103
105
112
118
119
118
62
61
61
61
63
106
73
62
115
58
64
61
42
47
55
55
110
72
61
47
46
63
109
67
118
87
114
116
58
62
112
71
48
73
74
139
84
83
83
137
139
89
89
89
89
89
88
89
141
90
89
92
90
90
88
86
127
119
125
120
122
125
83
125
127
78
82
80
85
77
119
118
118
138
106
117
61
40
44
29
34
41
27
35
14
0
15
33
27
49
44
28
0
26
101
26
2
113
7
54
14
0
69
0
4
30
41
5
43
0
39
34
27
0
0
47
41
58
54
43
32
0
0
45
46
0
0
0
0
0
50
53
47
48
41
36
37
34
35
0
36
0
48
52
51
56
52
53
46
35
45
0
0
0
0
0
0
0
0
46
45
0
36
36
41
38
38
56
35
46
0
0
0
0
71
52
40
44
40
49
0
0
43
0
0
45
53
59
51
53
55
46
0
48
46
47
42
42
0
42
41
40
42
43
37
38
90
32
149
24
160
0
110
27
49
29
128
58
1
66
22
190
26
49
0
92
4
12
21
44
75
45
0
0
70
82
27
78
71
72
78
101
115
120
133
85
139
138
80
82
133
125
120
121
118
116
72
63
60
63
117
59
111
107
52
52
101
105
57
109
101
49
45
49
65
51
57
109
111
110
56
64
115
112
61
110
108
63
54
57
39
38
37
55
111
117
119
121
67
66
63
61
64
60
107
73
64
113
58
61
60
47
45
49
55
101
67
60
44
42
62
49
121
125
88
116
122
114
61
54
71
46
75
76
137
136
136
138
137
137
141
89
89
89
89
88
141
142
141
140
90
90
86
85
82
76
134
121
108
115
124
128
73
126
124
138
73
80
74
133
126
149
104
75
111
38
48
37
24
22
0
9
26
0
26
3
23
33
65
14
0
0
81
108
74
0
210
43
47
0
47
57
0
0
0
1
0
0
0
27
26
0
0
0
45
38
0
46
49
52
5
40
46
48
44
0
0
0
0
0
43
49
48
37
31
30
0
0
42
41
46
46
43
42
43
45
46
41
33
43
39
43
0
0
0
0
0
43
51
51
60
40
36
45
40
28
61
26
31
1
0
45
0
29
68
37
45
39
0
0
0
0
0
0
42
46
56
53
47
53
48
0
46
42
47
42
43
39
42
41
40
40
40
41
43
109
74
131
74
90
67
93
51
0
26
81
98
109
71
145
192
169
0
0
74
21
53
0
87
83
26
38
38
54
68
48
66
91
77
76
29
104
109
82
87
139
139
133
136
137
78
75
78
124
122
127
64
60
71
118
113
116
115
61
58
107
58
62
55
48
51
56
61
67
105
63
57
114
117
66
66
116
115
116
114
109
117
56
110
45
45
44
61
64
119
118
122
121
68
65
63
65
59
109
68
66
61
111
60
58
56
100
100
58
92
59
55
43
44
66
47
123
123
91
113
124
119
111
52
71
49
75
75
138
136
137
138
138
138
141
89
89
89
89
140
141
142
140
139
143
87
83
79
64
80
85
121
106
98
116
122
125
137
123
73
63
82
76
131
145
149
26
79
102
55
37
23
8
84
88
54
4
65
26
26
101
0
0
0
11
58
98
70
45
26
220
57
31
0
36
76
0
64
36
53
61
0
0
0
0
0
0
0
0
0
0
0
0
55
60
39
47
48
0
0
3
0
0
47
0
0
0
0
47
46
45
43
41
45
52
46
37
0
0
0
0
0
0
44
42
0
0
44
38
0
47
47
53
52
46
52
53
50
40
30
45
48
45
0
0
0
0
32
87
42
0
0
0
0
0
0
2
0
0
0
4
55
41
46
47
39
0
0
45
43
0
0
40
42
42
38
36
41
44
87
137
96
88
67
80
21
0
94
71
121
34
74
75
64
63
87
0
88
34
69
77
0
114
0
3
64
18
0
11
0
73
79
76
78
13
82
88
78
83
84
88
86
84
88
81
80
84
80
78
130
68
64
69
127
72
64
119
119
63
60
61
62
54
101
107
65
73
120
112
121
113
67
71
75
69
118
118
117
115
110
116
110
112
104
104
106
67
67
118
117
124
124
123
120
68
66
111
114
117
69
62
113
62
61
63
53
50
62
82
100
47
40
101
67
51
71
60
96
105
121
127
105
53
68
54
75
76
138
137
137
136
86
87
141
89
89
89
89
88
89
142
138
137
141
136
79
71
50
75
70
68
116
117
121
109
111
118
69
63
125
79
64
63
75
46
43
120
106
0
50
40
68
95
88
0
34
23
0
26
85
26
0
1
8
16
10
89
1
12
179
77
71
50
0
86
0
46
19
41
147
17
0
12
9
34
0
0
0
0
40
34
0
0
26
41
0
0
0
0
0
0
0
44
44
0
0
0
50
47
42
41
38
47
53
47
38
0
0
0
42
44
0
47
0
2
0
40
0
0
47
50
51
47
38
43
44
0
37
38
26
91
74
0
0
0
0
19
97
53
42
0
44
46
0
0
0
0
0
0
2
52
39
0
45
45
0
0
0
0
0
0
41
44
0
0
0
0
40
101
129
55
90
100
35
0
0
87
136
138
59
26
135
77
30
30
49
79
9
63
49
73
136
49
13
11
53
4
11
62
26
10
7
86
36
27
28
59
66
71
79
84
82
84
83
84
87
83
82
133
73
74
122
129
128
71
68
121
67
65
65
63
59
109
63
71
78
126
124
128
124
128
79
81
127
126
120
117
117
113
112
112
112
111
109
115
71
120
118
119
126
77
74
73
126
118
115
119
115
72
65
63
66
65
69
58
53
66
72
98
95
35
49
60
48
63
43
102
99
116
135
96
55
60
59
77
78
85
86
136
134
85
88
141
141
89
89
89
87
88
141
137
135
137
132
122
63
113
118
64
66
117
144
73
47
46
42
79
117
66
82
78
70
44
29
43
117
101
2
43
32
141
82
67
0
0
8
96
73
51
26
0
0
1
20
0
85
26
74
137
89
44
69
23
20
0
21
62
32
15
94
16
18
4
42
0
0
46
0
26
26
0
0
38
0
0
0
0
0
0
0
0
0
27
53
49
37
42
36
39
37
39
51
37
0
31
34
0
0
45
46
0
0
0
0
0
0
0
0
0
50
45
37
44
34
31
0
37
38
32
99
76
0
0
40
44
48
42
19
0
0
47
44
0
0
38
35
0
0
0
0
0
0
0
0
0
0
0
0
0
47
45
0
0
0
0
0
0
31
90
94
133
72
58
76
26
172
135
79
113
121
115
60
54
84
36
70
61
83
31
118
23
26
13
26
0
69
33
66
50
17
7
44
87
15
0
12
68
68
74
87
85
77
78
134
134
122
122
79
78
82
80
82
133
134
127
74
71
71
121
134
127
133
86
137
137
136
136
137
136
132
79
78
76
75
123
120
121
121
109
55
58
107
106
121
68
118
121
123
73
75
75
73
69
76
67
66
120
120
62
63
115
118
109
49
52
105
79
48
40
32
34
55
32
47
36
59
83
113
134
108
61
40
65
81
79
83
141
138
141
141
148
93
90
84
94
88
81
95
84
73
126
54
62
102
140
119
105
57
95
48
13
67
29
69
23
120
112
89
78
105
47
85
45
52
113
0
54
23
0
67
92
92
38
26
127
38
95
61
57
10
30
32
0
30
33
115
210
103
84
67
0
0
0
11
0
37
27
0
0
0
0
8
41
57
44
48
34
34
26
55
0
26
5
0
0
21
2
0
0
45
50
0
0
32
43
40
46
44
44
53
51
34
41
0
0
53
0
0
0
0
0
15
0
0
0
0
0
0
46
38
35
44
41
38
45
45
50
67
51
72
38
42
38
33
45
51
37
0
8
0
0
55
59
43
47
12
0
0
0
0
0
0
43
42
40
0
0
40
40
0
0
36
0
0
5
0
45
26
26
80
86
90
51
72
170
152
139
89
11
0
29
0
1
75
26
62
92
54
26
65
0
50
0
128
68
62
71
125
30
48
53
64
56
26
80
65
64
60
45
35
45
122
80
89
68
122
131
83
85
80
133
132
85
80
130
76
128
127
132
129
135
137
137
138
138
139
138
135
83
83
81
79
80
72
69
121
69
58
56
59
57
57
72
123
121
124
126
127
129
127
126
123
128
68
68
68
124
67
69
69
123
112
108
57
57
31
38
94
22
33
48
44
48
35
61
37
111
139
111
61
43
66
80
79
82
136
138
139
141
89
84
135
84
88
86
83
85
75
34
78
72
53
51
57
67
19
78
97
0
42
48
82
41
73
54
122
105
97
24
24
63
141
19
53
63
55
0
31
78
0
20
0
26
110
111
85
26
36
66
69
26
31
14
27
175
198
164
153
55
0
31
32
0
34
0
126
26
60
31
4
22
25
78
26
80
0
0
0
30
41
27
78
0
0
1
0
1
42
0
0
31
0
30
42
45
46
41
48
47
47
33
38
0
0
0
0
0
47
43
0
3
0
47
0
0
0
0
43
41
39
42
0
38
43
26
38
7
0
79
29
40
41
36
37
29
92
52
49
0
0
47
50
43
0
8
0
0
37
0
0
42
0
44
43
0
0
38
0
0
41
0
0
0
0
0
140
91
58
40
102
64
65
45
159
89
81
0
56
57
0
0
0
44
26
61
36
51
90
83
45
84
36
143
103
14
31
57
16
65
48
54
72
56
31
19
13
0
73
4
16
109
60
65
72
76
127
126
126
79
131
130
83
80
131
130
132
131
132
132
136
136
140
138
140
87
87
135
86
87
135
84
87
74
121
121
68
60
58
61
60
61
77
76
126
77
79
81
81
78
78
75
127
71
73
68
125
70
73
72
73
61
113
112
59
38
33
48
13
32
93
107
104
39
119
103
108
142
117
113
97
117
80
77
79
79
135
136
136
135
138
134
138
135
85
71
119
111
51
76
119
93
30
4
70
49
76
107
5
106
137
50
45
62
61
78
114
17
37
91
65
116
0
64
0
19
0
86
0
38
75
62
74
88
68
58
64
50
133
152
69
59
81
42
255
135
169
140
64
70
61
30
35
65
112
184
26
85
26
83
27
0
26
26
85
34
37
1
0
41
45
31
0
40
0
0
0
0
0
0
0
0
0
47
48
39
40
0
41
42
0
0
0
0
0
0
0
0
0
0
0
39
0
0
0
0
0
0
0
42
40
41
0
0
0
40
23
30
40
0
0
0
0
37
39
101
0
0
46
40
39
39
41
0
1
0
0
0
0
44
41
41
46
50
45
0
39
0
37
37
41
0
0
0
48
0
89
63
26
115
53
53
36
47
125
65
0
55
39
0
0
0
0
26
60
69
0
48
0
0
73
133
92
39
0
0
0
0
8
4
40
53
39
61
11
5
12
12
27
74
78
28
44
57
66
68
123
119
125
129
128
130
131
78
130
131
130
132
134
135
134
137
135
138
88
87
83
85
88
135
84
87
125
120
120
66
63
60
63
63
65
78
77
75
78
80
83
82
78
80
78
77
76
78
70
71
71
126
125
125
115
115
112
112
104
40
52
15
27
91
107
108
97
122
114
103
138
123
110
101
118
129
73
74
76
133
130
134
131
138
126
132
123
78
102
110
72
19
89
100
52
28
89
44
126
61
56
11
77
139
43
39
142
45
41
146
72
12
61
136
48
27
89
32
50
72
139
1
33
78
103
142
137
112
0
40
87
102
103
98
34
26
27
254
151
132
160
88
26
101
74
146
26
60
26
41
26
72
106
85
33
124
0
0
25
0
19
0
0
0
17
58
89
63
44
0
35
48
0
0
0
46
53
0
0
0
0
38
39
0
0
0
0
0
0
0
0
0
0
0
45
1
0
0
0
0
0
0
0
0
43
0
0
0
28
0
43
17
0
0
0
0
0
53
105
0
0
0
48
37
33
41
50
0
0
0
0
0
46
43
40
47
56
50
0
0
0
0
0
38
38
0
0
46
0
0
71
0
79
44
72
38
53
122
26
17
17
0
0
0
0
16
2
50
123
26
26
97
67
30
105
75
46
41
10
0
0
19
45
50
40
43
72
70
61
45
8
0
56
62
17
17
29
39
51
115
112
119
126
73
72
76
128
130
82
132
132
83
133
134
136
131
133
85
136
82
83
84
80
82
136
124
119
118
65
66
64
65
66
68
77
76
126
77
80
84
83
79
81
79
78
79
79
71
69
73
76
78
76
68
65
116
116
71
51
53
72
69
87
102
112
99
119
116
100
128
72
110
105
117
123
67
69
71
72
118
126
127
128
57
68
58
119
76
56
21
34
112
89
2
26
95
90
23
47
13
78
28
108
49
12
88
38
72
152
96
13
1
66
44
0
50
48
0
189
0
26
43
96
78
160
103
53
21
46
26
83
87
85
81
65
56
224
148
106
99
108
71
0
44
175
31
116
48
75
30
52
84
42
118
162
0
104
121
34
56
14
15
46
86
35
26
34
54
40
41
39
34
0
0
55
47
47
41
46
40
39
40
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
0
0
29
38
39
0
0
1
0
37
42
42
0
93
6
0
0
0
39
35
46
59
0
0
0
0
0
0
45
42
45
53
48
0
0
0
0
39
33
0
0
0
36
0
17
4
5
45
64
34
0
0
43
75
66
76
0
0
55
0
30
102
46
15
29
0
0
34
70
5
41
70
39
7
36
0
20
72
87
61
76
0
35
67
53
35
52
34
75
0
12
34
5
61
69
75
88
96
48
56
69
121
128
78
129
80
78
76
81
123
73
72
76
78
137
138
135
86
81
78
125
121
121
121
124
120
67
67
69
127
126
124
75
77
77
131
131
80
77
126
127
121
116
69
74
75
83
84
82
76
132
63
79
58
113
31
82
80
82
103
89
114
107
103
110
118
111
114
114
110
55
56
49
55
44
60
61
65
47
65
60
42
50
23
41
22
111
62
112
160
86
87
14
0
83
26
48
39
84
63
30
22
26
140
88
83
0
58
106
27
68
135
70
2
19
53
79
26
212
74
119
95
63
26
98
46
0
0
0
36
223
156
89
83
120
108
72
0
26
49
134
66
0
0
8
39
66
26
85
92
9
54
172
26
32
119
77
38
116
26
189
26
0
0
54
34
43
50
0
41
0
44
55
43
43
44
40
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
44
41
35
42
43
0
39
40
39
40
41
39
2
3
29
8
11
0
45
47
45
61
0
0
0
0
0
0
0
47
0
35
38
0
0
35
38
0
0
0
0
47
48
0
7
0
0
40
22
17
27
40
0
118
11
68
27
55
42
43
91
115
76
80
77
27
0
26
77
44
0
16
20
9
0
1
52
85
84
13
0
3
28
55
67
54
54
22
74
26
28
22
0
6
35
102
67
76
81
47
59
61
120
124
122
81
76
123
131
67
72
69
125
129
139
141
83
88
83
77
74
123
124
124
126
122
68
67
121
126
125
123
126
76
125
128
130
130
126
121
122
116
112
115
67
68
79
82
78
126
133
54
70
57
72
33
45
81
72
88
82
120
112
105
108
115
113
115
62
51
52
52
38
50
40
55
52
53
36
49
44
61
127
19
39
82
102
173
174
170
55
72
0
0
65
0
43
78
51
72
138
0
27
134
48
79
53
74
135
59
33
0
12
49
124
2
82
173
0
0
53
33
2
0
68
57
26
26
53
84
255
144
73
85
70
115
65
40
26
47
132
108
103
34
45
45
54
32
79
44
46
30
82
26
0
142
0
55
26
61
66
62
0
0
71
32
37
31
32
34
0
38
47
40
49
44
39
32
0
0
0
0
35
42
0
0
0
1
0
0
0
0
0
0
46
48
52
37
0
42
40
47
48
34
47
51
0
0
36
42
53
0
0
97
0
41
47
48
48
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
15
31
70
28
65
52
65
5
0
103
74
3
0
39
66
61
41
59
65
108
128
97
52
71
128
49
0
0
53
0
0
17
103
66
86
29
0
0
30
3
10
66
109
79
71
26
84
75
26
64
38
103
36
71
66
2
85
46
63
83
115
74
62
126
121
66
114
90
111
129
136
134
135
101
96
89
136
129
129
130
123
126
134
67
104
80
128
123
132
122
119
116
135
121
127
126
117
66
123
116
70
118
128
75
80
127
73
47
69
59
64
40
89
55
92
79
93
108
109
126
90
120
99
117
48
47
33
57
27
37
26
73
43
54
43
60
63
78
111
136
37
138
43
148
170
66
28
42
26
27
11
1
80
49
72
71
0
0
0
72
46
63
174
59
59
110
94
71
18
0
26
40
26
146
39
18
5
45
0
0
111
108
39
30
75
80
255
129
54
38
106
159
70
120
95
29
0
137
76
50
2
126
42
43
26
85
39
26
156
62
32
144
60
16
0
130
0
133
28
14
29
57
26
33
26
0
0
56
52
42
42
39
33
38
48
37
43
50
29
44
42
42
0
5
0
0
0
42
0
38
43
47
48
46
0
37
44
55
51
46
39
0
0
30
39
52
27
63
11
46
53
32
42
36
37
0
3
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
27
52
0
0
27
46
0
0
75
47
21
0
23
71
81
75
70
101
82
112
120
60
66
49
29
65
62
81
29
0
19
1
71
67
34
45
5
30
0
0
37
17
32
0
0
4
81
41
45
65
10
12
69
0
61
42
59
73
56
38
31
23
75
42
72
107
88
93
74
104
149
132
138
103
106
98
84
126
131
138
129
136
83
81
68
124
131
122
116
120
132
129
120
112
97
57
47
109
119
59
63
116
75
128
111
131
45
64
45
60
57
36
107
0
87
79
85
99
100
115
31
110
104
80
35
46
37
118
100
11
24
75
118
116
96
114
90
48
122
107
90
105
33
138
138
138
135
9
0
61
46
0
72
87
55
0
0
24
0
103
45
32
84
41
0
16
123
124
101
0
77
75
67
72
84
119
96
0
82
71
0
33
30
46
28
68
210
96
77
0
18
120
76
55
128
26
103
133
0
33
0
108
48
13
2
60
7
0
132
12
0
0
114
90
0
108
21
0
75
0
32
51
70
34
33
0
0
0
43
46
39
34
35
43
48
45
46
41
42
47
41
38
0
50
43
0
0
0
0
0
38
41
44
46
49
0
0
47
42
35
36
41
0
6
1
26
73
53
52
99
48
35
0
37
36
41
59
49
0
0
44
0
0
0
0
38
0
0
0
40
0
0
0
0
0
0
0
0
2
17
0
26
36
52
51
0
29
11
0
29
22
82
38
69
26
154
50
0
84
125
94
157
0
0
52
54
58
103
0
4
69
65
79
22
0
0
43
0
0
28
28
32
7
27
89
56
34
79
115
46
17
10
38
76
65
29
35
24
0
23
25
32
60
114
103
123
45
61
99
130
140
128
145
89
115
129
140
146
133
129
136
128
133
69
115
128
125
117
109
58
60
53
45
31
47
46
108
109
106
109
113
123
124
122
57
31
52
49
39
59
89
101
56
78
84
74
87
41
42
21
35
45
18
30
32
42
83
99
87
44
55
96
107
127
83
47
43
136
111
40
156
26
87
133
138
133
89
0
23
76
67
72
0
16
62
77
22
26
103
26
85
26
17
0
0
0
152
42
26
71
26
57
27
26
97
88
29
11
2
9
10
10
68
113
144
197
3
0
73
23
109
115
26
65
53
112
67
116
0
0
114
26
0
67
40
0
0
104
110
34
15
0
0
27
33
45
0
88
158
76
50
89
31
35
41
0
0
37
48
36
32
41
49
45
47
49
39
35
38
35
43
0
46
44
0
0
0
0
0
0
38
41
35
46
0
0
0
0
0
36
41
54
0
0
69
43
44
41
105
45
43
0
39
36
41
62
53
45
40
43
36
0
0
0
38
40
0
0
0
0
0
0
0
0
0
0
0
20
93
126
64
0
33
50
94
37
26
60
75
73
121
57
87
38
128
9
27
0
101
52
153
75
0
0
49
26
200
34
76
44
76
96
0
50
0
23
0
0
42
34
28
22
0
82
97
0
123
107
27
16
48
72
58
68
0
0
26
62
5
14
27
38
73
98
106
52
50
122
86
135
141
61
80
134
117
139
141
119
123
121
120
118
54
70
50
41
66
68
46
48
55
38
42
52
115
120
103
103
105
59
118
117
88
59
34
63
34
81
91
103
95
65
72
91
66
74
34
27
22
19
36
14
71
25
37
77
45
108
35
50
65
93
106
142
123
45
98
26
79
150
77
42
96
59
88
56
83
0
0
26
39
79
62
211
4
0
31
87
69
114
66
36
0
0
0
26
49
70
26
42
71
26
26
83
104
66
0
0
37
17
3
175
49
180
91
0
0
82
0
79
87
93
43
116
2
82
123
53
78
4
56
0
90
11
0
61
87
98
99
48
54
0
101
148
0
39
81
48
79
26
71
1
0
0
0
0
36
45
34
36
47
49
40
43
48
44
34
34
34
0
50
45
0
0
0
0
0
0
39
0
0
0
0
49
0
0
0
42
40
0
0
32
60
54
47
44
39
110
47
0
0
39
38
42
57
52
46
41
40
31
34
0
0
0
43
0
0
0
0
0
0
0
0
0
0
0
120
93
110
81
121
0
102
52
162
157
26
59
18
26
30
55
93
79
0
22
130
65
81
19
11
105
75
27
56
105
51
26
108
14
48
135
24
44
0
0
19
6
26
0
0
27
1
57
137
70
124
30
15
3
57
67
43
61
27
17
66
122
39
59
35
47
162
126
71
78
22
57
46
36
59
36
9
31
106
48
48
33
20
33
30
29
11
59
35
54
72
51
42
23
39
79
135
113
39
73
83
82
51
60
63
16
41
0
33
61
76
96
64
75
60
69
85
65
61
73
49
22
65
78
8
17
88
5
79
30
0
45
59
90
26
110
0
80
9
0
92
17
62
50
80
76
106
101
119
0
97
62
84
111
71
61
5
0
45
50
26
28
26
57
26
0
24
43
70
132
74
42
26
120
4
160
79
34
95
26
17
72
24
24
17
134
206
68
116
22
74
0
14
62
61
19
71
0
94
64
107
86
0
0
20
45
7
0
0
66
65
56
45
44
0
0
99
125
0
26
0
35
15
1
106
1
0
0
0
0
36
37
47
49
35
41
50
41
40
54
50
0
0
40
0
0
0
0
0
39
37
41
40
40
0
0
0
0
0
0
0
0
47
77
0
0
0
0
0
0
38
0
0
38
34
40
42
41
45
0
44
37
40
0
0
0
0
42
0
0
0
0
0
0
0
0
0
0
0
0
98
56
110
59
121
100
170
81
97
48
103
117
28
36
122
113
39
5
1
49
88
77
69
20
34
118
88
17
120
89
26
108
46
76
95
0
21
0
3
1
13
105
71
16
13
42
53
113
93
125
26
0
0
0
0
37
43
0
2
45
43
17
0
0
26
117
42
96
53
0
66
24
45
26
30
113
72
111
53
34
24
22
12
75
82
84
110
2
32
90
46
64
75
57
78
101
34
30
86
82
79
51
54
57
86
51
20
0
5
0
98
56
68
83
81
81
87
22
25
0
10
11
17
12
77
27
10
97
25
0
30
44
46
19
171
15
23
17
9
26
89
0
48
1
79
68
84
45
26
125
46
9
26
146
52
15
0
61
117
0
0
0
27
26
48
0
40
105
26
80
26
62
160
99
0
114
77
106
164
64
54
1
4
0
201
201
31
98
3
0
50
44
128
93
61
84
0
0
106
135
150
40
27
0
107
4
26
51
59
105
49
142
26
4
83
43
125
0
35
0
85
70
47
23
66
51
45
0
0
38
40
44
44
36
46
46
40
39
0
0
0
2
3
0
0
0
42
47
37
35
45
45
42
39
0
0
0
0
0
0
0
44
44
39
39
56
43
0
0
22
4
0
0
31
34
41
39
44
0
0
41
41
48
0
0
0
0
0
0
0
0
0
42
0
41
40
0
0
41
81
89
134
114
83
87
44
25
10
80
20
33
94
26
67
129
1
4
11
139
52
77
80
90
89
66
128
14
56
37
41
97
50
50
36
74
88
55
10
0
0
49
62
34
70
147
58
79
36
81
40
43
0
0
0
20
0
0
24
0
0
0
0
0
33
26
26
67
26
56
9
40
71
5
82
153
77
51
45
29
37
47
63
84
97
60
51
50
76
91
49
35
92
99
102
95
22
79
74
87
82
102
98
49
84
66
0
0
48
0
51
92
104
82
93
81
107
36
30
11
12
20
72
38
59
74
23
86
17
88
174
35
107
45
84
63
22
46
0
26
40
0
0
0
21
108
0
2
64
97
0
0
26
91
69
135
78
71
66
0
0
9
0
0
112
26
121
112
45
0
35
55
37
13
50
71
45
97
38
112
37
5
31
100
193
170
183
58
20
0
121
26
122
87
29
60
0
71
66
94
67
26
10
80
192
36
92
73
26
107
58
138
42
71
87
96
170
11
34
0
51
34
0
19
19
58
44
0
54
41
42
39
39
42
0
34
0
0
0
39
45
0
0
0
0
43
43
42
39
36
51
51
46
43
56
58
50
0
0
54
45
37
55
36
40
41
49
46
52
15
12
0
36
29
29
41
0
0
0
0
0
37
47
46
37
0
0
0
0
0
0
39
42
41
0
0
0
0
71
109
141
151
207
65
87
12
13
74
60
121
101
67
55
83
41
29
0
40
87
90
17
55
69
0
33
40
114
26
43
118
73
21
88
1
0
43
26
14
0
48
94
49
0
29
129
71
119
130
44
31
0
0
53
0
61
33
0
0
0
26
0
26
33
28
27
90
26
53
83
4
82
48
10
0
0
40
0
34
0
6
88
66
34
54
78
34
120
28
38
68
69
51
74
71
68
29
41
23
92
26
80
33
87
67
44
80
28
107
37
43
62
112
98
81
46
33
60
16
0
67
63
76
0
13
112
26
80
17
127
108
118
73
97
75
149
46
0
61
26
159
0
0
1
0
55
35
0
0
0
86
26
42
2
53
83
37
0
39
38
0
0
0
0
68
26
103
137
131
81
100
4
24
21
34
147
138
1
26
90
0
19
16
100
241
118
159
22
0
0
49
43
147
77
27
34
30
30
0
42
71
26
26
86
76
92
79
96
44
118
86
0
59
87
36
56
53
34
26
56
0
28
0
12
38
56
0
0
0
34
51
0
41
56
46
36
47
0
34
47
43
38
47
0
1
0
0
38
39
43
60
46
39
0
0
7
1
0
0
43
46
45
40
45
37
31
46
51
38
31
1
51
39
34
33
39
46
0
0
0
0
6
68
11
0
0
0
0
0
40
38
39
44
44
44
0
0
0
92
105
141
56
70
0
18
0
0
28
72
33
51
63
52
26
30
51
0
116
78
83
113
44
121
0
11
46
54
0
27
0
0
0
13
0
26
76
69
54
0
0
18
71
3
0
30
63
82
131
31
46
39
0
0
5
0
0
0
45
26
0
0
0
32
0
119
75
71
75
119
10
19
50
120
76
62
72
25
19
34
57
70
77
16
48
33
88
89
70
41
8
95
44
128
57
82
26
54
16
10
0
55
29
92
34
29
76
124
41
67
26
105
84
69
27
53
45
9
8
66
74
61
80
9
0
76
26
78
39
72
61
116
20
79
128
124
56
26
41
53
77
31
109
128
51
3
0
26
8
0
85
21
0
8
90
84
54
46
26
121
0
26
13
23
61
0
30
21
13
0
0
17
34
102
49
0
72
80
147
54
0
97
20
93
184
164
170
0
0
0
0
9
100
92
88
54
30
0
0
7
38
26
62
77
26
29
40
163
73
67
26
38
43
98
77
26
0
104
85
26
0
12
0
0
32
9
0
2
0
44
5
40
44
47
40
36
47
46
0
43
43
44
38
0
45
0
0
0
0
0
50
45
46
52
0
5
0
0
43
42
42
43
45
48
41
38
54
46
35
81
61
48
42
37
36
42
48
46
0
41
40
51
61
58
0
0
0
37
33
38
49
38
44
46
0
0
0
0
176
90
49
0
65
30
30
5
145
142
64
87
8
0
26
32
71
84
54
0
124
87
93
92
58
0
0
15
81
53
0
153
57
96
117
60
110
26
0
35
50
30
16
69
144
0
33
60
94
73
33
90
0
29
40
2
10
34
72
63
45
76
47
36
80
61
49
26
80
46
78
68
91
138
26
113
87
88
26
112
54
15
18
119
22
96
26
90
75
116
95
47
91
26
48
74
26
58
19
37
2
50
58
143
31
54
59
0
132
29
34
44
37
88
35
60
23
24
15
8
28
93
101
98
39
48
114
29
52
46
161
152
94
69
111
119
114
45
33
42
0
120
62
95
66
13
71
71
87
0
0
94
43
0
62
72
53
87
61
86
48
96
177
0
119
12
128
0
0
0
11
85
43
102
0
10
90
143
108
63
84
26
40
48
255
170
175
0
6
69
54
46
73
57
95
34
37
21
103
4
76
26
12
58
32
61
26
78
0
26
28
82
36
57
103
155
43
59
143
73
43
47
0
0
0
31
0
0
26
45
0
41
50
49
43
42
41
39
38
37
39
42
47
0
0
29
46
0
0
0
44
35
40
53
0
0
0
0
0
0
0
37
40
49
45
40
40
52
35
42
71
30
46
47
51
48
45
49
47
0
42
40
37
40
40
41
0
0
0
1
0
35
45
50
45
46
0
1
0
90
0
0
0
34
0
15
47
111
94
104
92
20
24
0
26
77
110
16
0
46
16
80
139
0
0
4
6
71
95
26
69
2
8
27
145
102
107
67
35
102
62
59
51
43
73
106
113
78
44
18
43
0
2
0
0
41
51
100
67
12
0
87
63
67
154
54
26
43
68
94
112
91
96
26
62
66
55
26
10
92
29
1
68
25
0
130
46
26
133
158
26
9
45
80
51
42
113
127
21
0
109
56
78
82
69
26
31
0
71
67
62
57
77
26
103
38
30
25
45
54
68
117
104
38
26
39
38
85
139
113
111
103
133
115
118
110
164
81
51
9
104
5
63
3
34
8
26
79
6
7
48
14
78
85
2
0
55
26
95
65
47
36
27
114
91
62
48
0
54
38
91
26
127
14
44
88
79
80
77
15
27
0
28
255
148
65
0
0
24
0
0
0
43
112
97
58
96
102
24
22
27
66
0
26
23
77
77
0
0
0
109
47
44
127
9
0
26
87
80
106
0
0
26
26
63
26
0
41
26
34
0
46
43
44
46
45
41
39
38
41
40
40
0
0
0
0
0
0
0
40
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
35
49
47
54
50
41
47
46
0
0
0
43
42
41
0
43
49
45
42
0
0
45
49
42
44
37
3
42
10
23
75
23
63
0
15
0
66
56
68
0
40
39
0
26
26
99
98
0
52
69
130
50
51
0
12
28
52
91
46
50
89
3
0
0
0
98
34
74
84
125
79
102
0
17
71
106
46
22
27
0
14
23
0
0
15
91
61
14
5
26
26
72
26
61
23
0
84
78
67
14
22
29
26
83
94
60
51
33
107
70
0
13
138
43
61
109
87
0
22
47
0
119
53
46
116
20
60
9
53
35
31
0
45
38
25
21
64
15
110
35
73
68
0
139
10
58
10
84
87
101
114
130
118
0
32
33
30
68
115
150
123
112
65
91
50
61
2
0
12
59
15
26
9
0
61
40
26
0
0
56
0
56
36
72
0
0
0
41
37
42
55
50
25
0
54
97
107
103
76
143
56
120
133
56
2
60
70
28
0
14
52
26
255
85
38
38
79
55
42
0
79
14
123
48
66
41
52
26
47
47
51
82
26
117
49
26
0
36
26
39
45
26
142
17
31
39
26
63
128
0
116
97
35
32
87
16
15
43
50
46
40
37
44
0
0
0
0
39
44
0
36
0
41
33
1
0
0
0
0
0
40
0
49
39
0
0
0
0
0
0
0
3
0
0
0
0
35
56
12
36
0
0
52
46
39
46
45
0
46
0
48
47
47
0
0
0
0
45
45
0
41
47
40
46
38
2
0
75
145
88
98
60
84
3
0
57
92
53
0
43
0
55
24
0
81
109
0
68
126
109
34
93
11
26
26
99
48
137
73
26
89
71
1
19
12
37
12
20
24
48
60
54
0
16
34
0
16
52
0
55
72
56
0
0
63
4
30
12
50
45
39
35
26
42
92
80
56
86
15
56
136
18
49
42
82
59
87
81
42
102
0
85
50
26
75
92
10
0
55
33
127
111
103
111
0
40
8
24
0
53
24
29
21
28
36
64
0
40
0
49
38
24
48
46
43
98
86
70
102
0
105
130
188
45
33
0
91
102
123
45
54
2
0
26
0
63
50
77
65
13
0
11
0
115
0
0
144
0
97
0
37
15
16
78
21
0
0
95
26
54
36
6
0
26
108
26
88
47
110
58
88
119
26
29
52
54
27
26
26
29
82
192
67
0
63
29
0
98
87
65
8
124
118
0
44
32
26
58
54
26
48
54
115
26
78
74
0
16
12
26
85
79
26
41
48
46
0
0
0
178
76
0
51
75
3
70
43
64
45
0
0
47
44
43
0
0
0
44
0
0
0
0
0
3
0
0
0
0
43
42
44
53
39
43
46
0
0
0
0
0
1
0
0
0
0
0
0
13
36
0
2
47
39
39
48
47
47
46
0
42
44
48
41
42
32
0
1
49
0
43
48
40
46
37
45
0
96
94
101
88
19
83
74
11
30
35
18
0
0
0
136
38
97
28
62
9
39
29
138
67
101
33
29
26
80
126
26
26
26
147
133
95
72
33
72
46
0
0
29
63
63
0
0
43
65
12
33
47
79
62
27
53
79
65
40
105
52
110
26
65
0
0
65
71
0
34
53
2
63
37
29
43
97
3
57
92
0
94
54
82
124
104
39
96
31
0
0
0
69
0
54
34
72
0
23
2
24
80
25
32
96
28
72
123
0
22
0
73
64
13
0
0
79
62
114
116
97
115
53
120
38
169
44
0
0
102
63
48
49
28
46
48
26
53
70
57
58
54
1
0
0
48
30
7
0
163
69
4
6
81
38
0
26
0
40
5
101
28
26
113
43
0
0
114
99
106
89
57
83
112
110
28
26
42
26
71
26
26
44
193
115
0
0
41
18
0
29
0
26
47
88
64
85
64
86
26
98
26
49
28
120
61
65
7
89
15
85
10
0
111
0
5
82
115
26
95
36
0
66
83
18
58
26
38
0
0
66
34
0
0
52
0
40
0
0
42
43
40
40
0
0
0
3
0
0
0
41
41
43
49
2
37
45
54
40
49
0
0
0
0
0
0
0
0
0
0
14
35
0
58
0
0
0
0
50
48
45
0
0
37
43
38
39
41
39
42
46
0
0
0
39
43
33
0
0
42
125
120
107
46
89
71
74
75
0
51
3
0
48
26
87
94
95
84
0
0
6
81
82
103
26
40
45
130
95
76
47
26
112
26
133
26
29
167
0
132
3
19
0
0
37
0
36
54
65
17
20
103
73
73
111
119
112
73
101
59
85
56
52
30
26
56
108
26
15
11
50
50
95
50
52
147
32
19
9
75
45
30
149
0
160
75
0
35
2
45
29
105
48
0
33
6
0
14
84
13
0
43
63
134
2
26
0
43
88
4
80
79
0
0
24
41
146
100
1
28
9
16
45
29
106
116
86
3
54
36
57
136
3
81
26
60
77
153
26
45
36
15
64
26
44
0
4
0
142
61
111
26
0
35
1
61
0
51
42
98
82
26
150
26
105
16
0
44
86
55
40
48
26
34
26
105
156
70
94
113
103
91
208
69
33
0
0
65
0
0
0
0
50
69
89
83
63
131
26
26
143
93
0
46
0
26
74
48
58
43
0
0
0
13
0
0
26
0
64
0
0
0
0
0
87
0
0
0
0
0
0
0
0
0
0
0
0
40
57
43
45
42
50
0
0
55
49
0
0
0
32
43
51
0
0
35
32
37
42
6
0
0
0
0
41
50
40
0
0
0
25
0
4
0
0
0
0
0
0
0
0
0
0
43
34
40
37
0
0
43
53
0
0
0
0
45
0
0
63
62
13
114
107
116
75
99
54
0
71
0
0
5
76
26
54
54
81
37
26
42
79
50
65
26
49
178
30
37
59
0
82
65
83
101
26
51
175
59
10
13
49
53
14
116
149
26
57
105
39
0
99
82
90
119
86
86
92
137
134
115
74
56
41
66
55
60
62
136
0
39
31
15
112
40
32
24
7
0
71
26
62
96
29
24
59
26
26
7
122
48
0
91
8
0
22
0
0
10
57
64
72
59
115
66
0
0
66
68
0
98
0
0
0
30
126
100
46
45
0
29
70
57
98
118
67
99
5
115
175
68
53
98
124
43
50
127
76
26
26
0
24
48
118
0
0
49
84
150
82
26
26
67
7
62
34
52
24
0
61
0
39
30
26
47
26
26
28
95
56
47
35
77
164
164
203
88
2
38
30
80
181
237
132
26
16
41
73
22
23
0
5
67
195
102
94
113
21
68
85
0
57
34
60
0
79
103
100
22
8
3
0
0
48
43
51
31
39
28
0
11
0
0
115
7
0
34
42
36
0
0
0
17
15
0
0
0
46
61
48
49
46
55
47
45
48
42
0
0
0
0
41
49
0
0
46
35
26
35
5
0
0
0
0
0
53
42
33
47
0
18
44
56
0
0
0
0
40
48
40
42
50
0
38
32
40
41
42
44
0
48
50
0
43
45
45
46
43
48
66
33
77
171
100
101
123
4
0
24
0
13
0
121
85
49
41
49
132
40
34
122
33
55
26
103
47
26
86
5
0
83
20
42
28
106
67
163
26
0
90
97
131
28
122
94
89
71
82
0
26
99
58
62
110
46
88
60
41
82
93
108
33
90
38
35
82
106
162
55
40
45
20
0
86
27
61
9
0
45
40
95
71
39
30
37
92
47
77
136
80
82
135
0
49
55
4
0
23
0
69
66
26
87
41
0
0
26
87
0
81
118
151
107
149
45
105
0
40
9
15
4
67
146
155
69
96
17
68
91
0
52
71
61
135
100
48
95
10
48
0
51
56
19
79
26
26
124
103
89
26
66
102
92
31
101
72
49
0
101
13
111
145
26
26
49
69
50
66
13
0
57
0
0
51
164
58
78
33
26
68
237
239
117
79
26
145
26
5
0
0
0
59
0
107
90
87
108
20
51
0
64
55
0
33
0
122
75
114
0
83
44
130
44
0
93
34
37
3
0
20
0
15
26
26
0
32
26
0
0
0
0
43
33
0
0
0
37
46
45
45
43
61
45
43
40
0
0
0
0
43
45
46
0
1
51
43
39
0
0
34
35
33
0
0
0
0
51
45
62
80
45
52
0
0
0
0
47
50
38
38
0
0
35
36
0
0
45
46
0
0
47
48
37
39
40
45
41
86
81
0
0
89
0
0
61
66
8
36
39
0
47
71
42
124
26
129
113
55
129
71
26
114
30
0
26
26
108
0
18
0
24
1
58
90
62
98
64
26
114
113
85
26
102
172
162
119
35
0
40
132
89
26
26
67
48
28
95
26
80
0
19
84
69
66
119
127
67
103
92
96
0
8
70
43
0
60
87
26
26
36
76
0
0
46
37
82
71
139
102
43
92
76
114
97
23
0
16
5
0
35
108
85
0
0
45
8
122
69
18
53
163
106
32
56
60
75
70
36
49
18
30
137
106
128
52
53
43
0
63
14
34
46
85
165
135
130
35
29
64
62
64
49
87
0
0
98
63
73
60
80
65
92
62
95
0
80
0
75
29
0
114
26
73
26
108
46
89
0
0
50
20
22
0
69
26
102
45
94
41
255
186
107
105
109
135
26
30
0
14
26
26
120
126
94
39
187
23
0
0
50
0
0
9
19
40
0
70
83
146
16
45
74
49
78
51
70
26
0
82
0
9
78
57
26
143
18
0
63
0
0
0
30
48
0
36
26
34
43
42
38
60
48
46
40
41
54
0
40
53
46
38
0
0
0
45
6
1
0
34
38
34
43
0
0
0
6
44
22
34
0
53
0
0
38
0
49
50
41
41
42
38
0
0
0
0
44
48
48
41
0
47
35
36
38
43
39
84
75
38
7
3
1
54
77
91
92
0
9
38
80
0
0
26
94
102
117
140
95
0
0
120
29
0
5
79
115
40
0
4
50
72
48
26
20
0
136
0
50
64
27
26
26
103
77
86
55
0
40
106
51
42
13
108
41
69
74
26
25
8
72
46
119
88
113
98
132
42
41
36
26
11
21
6
6
17
83
37
74
56
0
0
55
0
0
40
83
81
133
61
28
120
80
31
0
1
0
0
1
19
18
0
0
5
44
11
76
52
100
47
86
115
45
10
39
17
98
26
39
18
12
49
10
0
0
49
91
84
71
0
106
64
26
85
176
38
65
28
84
60
26
72
94
25
10
0
83
47
99
26
61
63
70
0
0
0
0
73
0
0
30
83
81
79
26
26
46
0
98
0
0
98
4
10
26
180
26
67
66
252
162
45
141
101
29
26
0
84
32
88
26
209
96
123
59
60
51
78
24
33
0
25
11
32
0
0
96
187
0
59
32
0
113
67
99
77
44
61
137
26
0
157
50
41
136
0
52
71
8
20
10
68
88
0
0
32
0
45
44
40
52
44
43
37
40
50
47
42
54
42
31
0
0
0
1
13
6
47
42
41
38
0
0
0
2
0
0
20
29
0
4
0
45
44
0
44
47
48
47
46
39
39
0
0
0
39
46
49
48
0
48
36
39
40
39
39
0
86
64
0
34
6
0
79
92
86
0
26
90
1
0
49
122
80
54
7
82
2
65
0
66
79
0
26
0
0
0
0
1
6
0
29
112
144
124
63
34
130
26
26
26
149
129
80
85
110
68
61
111
52
72
60
0
22
66
19
52
25
56
69
58
100
141
112
84
0
124
0
38
51
55
8
20
0
19
71
36
45
42
61
42
26
0
26
29
44
82
26
88
56
98
0
18
37
0
0
13
41
42
10
0
53
117
36
2
0
141
120
86
94
18
71
86
73
34
26
103
0
34
0
0
50
51
0
123
100
68
0
112
111
26
0
19
67
32
127
26
65
73
99
73
26
0
0
0
0
52
0
29
66
78
68
41
98
122
120
0
0
36
26
133
114
62
38
11
73
66
99
67
62
0
48
0
68
43
1
6
49
205
101
0
57
26
152
26
26
51
44
51
86
33
48
131
91
65
55
45
46
33
125
50
84
54
26
89
46
122
102
53
26
11
26
29
26
0
116
55
144
0
28
133
76
26
117
0
64
29
0
16
0
0
0
0
0
0
0
0
0
7
36
45
51
50
49
38
47
45
39
44
45
48
51
55
0
0
0
0
44
40
45
0
0
2
0
0
0
28
23
0
0
42
67
48
0
0
40
49
45
53
38
0
0
0
0
33
35
39
46
0
0
0
40
0
41
44
32
104
37
55
26
30
52
26
112
95
30
39
44
50
15
46
66
5
0
16
7
0
161
52
6
26
51
32
0
45
45
91
53
55
0
26
6
151
162
59
0
107
78
37
26
79
92
26
107
141
86
47
114
111
72
69
0
27
111
55
47
0
102
17
66
82
97
39
0
0
69
0
75
71
75
0
49
0
55
47
26
72
80
43
86
26
36
83
69
80
34
73
50
4
0
0
35
88
0
0
76
0
85
21
95
100
13
77
0
0
18
86
80
56
0
101
0
46
115
72
83
57
0
38
15
17
0
10
97
112
142
168
201
49
54
20
73
69
93
120
26
31
65
68
9
26
146
1
12
0
0
60
0
85
46
53
51
0
92
180
26
0
26
131
79
40
26
130
96
2
0
0
8
28
26
54
7
0
117
36
56
98
204
154
0
8
60
26
43
116
42
40
66
97
54
80
133
152
77
26
75
98
26
93
50
0
26
32
34
100
49
72
143
26
26
45
51
0
0
82
43
111
37
38
56
96
93
0
0
80
30
30
10
0
0
0
0
0
19
0
0
0
5
0
0
57
50
49
38
32
39
46
49
44
48
54
13
0
49
47
0
0
36
41
53
0
0
0
0
41
54
27
0
0
47
0
0
0
0
0
47
45
0
0
0
0
2
0
0
55
45
43
9
0
0
0
0
43
45
13
117
32
10
0
109
51
56
127
100
74
72
97
50
45
43
0
21
20
0
9
26
111
35
50
29
26
34
39
41
0
29
47
54
8
14
32
81
56
0
0
101
35
2
0
98
56
69
26
83
77
72
85
100
81
19
0
0
0
46
11
0
111
0
0
26
104
70
24
1
30
33
67
87
53
38
12
0
75
81
56
71
26
0
53
44
26
110
53
122
0
91
50
0
26
69
115
61
0
0
0
36
32
34
78
54
16
0
53
0
0
0
35
39
52
0
31
95
154
61
93
0
0
8
82
0
26
34
99
26
119
94
185
14
98
0
50
126
60
88
48
51
8
0
30
66
127
64
0
0
45
106
80
0
83
23
64
117
0
164
26
0
72
107
26
26
111
10
17
0
0
63
0
81
39
63
118
55
53
57
35
122
161
114
109
7
41
26
36
115
26
77
42
132
45
26
116
165
115
92
79
84
108
62
89
2
81
107
0
0
117
26
62
26
38
88
19
0
0
0
71
48
74
26
115
26
66
56
33
26
26
4
20
1
0
0
0
51
26
0
63
23
0
0
0
55
49
53
49
37
43
0
53
49
51
0
0
0
47
44
40
43
0
0
51
0
0
0
0
36
61
74
47
45
0
0
0
2
0
0
0
45
0
0
0
0
3
46
0
50
0
0
59
0
0
0
0
45
45
0
139
54
38
0
133
124
36
12
132
62
26
89
98
17
0
0
27
42
26
37
51
41
27
0
67
49
44
44
0
13
58
0
29
29
54
81
46
40
23
26
27
7
0
0
23
59
74
79
32
48
0
90
76
60
0
0
0
16
38
56
12
36
7
0
34
42
0
26
5
0
4
66
103
75
93
121
50
76
71
79
26
39
47
0
56
80
0
28
75
61
0
68
92
0
163
95
106
26
73
52
76
56
26
48
35
38
0
12
85
21
2
28
19
14
26
0
58
64
11
0
28
0
31
13
30
0
26
72
0
16
87
43
0
18
0
0
124
27
55
0
18
16
54
55
54
111
30
0
55
127
82
78
135
79
0
13
80
66
26
93
3
98
37
70
77
135
123
58
98
39
98
26
130
34
39
0
177
26
26
32
154
153
134
99
0
0
37
79
26
77
96
0
81
26
0
64
133
125
110
118
0
15
42
88
88
62
61
80
87
142
107
0
31
123
50
0
12
0
42
98
80
0
0
147
126
104
32
106
89
65
130
90
0
10
8
0
76
88
62
59
91
29
46
26
53
53
54
57
0
0
0
46
42
44
55
0
0
44
41
39
49
51
0
0
0
0
0
0
36
125
64
44
40
40
50
0
3
0
0
0
43
0
1
0
0
0
51
40
45
36
37
6
0
0
0
38
47
46
13
37
39
20
1
68
65
77
73
156
63
66
88
26
0
0
16
15
166
40
49
57
0
8
25
16
59
44
0
32
35
0
0
0
11
34
127
66
59
57
145
26
80
4
21
11
46
46
63
44
46
83
93
73
70
0
6
0
0
92
66
82
48
39
26
131
74
28
48
61
26
26
51
121
124
72
101
122
26
31
91
29
12
0
0
0
99
0
0
94
72
0
40
82
47
84
99
76
69
5
20
86
37
100
27
26
77
26
0
38
0
22
23
51
50
77
55
33
2
40
122
45
72
28
9
0
64
101
80
48
37
80
26
0
18
30
41
150
30
0
0
70
26
27
77
26
104
0
33
0
126
59
40
35
37
67
30
46
82
0
103
64
0
0
85
23
48
136
49
65
31
121
81
0
0
28
26
53
48
0
0
213
159
136
33
18
11
43
65
36
73
53
130
76
63
17
50
126
173
65
75
0
0
74
58
21
59
45
45
101
38
45
26
66
87
28
1
33
95
104
26
0
0
26
63
62
71
29
97
86
81
90
92
130
0
65
12
123
97
26
26
13
0
0
40
56
46
36
37
0
36
45
45
0
0
57
35
0
43
39
0
48
0
0
1
0
0
0
0
40
133
55
43
40
41
46
41
46
38
43
39
38
0
0
0
0
0
48
42
44
35
34
58
0
0
0
43
50
47
63
104
61
35
0
116
37
79
113
106
85
73
43
0
65
7
0
0
68
44
28
61
0
46
55
0
4
59
0
0
94
52
26
0
0
35
40
0
0
68
10
106
107
93
55
90
79
130
105
82
52
0
76
23
0
15
8
3
42
72
58
78
26
26
26
111
72
131
93
174
11
26
143
112
90
105
8
71
0
81
37
4
14
6
0
0
37
0
30
0
60
0
0
0
26
33
37
98
61
0
102
44
0
50
100
51
162
14
66
49
21
71
40
50
78
126
120
60
117
86
130
81
68
0
58
0
60
178
105
73
93
14
57
40
10
117
45
1
79
20
30
119
26
28
102
0
28
45
37
22
57
79
92
75
116
62
0
30
63
95
35
0
0
42
0
12
16
11
19
0
34
15
0
21
17
7
0
26
132
48
0
181
138
117
26
97
89
104
56
151
0
14
181
62
0
0
88
66
148
108
26
47
39
0
84
53
67
69
0
26
63
65
44
76
61
60
116
0
35
37
26
0
1
28
39
26
34
48
26
26
26
26
0
125
0
0
81
81
154
110
42
56
74
80
26
42
37
50
57
43
50
55
62
49
0
0
28
56
41
37
38
48
0
0
5
0
0
2
3
0
129
49
46
40
42
0
42
41
36
45
36
32
0
0
0
51
44
40
43
46
38
33
58
37
0
0
0
51
47
28
0
21
0
77
77
29
42
166
22
0
84
65
0
0
0
0
0
0
71
17
19
45
0
40
32
46
26
27
0
0
56
0
99
9
52
0
0
0
96
89
87
61
39
0
59
28
0
35
101
34
41
33
24
0
51
127
62
54
98
29
43
116
28
66
0
64
0
76
118
107
139
95
99
89
36
88
7
51
0
106
32
43
34
8
0
39
0
31
66
79
102
25
60
89
26
87
85
0
47
95
0
54
27
60
127
38
20
0
0
0
0
11
61
36
22
78
67
26
78
67
51
109
86
61
108
0
23
26
75
104
120
54
82
71
73
19
0
113
52
112
75
26
39
26
99
32
87
69
0
26
71
132
67
25
25
87
53
45
60
126
48
0
58
0
0
43
10
4
0
50
0
25
0
24
0
0
78
83
0
61
231
137
58
78
0
65
33
167
26
43
12
0
157
23
0
26
47
0
143
100
0
8
7
141
33
38
44
98
102
168
26
136
57
42
0
0
26
70
82
83
19
0
26
58
26
90
54
31
57
0
17
0
0
1
0
0
59
0
0
14
76
59
17
30
16
28
70
57
40
51
41
68
0
0
43
51
44
0
38
43
0
0
0
50
0
0
4
0
0
107
44
47
36
47
0
0
0
0
0
0
0
32
41
0
0
0
36
0
44
39
38
2
0
0
0
0
49
44
52
0
18
0
62
56
3
45
188
0
43
45
53
14
26
47
36
40
77
140
41
48
94
75
83
61
71
7
26
0
0
79
52
47
90
0
36
0
52
59
26
0
0
21
0
4
0
136
30
46
85
0
0
0
46
49
0
0
38
26
58
26
122
26
49
58
0
0
75
115
34
191
126
80
146
107
103
59
65
3
77
87
71
63
54
73
75
90
84
87
68
26
26
45
12
14
0
31
0
0
4
11
44
58
70
57
27
33
22
49
25
0
8
0
50
63
45
90
39
77
123
140
68
164
76
49
46
81
41
99
45
116
98
109
69
62
0
66
39
114
119
60
93
3
10
0
135
75
38
0
0
88
26
100
26
44
86
58
64
61
145
33
26
0
0
0
52
59
0
0
55
24
69
0
12
0
35
26
148
56
7
207
134
122
42
0
64
131
131
65
90
58
26
94
88
11
47
31
26
158
107
17
1
69
35
38
27
85
67
40
44
40
26
28
42
0
6
0
66
0
0
0
0
102
38
26
98
26
127
68
0
95
0
0
0
49
0
0
0
37
0
0
24
22
35
0
26
54
51
38
50
34
68
0
0
0
42
42
0
40
41
35
0
40
45
49
0
0
4
0
52
0
0
0
1
0
0
0
0
0
0
0
30
0
0
0
0
39
0
0
38
41
0
0
0
0
0
0
0
18
0
61
20
105
28
55
69
86
15
26
26
26
53
54
10
0
62
87
85
8
42
56
13
0
122
62
70
0
0
0
1
53
90
132
67
36
0
15
30
59
0
0
0
0
0
0
147
69
85
103
26
49
3
0
0
0
26
51
170
26
26
81
54
81
32
0
0
61
26
26
80
74
100
175
112
142
76
88
17
180
68
88
46
0
126
88
62
0
90
70
82
38
111
0
5
0
79
33
50
29
87
34
110
100
48
24
62
0
41
0
52
18
41
88
0
70
35
53
26
62
140
94
70
61
62
28
109
62
61
130
101
77
83
93
30
22
0
120
76
67
71
31
0
94
0
108
188
55
0
0
38
28
2
0
41
70
65
77
80
66
97
50
0
0
2
0
26
153
45
43
82
101
0
29
0
26
76
26
34
20
251
158
87
41
26
0
57
98
26
94
0
130
52
41
103
20
8
0
143
78
23
99
62
0
25
67
78
80
26
26
26
26
60
0
0
0
0
0
48
24
3
31
37
98
26
28
27
43
43
19
41
122
0
87
100
0
29
43
22
0
38
0
25
62
48
110
57
36
48
79
44
80
0
0
0
44
58
33
34
0
0
0
0
45
40
37
0
0
4
98
0
45
49
0
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
35
43
46
39
0
0
0
0
26
0
65
109
74
41
58
94
44
0
26
41
30
24
6
0
122
0
0
86
0
0
17
9
15
99
127
97
0
1
35
43
73
128
109
209
39
38
0
24
23
0
0
0
0
44
0
67
74
110
45
108
66
70
26
30
117
26
69
120
26
131
56
108
78
73
0
18
7
67
64
72
77
172
120
138
152
87
100
76
57
35
93
71
121
72
35
96
28
58
176
96
66
36
53
0
0
3
36
32
82
111
63
147
131
0
61
7
0
20
57
40
1
72
43
6
0
3
45
69
24
103
53
74
41
0
0
66
76
0
81
63
0
102
77
85
63
0
117
99
165
0
97
76
46
68
39
5
61
29
13
0
8
17
0
77
106
100
89
119
32
77
0
0
104
64
0
37
141
83
61
132
22
41
26
0
15
120
0
26
0
207
135
133
41
81
9
16
109
30
46
0
26
103
26
95
50
143
123
63
76
49
67
0
0
72
91
149
74
66
68
60
43
8
24
0
0
0
8
82
33
43
81
36
98
63
85
0
26
43
0
34
71
26
100
100
1
47
5
41
41
0
48
26
112
140
87
99
33
82
84
65
58
47
32
0
0
43
42
42
0
0
0
0
0
0
42
51
41
73
92
0
42
53
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
46
37
45
49
41
43
0
47
0
35
97
73
20
56
26
54
132
42
0
21
26
0
14
0
55
92
95
0
90
0
25
0
38
92
93
112
87
0
45
120
84
78
144
145
40
170
83
10
30
29
0
0
0
0
99
22
66
58
73
119
26
96
64
48
38
64
26
26
140
105
62
26
155
109
111
39
0
63
104
83
32
121
67
52
70
123
88
35
73
91
82
68
135
94
126
72
38
91
85
79
108
26
42
57
0
22
0
19
0
52
29
118
30
154
95
0
0
47
85
0
13
34
10
59
88
71
35
64
57
72
76
5
75
0
5
0
102
69
39
0
0
0
21
39
105
4
27
73
60
71
13
29
78
0
50
50
0
96
127
58
0
0
0
25
105
97
117
47
41
0
83
1
0
57
67
178
27
81
57
25
41
0
0
2
0
48
0
0
0
0
210
90
86
15
0
0
0
101
34
0
0
40
87
27
49
48
108
46
26
211
114
7
90
114
117
76
88
11
0
4
120
128
22
47
0
0
28
73
56
26
137
59
26
38
132
0
44
26
102
1
34
0
0
19
0
4
52
32
46
0
0
8
94
63
169
109
81
41
135
35
39
0
0
41
52
0
41
51
51
0
0
0
0
42
39
46
51
36
101
87
45
45
53
44
44
0
45
48
45
0
0
0
0
0
0
0
0
0
50
47
0
0
49
39
41
0
0
44
106
113
26
57
111
51
26
196
0
88
26
30
38
0
20
43
43
120
72
0
0
27
59
83
28
51
101
154
56
11
178
123
74
19
52
97
75
49
42
0
0
0
0
0
0
0
0
0
92
106
53
42
26
58
93
65
54
84
135
115
0
27
26
26
76
26
39
55
0
26
0
0
18
1
0
69
72
61
22
29
29
83
72
55
39
26
73
33
35
26
95
0
11
9
0
0
0
33
99
0
26
177
47
47
26
0
67
95
52
33
85
26
104
86
54
6
69
155
64
26
76
44
104
38
19
67
124
26
97
35
0
65
0
60
75
48
22
48
0
130
0
38
77
52
75
0
2
0
101
40
88
42
0
0
80
110
0
49
26
0
0
87
0
98
132
132
136
71
71
26
16
27
26
22
107
0
9
0
0
0
0
194
85
45
59
0
0
0
126
26
77
27
45
0
5
118
0
62
92
26
33
162
78
26
26
26
95
26
0
0
0
86
150
3
102
0
5
106
26
49
107
76
54
142
41
101
0
68
0
0
55
0
72
67
0
0
0
0
78
33
0
0
0
63
74
75
119
152
36
32
33
64
95
6
0
0
0
0
47
48
44
37
0
33
53
53
41
45
27
133
72
55
60
41
49
46
1
36
38
43
48
45
38
33
0
51
46
56
49
47
0
39
0
48
41
39
39
0
0
88
120
0
28
20
0
83
165
35
133
26
63
45
63
55
85
26
14
83
0
1
61
53
0
24
52
66
133
0
0
102
55
26
0
12
24
42
0
0
40
8
53
0
0
35
0
1
49
59
34
26
0
50
2
0
26
30
50
94
83
0
0
72
27
50
26
46
0
26
24
19
6
0
69
2
77
91
64
13
22
96
26
0
87
127
46
34
29
61
27
50
9
6
0
26
46
26
36
38
141
0
105
16
26
82
25
3
55
178
0
163
0
39
30
0
65
82
111
62
67
29
69
66
0
34
67
103
26
76
11
29
46
55
70
74
48
12
0
0
16
90
57
31
45
45
39
21
31
26
63
38
55
0
20
93
109
115
59
166
45
26
136
72
90
77
92
68
74
87
91
31
0
52
35
63
60
0
0
139
10
62
208
98
79
93
59
88
0
33
82
54
68
30
62
65
32
0
100
39
26
48
65
121
29
52
41
0
36
0
0
0
26
52
0
163
103
83
66
38
91
109
128
0
31
38
89
0
0
32
0
9
51
26
10
48
34
0
0
0
37
2
0
3
35
115
74
48
57
105
99
48
31
79
109
50
4
7
4
0
45
45
0
0
0
0
46
40
57
26
121
57
53
60
0
0
36
65
38
38
45
51
50
41
35
38
48
46
50
48
45
0
0
0
49
0
0
0
0
0
80
35
64
2
14
68
149
155
67
95
25
40
27
70
37
56
0
27
0
0
90
100
130
73
71
101
61
69
0
36
112
74
0
162
58
0
23
24
0
44
109
88
62
110
47
0
0
37
41
40
0
48
131
0
66
40
125
26
33
19
33
69
37
66
26
62
10
37
38
91
45
0
28
55
39
36
86
55
48
0
0
0
0
51
73
36
29
32
26
33
7
0
36
98
84
162
77
84
123
31
0
0
106
54
122
77
26
76
37
9
58
21
16
0
0
69
60
64
6
87
0
9
0
64
64
72
0
40
43
0
62
18
89
83
20
35
26
101
0
66
72
63
87
21
68
83
50
47
60
43
106
107
77
71
83
128
154
70
125
116
111
61
90
40
9
45
0
0
29
33
41
0
11
0
0
0
5
48
81
114
0
203
99
53
0
9
24
0
0
51
0
57
0
0
26
110
0
86
85
51
58
130
135
31
28
99
9
107
15
0
47
88
0
77
26
10
75
170
64
0
104
99
46
98
85
38
73
0
0
46
0
26
49
53
92
120
5
0
26
48
0
0
64
46
26
81
77
73
134
99
62
0
0
14
7
20
7
0
0
46
49
42
44
47
0
0
46
56
0
106
46
49
59
0
0
33
75
38
37
47
50
47
53
40
38
46
51
40
44
0
0
0
0
0
0
0
38
0
0
0
91
39
55
48
97
111
63
62
78
11
4
45
0
7
16
26
59
41
45
109
70
41
73
79
75
14
60
0
0
65
0
99
84
122
15
20
8
0
0
21
0
75
4
1
14
0
29
28
0
63
11
144
56
58
35
40
0
27
13
27
60
32
0
53
48
53
63
49
24
25
64
73
104
76
34
185
107
82
0
0
58
0
40
56
70
51
61
40
76
26
63
151
64
157
97
80
46
103
47
85
32
59
14
97
101
33
53
74
26
85
28
0
5
128
26
53
59
81
77
15
10
21
1
110
36
72
13
45
0
27
70
92
87
56
0
48
64
44
32
2
0
154
26
65
98
0
126
43
95
90
56
105
26
64
155
130
58
46
104
72
151
65
0
0
0
49
0
26
100
13
85
24
159
79
114
63
26
0
104
84
191
87
74
0
0
0
78
22
25
82
49
62
26
86
12
2
54
75
119
30
25
168
114
93
51
74
73
42
0
5
80
0
79
69
59
27
15
64
0
91
26
68
41
79
36
30
5
60
12
54
125
79
62
103
152
58
41
100
35
15
40
22
82
93
45
82
75
75
100
118
26
0
0
49
21
0
0
0
49
53
45
0
1
43
49
52
43
35
98
42
0
8
0
0
0
27
0
34
46
46
40
63
45
38
45
58
32
41
0
0
0
0
39
45
36
32
42
45
66
29
78
109
14
102
110
37
1
20
0
6
12
8
21
0
102
53
0
108
19
0
22
65
42
12
30
72
20
4
18
0
5
14
132
40
28
177
74
47
33
31
5
26
32
38
26
26
78
76
40
2
49
52
50
55
33
54
67
70
73
144
118
11
26
26
93
99
108
60
38
4
53
39
94
34
41
82
76
33
0
7
2
47
80
55
35
99
29
79
127
77
89
54
50
26
58
0
2
107
42
62
185
0
17
0
70
57
82
0
62
97
0
111
8
51
138
9
79
0
55
28
66
0
35
0
43
47
74
66
70
128
97
26
31
62
100
47
0
52
30
59
49
26
42
45
26
114
0
118
86
112
113
75
61
97
80
134
26
26
102
93
0
23
0
0
0
133
60
112
0
26
81
83
116
69
14
52
0
15
49
172
123
48
0
26
44
90
35
96
75
26
26
26
116
0
54
133
0
1
71
54
80
129
84
26
123
48
43
0
0
20
0
26
16
0
23
0
45
0
77
0
26
0
68
72
0
0
20
8
90
127
28
26
134
115
124
40
79
48
47
11
26
59
26
13
92
118
91
109
100
29
61
122
94
10
32
0
43
53
33
0
8
0
0
0
64
36
99
63
0
2
4
0
0
0
0
0
0
0
0
0
0
45
37
40
48
40
0
0
0
0
0
38
37
37
31
45
46
60
34
60
117
116
0
51
88
53
26
62
13
0
14
0
22
0
0
0
0
27
54
97
26
0
7
112
13
61
41
5
0
0
0
52
48
30
86
73
38
67
40
0
19
121
12
44
44
33
45
72
133
0
0
46
26
80
108
13
0
16
1
66
0
155
111
26
47
48
54
38
1
0
0
0
26
38
97
51
0
93
55
65
15
0
54
0
14
53
41
57
48
26
90
64
90
77
68
42
26
35
34
62
67
0
0
39
95
127
0
35
118
138
91
72
77
130
51
65
58
98
7
20
73
24
101
35
188
134
107
73
73
51
90
26
96
26
40
0
50
26
130
37
108
112
82
0
106
0
79
90
38
0
92
173
81
99
75
83
118
70
88
0
65
144
7
74
26
83
113
91
0
26
62
53
36
10
26
61
110
42
193
108
123
7
76
26
120
174
99
39
50
40
67
58
20
75
70
63
0
0
41
59
96
163
108
2
0
0
118
63
104
14
47
118
74
11
35
55
21
16
75
116
91
18
26
26
88
11
0
46
44
36
58
26
62
36
26
29
93
26
104
225
67
26
26
26
0
74
115
171
26
26
34
67
6
35
63
0
69
0
24
0
0
0
0
26
68
139
4
6
0
0
0
0
0
0
0
0
0
46
0
39
51
54
56
43
43
52
44
0
0
51
52
51
52
50
42
43
31
54
40
139
94
26
84
38
37
68
50
120
7
8
26
32
60
121
34
20
23
33
35
46
0
11
115
41
37
74
0
0
40
26
48
71
101
85
70
68
81
51
94
165
54
25
90
57
46
51
49
40
48
38
26
0
6
0
0
0
15
24
64
0
0
56
82
54
109
33
84
26
42
71
0
58
88
83
0
0
76
0
0
0
33
0
20
92
26
81
99
167
31
99
176
128
66
75
42
87
31
51
51
142
18
0
0
89
115
27
0
0
106
36
50
84
97
25
13
0
6
37
26
0
0
90
90
127
89
134
50
159
100
94
17
0
89
112
0
26
0
98
64
89
87
26
0
60
0
157
107
89
26
58
70
33
93
26
78
46
163
36
59
0
96
128
165
80
0
103
58
26
0
86
157
28
26
26
26
96
0
175
94
25
56
45
66
68
192
140
29
41
34
81
26
26
85
29
106
0
0
0
64
61
138
43
14
0
0
117
22
119
26
82
90
26
126
77
115
0
21
106
66
36
66
26
132
122
18
83
36
76
26
37
26
27
92
91
10
94
122
31
0
137
97
0
0
0
58
107
88
43
26
26
100
18
0
0
63
11
41
14
81
56
1
0
13
53
125
0
0
48
0
0
0
0
0
0
0
0
0
0
42
0
41
48
45
53
48
45
0
0
44
47
46
48
47
42
38
101
47
77
140
28
76
41
3
6
6
0
54
7
63
43
54
58
130
65
22
88
0
4
71
84
0
44
30
49
23
0
65
33
62
1
90
96
79
50
66
36
64
104
26
58
107
66
26
32
74
159
36
46
30
55
112
33
43
101
7
34
0
145
0
0
34
105
27
79
118
77
44
0
10
4
9
65
3
0
0
19
63
49
48
8
37
64
103
38
101
26
30
110
0
151
56
82
67
113
85
64
0
52
64
105
66
0
57
205
26
0
54
38
149
60
74
52
10
26
26
26
71
26
0
43
57
81
108
29
108
40
25
88
88
74
63
79
138
5
0
0
68
74
40
46
109
68
13
30
60
108
35
56
67
74
26
128
55
109
55
81
26
86
0
97
45
33
62
25
21
1
0
0
26
38
80
165
99
46
27
6
157
109
55
0
61
0
76
141
154
57
84
61
40
26
85
116
15
24
9
46
0
30
26
38
114
11
41
19
26
0
110
0
0
105
33
115
65
64
1
126
74
68
0
62
27
41
26
0
0
111
26
30
58
65
46
89
50
50
0
65
81
43
97
120
69
26
146
164
79
126
26
35
26
53
49
86
119
123
59
16
31
32
55
0
0
2
153
109
32
41
50
40
0
0
0
0
0
44
42
0
0
0
0
0
0
45
46
0
61
57
0
0
0
0
0
41
44
38
81
121
142
113
34
38
26
28
16
23
26
0
8
96
26
58
57
45
44
0
31
52
82
55
63
0
0
56
34
0
41
50
0
31
103
176
81
138
123
79
49
49
74
113
42
65
112
26
26
62
161
42
26
37
95
87
84
103
62
68
54
11
21
28
13
20
0
27
88
81
119
102
11
0
54
0
55
5
3
25
60
133
51
26
61
5
0
0
13
0
76
45
77
17
0
30
107
41
52
28
124
0
32
34
103
0
35
26
144
31
30
8
77
124
58
59
114
71
12
59
133
130
0
33
40
26
76
162
113
77
89
78
94
79
5
73
36
159
41
3
55
68
26
65
51
99
44
90
61
53
135
32
53
28
59
5
63
20
0
113
26
20
27
134
138
31
12
15
72
17
33
22
0
20
26
61
142
94
27
2
46
152
106
138
51
164
53
8
81
15
0
13
0
15
0
111
26
0
9
0
132
17
5
96
26
149
66
57
0
0
53
68
0
0
0
105
102
0
72
0
36
0
54
26
63
77
19
7
0
0
164
46
27
21
28
5
32
0
69
27
4
89
117
69
4
111
61
76
82
182
81
29
69
17
56
151
30
87
146
151
0
51
59
10
37
32
67
129
58
0
0
0
14
0
32
35
0
0
38
43
49
52
44
38
39
39
42
50
40
56
55
0
0
0
0
0
41
47
42
56
99
92
113
3
58
62
0
18
29
0
59
47
46
104
56
27
26
0
0
118
93
133
92
108
30
0
45
81
31
0
0
82
90
135
199
57
41
99
42
77
38
80
113
93
66
53
129
49
43
42
27
56
38
68
26
58
37
26
74
46
72
26
51
0
122
0
11
39
111
169
94
0
18
0
50
104
0
0
0
0
81
40
76
0
39
28
47
25
75
26
100
62
0
78
60
124
36
26
87
34
60
0
29
35
4
54
26
98
105
62
105
86
108
135
51
26
25
4
10
69
63
22
19
0
0
28
169
141
52
22
129
136
63
42
34
102
216
65
0
53
12
50
40
86
0
58
100
26
75
82
42
0
26
41
15
83
14
27
31
72
34
46
141
46
54
136
121
27
0
9
0
0
76
124
48
79
125
14
59
43
105
167
86
106
0
86
0
32
21
9
8
27
10
23
116
26
26
162
26
0
21
37
100
118
19
75
61
33
0
22
39
97
36
0
73
33
89
135
11
19
0
90
26
26
85
54
0
4
0
78
70
14
0
35
0
37
3
26
128
78
93
5
33
75
45
105
0
9
43
26
71
0
0
0
54
32
0
68
118
26
26
0
0
37
66
93
125
61
14
41
0
7
46
36
41
0
0
36
46
50
51
49
43
44
37
0
2
37
41
43
0
0
0
0
0
44
51
44
74
95
35
0
61
0
29
0
23
0
0
33
67
34
73
25
52
59
0
92
105
97
83
86
92
87
145
47
0
0
0
0
96
91
63
106
0
0
33
85
139
67
54
45
37
76
66
26
133
56
101
69
78
65
33
48
37
57
43
70
84
123
26
0
0
0
0
0
0
46
12
0
0
18
0
59
30
0
0
20
15
82
97
84
20
0
0
30
17
26
26
83
63
104
26
70
99
96
47
42
0
3
0
17
0
95
34
76
30
43
92
93
152
40
46
47
102
13
71
2
93
63
0
123
4
0
0
0
30
57
156
44
71
2
55
0
116
58
0
56
65
97
67
89
0
14
27
54
26
77
99
63
7
0
27
0
96
0
47
1
120
74
37
44
71
144
48
54
0
26
0
2
20
68
26
126
141
42
136
14
33
55
119
100
15
26
49
59
34
34
5
0
59
0
40
0
0
33
78
40
68
40
86
54
214
58
64
88
44
96
0
74
0
28
0
61
8
58
2
0
63
89
63
82
36
26
0
57
200
90
2
0
19
12
0
108
0
101
26
34
55
64
14
0
124
88
47
23
0
68
26
127
54
84
23
41
14
75
65
26
60
94
0
39
34
10
252
141
58
41
25
0
0
2
35
26
41
34
36
38
50
47
56
41
40
40
0
43
32
39
40
0
6
9
0
0
51
55
53
53
109
29
58
28
62
58
18
0
0
0
105
56
57
7
22
84
57
51
54
46
79
44
58
26
79
59
103
0
1
73
0
96
35
84
59
83
37
9
20
95
86
41
43
8
35
77
40
69
26
100
47
26
31
27
36
26
82
26
45
2
26
31
0
0
0
0
50
44
44
22
50
55
27
26
58
101
119
26
49
39
43
89
53
0
0
0
18
0
26
0
0
20
51
48
26
56
65
156
76
0
38
0
0
2
94
26
26
84
64
77
106
136
70
111
26
32
98
76
31
73
67
0
91
22
19
17
120
17
41
174
145
71
64
91
0
57
70
40
102
35
96
0
62
17
0
33
1
0
80
120
77
0
0
35
29
37
27
0
10
169
50
178
26
203
86
108
0
101
205
26
114
68
39
30
118
62
26
93
37
18
27
165
136
61
64
98
24
23
48
29
26
26
0
69
53
0
45
1
3
90
35
82
34
56
3
2
18
115
59
21
16
0
30
0
38
115
20
92
45
37
35
97
152
49
26
59
25
116
109
47
48
15
165
0
58
19
156
82
26
64
44
73
37
110
86
96
105
61
40
83
0
145
119
72
73
36
61
15
84
26
38
25
44
41
43
220
104
35
41
47
10
28
81
8
0
53
29
38
0
0
50
40
45
0
0
42
40
36
41
40
42
0
1
0
0
44
43
47
75
26
61
116
26
7
31
66
6
38
0
105
54
85
45
50
146
60
102
38
72
37
58
114
85
76
62
59
0
12
85
36
103
77
58
66
54
43
37
0
98
78
39
26
104
67
86
67
77
26
102
30
0
23
39
42
0
0
0
0
0
0
29
0
53
52
40
0
15
15
134
56
51
34
48
69
89
71
60
62
166
49
136
26
36
105
62
129
64
48
52
77
22
21
72
51
0
0
0
83
60
16
34
57
29
32
72
80
90
110
81
144
101
15
44
74
113
29
133
54
29
22
0
0
63
29
0
29
133
141
58
164
51
26
38
31
89
78
0
13
76
112
0
11
160
0
0
34
51
0
66
0
0
59
0
121
50
0
4
72
186
111
169
183
42
59
117
0
100
65
116
80
127
39
26
54
73
26
143
133
0
43
173
135
43
0
9
64
0
97
115
37
26
14
83
26
31
54
42
26
70
41
45
36
52
39
0
0
140
99
3
28
0
0
47
26
3
16
58
44
26
59
80
94
43
62
79
66
26
118
26
52
0
24
0
0
44
0
59
0
92
57
2
0
0
0
90
23
55
12
139
0
144
83
94
44
53
26
79
28
26
122
143
1
31
119
194
113
59
90
80
98
67
80
1
0
10
35
45
55
0
0
32
53
0
0
38
38
40
42
39
41
0
0
0
0
38
39
44
0
0
0
35
0
44
47
117
37
77
0
17
52
64
91
81
65
75
104
32
76
86
4
119
17
36
96
47
0
28
0
0
98
52
154
71
68
83
53
23
80
75
75
26
160
50
81
89
75
115
44
31
14
34
65
9
41
11
0
0
0
0
0
15
0
32
43
27
35
97
0
78
88
0
0
77
39
27
28
31
22
0
0
54
101
96
2
12
104
32
53
69
127
53
54
0
0
59
28
26
26
35
48
41
42
103
37
79
40
174
134
126
95
82
0
41
104
40
62
3
39
56
33
0
1
24
32
34
54
116
23
64
94
26
37
104
44
107
36
91
64
6
113
73
71
76
0
3
0
26
102
61
37
60
0
95
0
0
0
107
26
129
122
0
112
102
95
40
48
4
72
122
194
43
0
75
0
41
48
101
34
101
204
100
58
0
0
69
0
75
113
26
54
0
148
0
1
0
28
85
55
73
53
77
40
26
26
26
91
91
37
95
0
0
42
27
50
101
26
30
35
141
26
47
0
26
0
26
127
42
26
43
0
14
0
0
28
72
102
31
107
41
60
26
103
2
9
0
111
51
61
31
112
88
30
60
96
0
48
0
50
26
97
55
41
207
161
151
104
47
82
139
134
6
56
26
0
0
0
50
42
38
41
56
46
0
0
40
0
0
0
0
0
0
0
0
41
46
43
36
0
30
84
29
18
26
111
102
54
137
0
24
106
67
87
72
32
26
55
112
69
5
86
0
0
67
132
0
32
51
19
14
2
15
9
27
60
70
140
0
90
104
69
72
35
67
67
55
93
26
38
43
85
34
37
20
37
17
10
0
0
49
27
56
48
97
57
47
27
43
58
0
0
58
46
12
51
40
37
79
13
27
51
38
77
60
26
31
67
16
71
33
0
0
6
42
0
77
52
104
26
26
45
35
85
26
32
109
38
154
41
83
71
43
43
58
73
77
110
58
46
107
8
16
4
42
72
55
0
123
99
38
125
74
31
26
101
43
5
42
107
148
46
39
130
119
55
88
67
50
83
71
45
26
67
0
6
5
104
51
58
87
0
107
93
59
29
7
86
0
156
123
0
3
0
20
163
26
76
63
96
236
121
24
0
0
0
35
46
0
0
0
28
104
0
4
3
0
104
47
60
50
42
57
32
64
82
76
143
57
143
70
113
0
0
26
26
97
143
64
36
28
71
0
31
0
6
20
0
54
32
93
0
58
0
118
84
62
77
69
98
26
85
119
83
31
0
20
62
78
78
98
28
45
38
47
53
0
89
86
52
66
107
121
254
152
91
81
75
51
10
88
21
92
58
0
0
0
38
45
0
0
45
50
39
35
0
0
0
0
0
39
42
0
0
47
50
39
14
0
59
39
50
3
42
30
105
0
218
26
85
114
122
163
141
33
54
69
145
89
0
0
68
26
29
126
36
68
50
0
0
14
8
0
44
17
15
128
0
27
34
26
34
80
29
78
97
9
7
18
0
57
75
26
81
44
62
0
0
0
77
17
92
0
69
28
22
0
91
55
40
50
12
6
0
82
73
110
22
0
0
79
68
52
44
25
26
116
56
86
29
0
34
38
7
6
91
34
117
156
66
96
61
26
73
55
72
47
26
73
84
76
87
37
0
116
71
94
69
76
42
103
0
6
0
48
135
80
85
92
106
102
29
26
26
72
26
46
61
206
77
82
74
103
113
0
0
104
74
32
132
0
26
45
79
0
114
60
111
38
2
51
61
88
73
73
78
44
52
159
26
0
56
0
107
115
114
83
26
86
238
137
0
0
10
9
26
54
0
93
146
122
59
0
1
47
43
86
49
59
72
67
140
98
102
77
26
135
56
46
103
28
0
26
0
134
90
129
0
0
31
181
0
0
0
0
0
40
26
26
113
0
106
144
19
153
91
125
77
0
64
90
84
147
77
65
0
83
39
26
132
59
76
49
70
59
0
28
87
32
119
55
240
200
149
76
87
31
52
71
122
87
92
54
0
10
0
39
0
0
0
0
50
40
40
46
40
39
0
0
40
46
31
48
0
43
34
0
36
61
5
21
8
26
43
76
116
149
109
28
43
22
60
67
101
138
66
26
26
69
83
37
87
99
26
83
4
0
9
0
16
18
0
19
0
0
41
6
39
71
0
29
74
26
0
68
57
14
53
3
73
147
31
41
99
0
0
9
10
30
28
20
81
88
87
0
21
10
79
90
87
0
47
43
53
104
26
46
26
104
79
9
10
61
0
0
103
50
26
82
7
108
41
42
86
26
112
0
0
43
63
26
51
52
55
71
26
28
149
103
48
0
48
0
32
18
1
11
41
104
29
88
18
16
66
133
26
102
35
48
105
37
124
83
26
131
176
122
72
50
0
61
69
6
76
51
30
0
23
59
31
20
26
74
59
26
21
110
37
0
91
71
5
26
63
0
37
0
26
118
109
39
26
126
120
26
98
74
67
255
147
78
2
0
10
55
0
0
99
157
0
48
74
43
71
35
102
21
7
57
174
26
45
111
66
56
53
86
127
43
49
108
67
52
26
37
71
32
33
0
0
102
32
51
0
3
46
48
26
138
26
41
23
71
50
98
47
53
34
0
0
77
82
28
27
32
4
12
61
26
35
28
31
56
118
115
90
43
124
88
148
186
159
85
49
54
26
67
0
0
50
0
14
0
44
40
40
45
7
0
4
51
46
0
43
38
47
0
0
0
0
38
42
0
40
0
45
22
50
31
0
90
26
57
53
26
81
169
43
23
44
133
76
26
49
171
34
72
0
55
52
9
61
30
97
44
79
5
0
0
0
0
69
55
67
25
118
104
70
61
0
10
0
3
32
47
93
0
0
48
0
88
85
39
0
106
6
0
51
1
7
26
17
0
9
0
75
147
0
0
122
90
89
42
86
43
98
80
112
107
77
59
38
20
122
91
72
30
139
26
59
31
92
40
29
0
83
0
12
0
38
40
72
106
73
0
19
132
123
83
0
0
0
18
27
62
36
41
12
44
0
27
62
32
69
56
70
95
119
104
96
122
7
26
0
123
130
76
86
104
64
57
24
69
69
37
46
33
96
26
72
107
123
49
26
109
162
0
0
98
93
26
50
124
114
87
53
47
48
19
26
29
98
121
64
78
42
112
255
174
65
66
32
0
55
48
54
164
49
44
96
43
26
53
38
89
46
74
33
184
58
0
164
122
51
51
26
20
160
76
119
80
2
0
0
0
26
47
0
33
89
38
116
54
42
27
30
29
72
111
85
129
0
97
176
108
53
46
58
0
27
59
84
20
31
0
2
0
0
10
84
58
26
55
1
97
4
36
83
255
167
65
86
53
28
165
63
132
123
58
6
27
0
26
48
50
20
22
0
0
0
0
0
0
0
2
51
44
0
0
0
0
45
0
0
11
24
76
75
0
76
37
8
17
0
26
199
130
99
53
46
31
31
48
141
118
130
52
0
9
16
88
94
93
0
119
35
43
0
0
21
44
39
26
125
128
106
44
92
56
13
114
0
10
0
62
0
0
9
0
82
22
34
51
42
0
15
0
31
11
77
0
44
19
75
75
94
106
101
62
75
80
110
56
38
107
102
110
0
68
67
32
0
32
26
26
41
124
0
26
58
42
56
59
0
0
35
5
41
59
104
0
48
8
35
47
38
113
190
49
35
8
3
0
0
42
54
26
87
0
73
41
35
130
89
26
122
86
57
46
76
26
64
36
108
64
98
93
108
0
37
90
110
0
36
0
34
0
0
110
26
0
43
26
120
123
0
0
9
25
30
26
122
121
75
50
46
87
114
26
67
109
51
55
57
0
0
183
168
38
124
93
0
0
51
68
26
27
75
45
82
75
76
69
39
54
106
26
150
47
54
43
90
59
26
78
58
154
150
42
1
27
46
2
0
107
38
16
111
121
32
43
79
61
27
51
66
26
49
40
26
157
35
5
33
41
73
61
0
92
26
67
26
0
4
0
0
46
56
119
139
131
6
44
106
66
154
49
222
68
0
117
26
57
139
113
84
101
94
0
25
0
0
30
53
0
11
0
0
0
12
33
0
0
0
43
46
40
39
46
43
45
0
0
15
9
7
61
64
44
37
17
8
0
0
116
159
31
19
104
19
44
105
71
69
106
98
63
0
36
62
81
26
141
43
18
158
74
13
0
35
33
6
58
17
73
60
84
71
16
33
0
0
8
52
29
7
5
0
34
61
38
0
60
32
0
10
25
75
73
77
85
40
57
80
59
154
76
52
0
40
121
26
98
67
77
13
0
83
24
42
116
40
41
27
77
56
0
54
64
67
57
41
68
0
0
0
84
35
47
0
45
7
0
9
36
9
77
34
38
67
0
0
67
0
76
0
87
0
27
90
55
97
62
38
84
58
96
98
0
34
0
6
29
0
52
83
33
61
58
83
58
22
0
0
130
49
0
44
0
0
26
68
83
40
78
0
45
0
82
26
97
29
96
49
45
70
14
16
26
48
0
48
101
38
0
148
186
50
68
0
0
0
130
26
26
95
35
30
71
52
26
13
0
48
43
92
93
27
17
44
74
30
57
58
93
50
112
96
39
81
64
6
17
130
106
17
9
26
54
118
103
69
17
3
7
4
11
31
26
54
18
0
68
88
114
107
86
96
65
11
0
26
5
96
0
60
40
0
0
0
55
62
33
94
26
208
186
74
74
41
32
126
26
46
26
53
32
0
0
105
0
0
29
28
15
48
0
0
2
0
0
0
48
41
47
44
42
46
45
0
0
0
55
43
77
141
60
75
63
33
0
12
2
0
177
85
86
90
44
82
98
62
81
105
83
46
14
12
13
41
26
83
49
0
35
36
7
0
56
132
32
36
32
14
0
24
92
64
66
49
84
0
36
40
64
63
4
58
105
110
0
47
0
26
12
21
10
9
60
32
100
44
37
60
45
26
0
0
202
0
6
1
77
0
15
35
43
102
77
101
73
61
97
107
0
49
77
46
112
92
74
168
70
0
3
0
14
74
26
84
0
26
54
95
57
61
45
26
31
0
36
109
33
72
23
34
15
7
83
15
18
0
77
56
55
147
32
104
0
0
33
115
58
15
51
97
135
97
56
87
89
0
23
94
0
0
63
0
0
56
47
75
10
61
89
0
0
62
77
58
14
0
11
53
15
0
20
49
37
0
0
70
71
2
104
215
78
109
0
64
0
63
76
103
43
47
29
69
0
47
0
20
22
109
0
136
26
108
58
96
49
27
60
103
165
121
190
125
37
87
150
41
27
0
21
27
26
98
0
95
16
161
0
0
0
30
0
0
0
58
0
87
44
167
64
132
52
54
55
23
68
85
76
0
56
0
53
11
0
81
83
56
69
189
249
99
109
58
59
48
111
42
6
70
16
81
74
0
0
0
33
43
0
0
81
58
47
3
12
0
0
52
45
45
0
0
44
45
0
0
0
27
60
0
0
101
82
79
42
0
23
0
44
0
203
55
54
82
65
76
61
48
64
99
144
0
0
91
51
95
103
41
21
62
52
29
53
26
58
103
31
39
0
54
0
92
27
68
50
0
55
0
20
93
38
53
74
72
30
27
0
33
0
45
30
21
52
0
72
19
77
59
160
40
189
0
112
54
24
27
0
14
52
52
0
49
10
29
48
102
101
33
0
33
29
26
0
65
26
26
72
82
40
26
42
1
26
44
62
50
46
71
33
42
26
38
120
120
38
18
0
38
8
100
42
0
0
18
164
70
6
10
26
26
109
1
111
55
51
73
18
80
0
105
88
48
90
86
41
10
3
26
55
52
0
54
0
38
84
27
0
52
149
49
29
67
46
0
68
68
0
107
67
0
0
3
43
16
0
0
21
86
79
0
187
86
78
86
114
15
0
65
26
69
64
0
0
0
35
0
14
75
1
165
0
157
106
58
59
30
27
15
24
24
41
9
130
170
114
0
28
38
0
51
0
49
0
135
0
78
53
142
107
65
85
2
0
0
26
0
21
43
14
38
102
112
104
85
94
98
26
3
0
78
7
0
26
0
26
31
8
179
220
177
136
47
44
30
26
0
66
0
0
0
12
66
14
0
11
8
3
0
76
8
48
52
0
0
8
0
0
0
48
42
0
0
46
44
0
0
52
156
26
84
116
76
0
50
36
101
0
74
69
64
88
119
42
87
81
79
111
31
71
101
64
29
31
58
69
26
90
59
70
6
0
26
34
90
87
84
54
64
42
48
67
48
94
100
36
95
1
0
108
64
0
56
80
34
74
25
0
57
78
64
34
109
87
54
29
45
61
1
76
48
63
184
47
103
0
25
3
18
12
0
5
33
52
7
48
38
30
0
39
81
65
0
0
0
47
35
31
110
40
0
76
31
26
57
58
26
26
83
86
104
116
99
111
0
0
11
29
0
0
0
12
16
36
0
23
41
37
34
26
76
62
95
127
90
104
64
26
17
0
87
135
40
70
37
150
5
26
116
0
0
7
0
26
9
0
0
76
81
147
0
66
40
34
40
54
22
97
108
0
12
71
71
28
43
0
0
50
126
0
142
95
75
123
97
57
0
14
87
122
20
0
0
44
0
15
7
79
11
0
7
79
61
98
0
26
87
19
50
21
86
61
65
161
180
108
45
26
95
67
1
0
28
104
36
40
70
28
53
0
24
0
0
14
64
0
0
76
43
45
166
51
43
74
40
24
64
0
11
83
0
26
0
32
20
82
52
246
155
76
149
26
39
26
114
103
53
4
93
0
28
38
32
0
26
66
30
0
0
33
91
66
23
0
11
0
0
0
0
45
0
0
0
0
0
0
55
76
79
76
26
6
66
26
32
95
0
58
42
26
133
88
66
55
81
38
49
72
26
63
82
26
60
42
26
27
64
0
67
0
26
66
89
59
107
98
102
88
83
140
43
26
29
85
51
100
26
1
64
81
0
99
61
72
107
77
73
118
10
56
61
26
6
0
0
85
61
35
127
139
57
15
29
129
7
74
0
50
39
32
11
61
0
4
58
0
26
0
0
0
69
35
49
0
29
93
0
0
55
54
0
0
47
54
72
96
28
102
94
82
125
53
78
70
48
0
50
84
2
0
29
43
0
0
0
57
0
26
54
50
73
70
116
162
48
0
69
179
50
83
46
63
101
62
54
67
26
122
49
12
35
23
107
130
33
18
97
129
101
38
58
37
58
40
0
53
89
140
0
59
75
39
34
0
21
0
40
60
0
52
121
91
65
4
50
17
85
68
101
37
59
0
114
26
85
26
187
26
26
25
20
0
101
87
77
0
82
0
71
26
35
78
0
162
180
110
70
73
84
0
104
5
0
104
72
15
37
56
0
4
0
72
33
11
72
13
32
66
8
95
37
38
8
7
30
39
35
53
18
0
5
36
0
26
172
231
214
153
67
54
83
0
0
79
69
39
68
142
12
0
54
64
29
0
40
144
0
41
0
46
5
53
0
0
50
47
39
43
49
0
0
0
0
0
37
38
0
64
54
0
47
39
0
51
110
26
24
0
32
55
70
49
63
56
80
26
23
0
104
100
23
19
4
19
0
8
26
80
27
107
39
50
92
39
27
34
39
3
80
97
47
49
81
26
26
160
44
57
24
93
66
96
29
38
92
0
48
0
17
66
71
16
38
44
89
0
70
130
106
124
26
34
64
0
158
0
68
133
0
53
0
103
0
68
19
0
0
0
0
50
70
56
0
0
59
0
26
46
0
61
25
34
55
43
58
69
53
84
108
63
26
26
102
2
0
14
0
50
0
55
0
29
59
119
140
48
26
78
26
63
60
80
156
112
0
86
105
26
167
111
90
46
87
26
96
26
106
209
110
9
3
71
94
64
146
44
114
14
0
0
0
49
26
26
20
44
131
39
45
80
4
0
0
18
6
0
45
0
0
170
47
56
35
32
59
142
50
95
59
0
0
27
159
148
26
91
26
108
5
27
21
0
54
71
98
93
26
36
26
59
40
45
24
109
166
155
69
24
42
0
29
0
116
26
4
73
0
0
139
42
2
58
10
14
58
7
19
7
26
7
18
65
50
50
69
91
8
13
32
21
0
55
26
255
255
146
94
116
33
149
42
0
92
37
56
51
104
39
0
135
72
35
68
63
118
83
103
31
91
58
68
53
99
76
52
40
42
46
52
0
30
37
37
43
78
50
0
0
93
45
34
0
0
126
26
34
17
27
74
97
78
41
56
74
17
0
0
154
37
31
27
16
64
0
56
26
0
26
153
31
37
0
0
0
56
83
47
0
26
96
29
61
26
60
133
62
26
37
27
89
55
61
66
60
55
0
28
53
99
74
110
78
0
132
26
52
91
0
235
43
44
42
55
126
190
77
55
62
86
38
54
26
57
0
4
38
24
43
27
47
56
26
16
41
69
0
69
41
39
46
0
0
90
57
64
76
79
101
26
39
30
47
6
26
47
154
41
30
0
0
0
91
41
41
26
26
61
54
131
119
68
147
178
71
101
102
138
134
104
0
21
70
26
73
0
0
202
0
17
47
106
3
57
83
109
35
24
0
5
91
66
46
62
42
94
147
66
50
26
95
0
0
41
0
0
25
0
0
248
136
83
75
31
75
29
26
126
25
0
92
90
125
58
61
26
27
0
14
0
61
0
59
73
34
84
64
74
81
48
0
0
13
85
200
213
122
6
0
4
85
34
99
35
0
109
0
60
29
67
26
45
63
64
49
21
0
0
51
57
36
112
19
207
51
118
104
52
16
7
14
73
140
255
240
124
26
99
44
74
107
57
0
165
94
107
26
54
26
94
85
100
50
43
26
73
35
35
20
127
44
61
81
78
37
0
0
47
57
46
30
53
43
46
76
14
26
38
64
65
82
14
2
0
10
26
43
90
14
12
76
63
0
0
0
0
43
157
52
43
4
36
6
0
61
116
37
26
0
70
60
115
26
97
75
13
35
0
101
84
28
158
26
57
72
95
74
55
31
32
109
48
59
101
0
0
41
139
8
70
0
0
113
0
9
176
0
0
21
100
171
222
88
89
26
57
66
43
87
39
26
186
80
54
0
50
0
85
33
26
115
113
3
0
68
0
35
54
0
44
58
0
44
58
75
48
84
60
0
136
37
35
111
28
97
99
59
67
7
0
41
104
79
116
28
50
67
47
46
39
174
147
63
59
75
143
26
28
44
0
12
32
0
0
0
10
0
0
22
70
142
26
28
26
32
0
14
152
0
13
26
26
98
38
92
26
88
45
88
0
0
0
89
55
9
79
26
164
219
123
96
101
88
168
121
203
101
75
0
14
57
80
48
95
58
26
0
0
0
114
36
26
63
53
47
46
67
76
0
2
50
0
49
2
0
194
190
127
39
0
26
76
0
31
56
42
0
107
2
80
102
26
106
106
42
48
137
133
44
168
89
83
110
55
97
141
26
4
104
112
208
222
164
46
0
49
26
95
105
91
117
122
88
139
77
116
55
122
79
86
75
100
33
70
26
114
26
0
26
128
115
152
95
60
81
12
32
46
34
56
50
41
61
42
89
26
81
87
21
54
77
16
0
0
0
78
97
86
78
0
0
0
0
81
86
26
108
84
110
4
0
77
47
26
71
26
31
21
35
81
30
58
49
79
13
166
48
64
67
26
137
68
69
76
52
110
53
110
77
141
72
54
95
43
54
78
35
0
82
0
34
26
26
57
203
6
32
43
115
122
80
151
0
69
26
65
26
137
31
73
61
198
63
0
59
54
35
26
70
0
90
60
26
26
6
26
16
10
77
52
0
0
55
46
74
84
0
1
33
32
123
42
23
32
40
52
11
48
74
0
161
155
49
46
13
67
65
97
80
85
147
83
50
71
4
56
71
51
0
0
153
45
0
0
57
0
46
18
101
66
139
50
44
26
31
71
0
43
12
91
26
26
138
26
72
73
34
0
39
190
90
45
81
122
50
48
191
175
162
70
39
54
69
69
50
0
35
0
50
13
0
26
74
26
41
6
24
29
130
82
89
0
26
75
46
26
0
10
26
54
51
37
0
0
87
144
172
195
123
73
38
132
41
0
88
0
5
0
76
77
86
20
28
33
93
60
50
103
100
0
99
107
29
197
72
83
63
62
215
229
184
61
27
67
66
154
57
14
87
151
27
118
39
91
94
84
26
55
92
76
89
48
64
0
26
26
0
35
0
27
66
30
55
63
0
44
51
0
0
0
29
38
37
94
0
41
26
64
30
94
12
1
0
5
69
39
45
14
0
89
110
52
65
73
61
107
108
49
62
33
64
70
0
25
1
58
139
33
16
16
135
94
47
59
119
126
26
165
37
106
71
7
55
0
5
85
28
73
99
84
39
77
14
19
65
22
0
13
9
73
46
72
68
152
0
0
36
57
0
30
100
0
71
45
43
0
64
0
3
26
58
90
36
52
5
26
160
56
15
103
75
26
130
14
39
0
51
89
101
68
8
0
86
0
23
53
43
0
14
60
54
54
1
46
42
30
71
88
83
128
132
0
0
28
44
29
26
163
106
79
53
66
96
31
2
0
15
0
26
129
77
78
132
16
0
45
49
145
148
129
0
3
0
158
97
34
129
75
80
71
42
136
0
0
39
36
68
28
150
92
0
100
157
84
150
113
58
111
67
65
117
14
0
77
97
0
25
0
0
0
51
112
61
0
0
20
11
45
73
122
0
9
0
0
0
0
19
0
0
0
0
26
84
79
62
70
222
200
196
110
26
0
9
37
0
0
56
185
112
56
61
66
99
60
0
27
60
34
130
177
51
64
136
60
109
59
209
165
216
60
81
0
128
14
48
0
74
93
58
27
26
26
105
45
98
26
30
63
40
53
108
0
94
69
0
91
38
90
26
0
0
6
63
8
5
0
0
0
0
71
54
76
119
7
46
55
62
26
25
26
94
84
43
28
26
23
2
13
43
94
51
81
99
29
149
71
79
65
61
0
56
22
26
0
57
81
26
26
0
74
104
97
23
56
99
38
91
143
79
88
37
43
16
46
68
60
102
104
46
0
28
0
20
21
20
0
68
0
94
101
43
61
102
0
74
0
38
0
14
15
42
22
26
37
0
59
17
21
0
66
49
0
0
49
0
88
0
0
23
66
26
78
0
17
94
19
99
26
147
91
48
79
66
0
0
93
22
55
140
37
35
0
84
0
0
12
33
125
87
84
57
9
0
105
86
41
26
68
121
88
153
113
37
0
0
1
34
124
105
26
0
42
0
0
0
65
11
63
63
0
0
139
66
26
160
0
38
24
118
84
72
162
30
47
22
68
135
36
26
61
84
153
150
165
61
10
173
69
37
71
61
0
59
29
0
2
0
0
0
26
93
33
46
23
0
4
0
26
84
140
131
26
90
72
32
47
0
43
24
0
22
7
90
37
42
78
204
224
188
113
54
0
75
8
51
103
66
43
26
20
0
0
26
0
53
103
26
84
49
77
83
91
71
190
255
228
179
80
28
83
44
41
0
26
0
32
51
26
41
52
31
0
57
37
60
73
56
0
42
24
25
64
193
58
94
32
49
110
36
42
0
0
0
0
0
0
0
72
60
0
74
96
34
72
86
128
132
39
99
82
31
126
72
15
16
5
0
72
57
77
38
80
30
101
43
120
68
110
0
65
27
13
26
83
39
26
106
72
37
46
88
76
40
61
86
36
56
123
86
43
2
54
103
37
49
146
99
26
0
5
95
17
5
1
53
70
0
80
0
0
92
74
33
108
38
14
33
0
48
113
47
34
70
0
36
7
0
67
61
84
36
23
29
0
20
0
103
44
91
66
59
61
0
0
36
105
58
105
26
115
52
27
0
0
13
86
105
116
149
65
35
5
0
65
100
104
82
76
61
18
35
0
67
85
111
53
79
135
108
85
23
42
108
18
38
100
108
79
61
47
68
26
73
0
0
0
0
0
27
16
109
0
82
60
149
87
8
0
32
49
38
31
89
6
37
100
1
0
16
67
172
125
69
63
57
208
104
24
70
66
0
86
0
0
0
0
32
51
26
91
49
154
0
0
0
50
43
0
29
179
47
114
106
73
16
0
0
0
74
13
0
113
45
78
155
58
171
254
226
147
144
102
109
70
47
0
160
51
19
49
53
15
0
166
142
26
104
98
26
136
143
236
242
248
193
64
63
59
41
149
0
82
26
0
48
53
130
0
0
0
0
16
89
34
136
65
7
50
42
32
0
92
100
74
34
23
39
56
76
0
0
0
0
0
42
49
60
31
43
68
116
44
29
40
50
114
128
80
53
79
79
70
26
12
0
0
70
72
52
0
0
49
88
53
131
46
41
93
55
46
72
26
107
71
70
115
101
30
84
15
0
51
74
95
39
69
143
64
6
0
31
59
58
172
189
92
0
11
38
0
0
0
0
26
0
87
98
0
220
129
136
0
57
38
74
7
110
81
57
17
122
70
58
81
89
53
13
0
60
0
50
26
46
60
0
9
26
41
146
144
74
66
68
121
201
26
95
97
105
73
53
0
4
0
150
91
101
26
32
32
49
58
57
49
26
89
35
21
28
46
48
26
68
49
91
13
26
91
75
42
0
0
0
28
52
110
71
124
125
97
108
52
23
36
119
129
66
0
10
9
27
48
49
127
106
65
54
0
0
97
101
20
3
2
26
0
0
35
150
96
65
26
42
0
160
186
33
55
21
45
27
35
0
10
17
26
81
77
59
73
82
132
28
26
26
41
16
46
100
106
26
74
71
90
1
7
56
57
29
50
39
105
94
40
0
26
26
88
75
176
255
239
158
131
119
75
36
32
18
21
13
20
85
120
117
176
248
246
255
252
185
66
62
108
0
0
57
101
26
166
34
107
26
26
75
69
64
0
66
84
26
26
95
0
1
50
59
16
22
26
26
75
81
98
24
0
113
89
23
129
0
98
0
93
69
30
26
64
100
66
54
43
65
0
92
123
123
92
96
54
40
17
28
12
24
58
42
0
37
16
7
0
55
76
45
83
39
54
64
56
49
43
105
18
82
20
47
28
38
34
33
124
0
0
59
43
81
34
98
85
53
34
116
91
123
1
0
0
0
0
4
81
31
104
82
0
0
198
142
151
43
80
71
26
33
139
78
0
63
165
132
108
97
40
48
19
112
47
0
26
0
48
0
6
0
163
217
106
146
90
90
71
135
208
66
114
162
0
0
19
0
41
44
97
48
83
26
56
101
0
94
62
76
47
80
87
105
18
47
21
67
27
0
37
26
49
102
74
0
0
0
15
45
76
154
114
98
109
40
73
54
54
19
7
50
19
129
96
26
41
52
30
124
69
35
0
26
48
34
0
36
0
0
116
130
85
65
158
134
76
32
30
26
90
207
72
58
75
126
56
39
58
89
49
29
26
32
78
73
67
52
102
40
81
55
71
101
50
90
84
77
47
73
19
63
109
30
26
165
52
38
74
148
95
84
87
0
0
14
165
181
234
186
202
176
180
173
194
188
171
179
254
166
206
190
245
221
186
132
64
61
177
109
41
43
0
2
26
44
100
118
91
101
99
112
26
26
91
79
58
67
0
0
28
0
61
0
43
35
26
62
86
68
0
28
59
59
88
43
44
49
136
67
26
44
23
101
66
75
61
49
98
70
101
84
111
84
90
45
33
17
35
17
54
42
47
0
30
0
30
66
55
123
76
98
67
62
82
34
14
65
128
65
86
40
2
79
71
46
32
88
30
0
6
30
37
0
94
100
21
53
41
75
37
16
0
0
67
9
140
5
0
57
0
0
54
53
132
141
93
165
141
30
54
109
74
10
29
98
196
110
42
10
89
35
72
112
75
81
49
0
88
10
0
159
26
67
125
31
66
100
101
164
46
84
111
91
59
0
0
119
86
63
29
82
33
145
107
0
114
97
113
95
107
107
51
47
18
0
93
54
6
23
121
100
90
96
28
5
19
14
22
26
56
196
124
89
70
71
75
26
0
0
48
94
101
108
62
78
33
97
81
27
28
55
1
36
0
12
64
60
53
67
136
142
71
137
130
90
45
36
26
57
222
109
16
84
101
36
31
93
117
81
93
45
159
46
133
26
46
78
92
106
61
29
63
71
95
58
82
26
70
24
77
113
17
55
144
32
61
152
150
33
123
170
154
127
139
130
92
123
188
154
163
162
174
190
186
170
178
181
135
170
165
167
116
95
65
152
117
49
114
44
0
0
46
108
141
157
0
129
27
153
86
47
68
0
137
53
33
36
3
62
21
0
26
26
64
26
56
49
77
94
46
26
0
13
0
51
6
85
54
99
57
75
72
