82
91
54
113
57
114
59
86
86
182
98
124
96
106
90
109
72
74
91
50
98
47
115
127
110
100
129
106
128
61
162
176
83
150
166
102
129
64
40
95
91
133
73
69
163
99
71
87
232
65
137
86
78
79
125
102
42
158
112
55
79
101
58
123
48
61
75
150
153
113
175
63
57
214
96
161
124
103
59
133
94
137
100
68
121
105
91
99
127
57
113
100
58
144
88
59
97
132
61
98
125
142
62
148
65
54
69
155
123
92
40
181
57
169
130
97
200
96
68
63
127
178
74
131
76
107
64
151
255
109
67
105
157
101
39
119
141
97
124
99
88
136
101
76
131
144
105
101
116
155
72
154
97
158
75
155
103
122
75
73
84
124
77
82
109
118
111
144
148
149
114
71
207
82
148
45
53
100
82
111
54
86
131
133
161
116
138
112
87
70
75
105
178
147
151
75
28
141
59
61
96
79
69
112
67
64
53
77
271
103
59
96
79
186
49
223
34
71
59
110
124
133
109
126
52
195
136
113
73
182
42
67
120
88
34
75
73
126
43
83
118
94
78
69
147
171
110
90
110
87
109
146
46
109
87
126
90
56
84
221
70
113
169
97
153
109
44
155
137
123
102
69
127
63
135
117
204
124
99
109
119
39
111
61
158
59
130
62
99
58
89
124
103
50
119
118
152
143
35
74
124
122
50
96
116
129
134
125
111
86
110
40
218
91
38
144
131
147
134
149
71
65
150
44
130
116
122
106
99
96
138
168
127
56
93
111
61
64
104
71
94
127
78
66
91
148
166
73
119
241
75
90
127
117
97
138
117
99
79
189
75
105
99
133
91
55
73
138
159
109
74
105
59
56
79
105
45
113
62
120
161
164
80
71
127
71
129
124
42
84
79
133
120
74
118
100
101
32
117
72
65
86
84
55
95
175
63
62
61
143
71
112
235
116
106
81
163
37
87
112
176
175
158
121
104
128
95
99
83
80
56
142
115
156
94
208
104
145
167
67
70
163
63
88
80
87
103
96
97
99
88
100
91
188
106
110
165
130
201
115
76
133
70
88
91
73
78
93
101
86
89
70
64
100
73
125
101
128
89
132
48
93
96
83
63
68
64
127
124
72
72
122
116
214
58
109
111
108
95
62
162
76
121
186
173
60
110
70
134
46
85
160
81
185
143
157
129
81
161
108
77
190
126
97
99
116
119
90
95
109
110
110
189
106
89
112
101
147
103
175
90
77
170
108
93
150
72
91
82
82
92
102
80
154
44
99
46
74
68
76
90
76
199
171
52
183
183
96
104
108
81
119
153
60
64
107
47
97
102
127
81
123
191
52
170
46
74
212
82
59
105
106
125
170
68
82
86
223
162
87
152
118
95
192
130
110
90
104
180
87
95
139
95
107
92
117
97
53
89
109
139
60
102
142
103
67
162
137
94
77
46
83
118
53
53
109
36
137
106
94
50
100
214
93
156
148
79
78
99
65
71
47
99
69
230
77
106
116
103
112
73
99
135
68
73
93
79
38
151
97
123
53
96
50
100
115
99
56
112
144
88
112
76
136
116
128
77
112
134
180
99
195
103
96
118
120
87
131
109
143
120
117
45
106
54
38
120
134
109
140
67
141
86
103
65
107
79
90
214
122
38
77
59
139
131
59
132
50
131
149
95
167
95
101
68
126
120
119
111
68
78
62
49
131
99
208
121
124
86
49
135
45
76
124
101
50
90
149
69
107
147
89
166
139
110
111
48
125
115
156
114
64
107
114
116
105
104
150
104
84
144
99
125
65
62
53
85
161
129
47
126
120
97
110
94
127
152
116
96
74
123
94
96
197
136
91
98
102
66
172
103
121
109
156
96
89
128
123
122
76
72
124
104
64
96
165
77
134
109
123
95
79
88
66
62
75
114
85
103
91
64
115
107
93
165
81
112
65
171
149
121
148
86
182
72
73
126
122
124
89
87
130
63
166
150
125
92
107
117
131
156
101
66
95
80
97
125
133
88
149
97
87
98
104
103
78
79
110
148
66
70
74
84
106
61
124
39
61
148
59
95
136
110
137
132
106
78
125
63
154
109
97
140
65
119
115
121
115
51
151
104
208
127
87
142
101
75
161
68
155
181
48
229
94
133
103
127
82
124
41
76
91
60
147
71
94
99
69
204
106
39
140
109
61
93
117
71
78
137
66
71
99
134
187
94
106
136
120
69
126
77
123
98
98
144
78
70
70
101
166
111
95
82
107
110
103
96
73
105
83
165
69
161
99
117
64
170
100
48
247
126
136
68
87
175
77
146
67
75
57
118
194
107
87
141
117
63
34
115
86
144
60
87
167
151
142
71
161
64
56
54
127
103
114
116
106
109
134
123
84
105
37
120
88
123
83
67
74
107
112
87
155
80
150
100
114
104
84
55
79
92
98
110
59
81
132
107
48
141
91
130
90
144
68
155
62
77
165
71
142
162
119
131
69
71
156
108
128
106
125
106
94
42
64
99
116
110
74
64
63
144
159
68
87
32
48
131
172
91
141
80
83
109
83
98
86
81
93
102
149
93
94
83
131
112
118
164
45
170
87
84
129
82
132
75
120
119
115
131
105
114
84
149
136
112
96
75
124
94
49
127
53
75
54
69
96
150
63
171
90
97
160
152
84
130
118
108
43
139
67
124
188
57
75
53
77
81
64
105
188
121
126
42
126
121
97
79
47
69
95
82
85
92
132
62
116
76
81
71
153
34
61
54
142
73
86
95
111
130
155
115
80
53
130
60
90
74
151
58
59
103
31
138
101
122
124
110
76
107
91
66
78
71
121
194
57
117
168
98
111
143
116
134
74
132
133
226
115
100
93
58
92
68
123
94
79
149
96
154
163
173
87
120
74
44
155
57
67
134
83
130
144
64
93
154
142
127
118
61
94
101
52
71
166
65
196
79
152
135
74
82
58
87
108
109
54
87
50
142
92
34
114
126
143
123
97
155
67
72
104
92
81
86
102
134
88
115
55
30
92
130
182
60
85
97
123
74
194
54
173
106
73
228
102
161
67
140
62
72
99
141
66
231
108
120
90
80
182
132
70
207
135
96
89
48
101
103
66
67
103
100
158
90
64
183
50
81
117
144
83
103
169
41
88
143
100
156
128
138
81
127
65
93
62
110
130
42
45
34
145
55
181
104
131
69
78
128
74
77
90
58
100
76
145
53
75
141
111
120
115
112
133
107
126
82
150
119
114
85
114
62
85
79
70
181
160
88
122
42
107
145
60
173
96
290
34
80
105
123
91
89
160
62
86
111
141
100
92
176
86
115
63
63
127
115
81
93
94
189
184
154
77
37
50
80
161
74
153
136
164
48
137
174
78
85
81
80
125
113
174
178
76
28
63
153
97
142
118
147
124
49
123
96
101
40
154
59
96
109
118
44
162
140
102
100
162
197
115
150
64
213
95
174
105
52
156
100
82
108
105
54
168
105
143
59
157
78
120
101
114
139
39
154
96
169
108
62
98
76
122
75
196
83
99
147
135
113
73
82
68
115
144
132
168
144
47
129
63
60
77
145
51
124
126
193
76
71
113
148
196
61
84
76
109
91
56
95
70
162
77
46
85
54
133
137
97
88
98
147
156
106
122
66
27
68
98
102
98
100
57
69
59
133
90
147
81
68
116
67
101
81
110
101
65
96
109
94
75
85
208
91
129
127
83
116
121
97
24
86
119
173
85
148
91
68
70
43
124
48
123
146
115
176
56
66
101
106
76
113
130
46
60
84
139
36
111
108
93
147
63
80
96
59
117
63
145
58
54
150
58
141
95
58
129
132
170
83
71
58
116
101
82
63
148
45
121
52
85
84
88
146
126
63
60
89
102
157
61
88
71
125
120
75
96
101
85
123
88
88
108
101
116
163
87
69
115
137
141
112
232
69
92
179
135
91
73
88
139
88
132
95
82
97
52
93
160
108
139
84
118
122
175
86
77
130
97
52
124
149
74
151
79
117
130
67
98
141
91
83
148
58
101
101
165
129
117
35
50
166
57
96
115
129
167
108
61
103
70
96
81
131
148
81
102
58
114
64
130
170
160
69
71
117
86
218
94
67
136
86
104
163
110
191
60
83
113
111
118
60
136
107
225
160
167
106
89
86
187
64
70
88
125
91
216
124
76
71
113
73
107
68
81
96
93
104
98
132
44
160
108
54
150
83
63
119
100
80
93
66
138
157
102
55
144
104
125
78
68
87
126
113
111
63
116
96
65
191
85
66
72
91
101
111
71
66
49
103
144
143
73
86
137
124
87
94
130
146
212
143
197
155
76
122
132
96
48
75
66
132
184
107
124
50
90
74
61
60
162
70
97
135
70
110
109
141
108
147
94
49
84
102
74
94
166
64
192
64
105
118
105
109
224
120
84
129
109
124
60
94
68
85
184
84
149
53
85
71
96
160
35
96
62
100
54
136
98
107
176
89
180
54
85
50
130
120
167
86
134
65
79
88
85
69
188
80
116
57
53
97
80
111
98
115
179
79
175
92
78
89
66
139
99
139
55
84
90
84
86
72
174
72
120
47
120
109
68
151
162
220
93
88
105
140
150
129
116
172
93
83
105
100
127
127
64
154
121
123
135
104
110
142
104
131
79
132
209
203
94
74
93
106
218
129
87
88
137
200
106
104
136
128
107
89
100
113
74
81
178
118
73
80
148
138
188
129
102
91
48
126
78
144
87
106
97
67
88
98
84
61
69
128
185
96
163
87
197
63
100
154
60
92
212
73
97
123
104
74
164
132
84
72
71
68
137
80
118
156
105
119
175
85
120
137
97
172
104
91
128
79
107
109
131
112
144
104
61
54
80
67
152
105
118
58
133
94
118
67
139
98
97
138
71
116
166
102
48
96
107
99
110
92
64
51
72
68
140
117
93
93
111
86
105
157
101
127
73
152
64
165
115
143
204
141
139
126
154
75
88
109
154
170
176
77
109
45
323
149
123
94
156
106
145
80
94
108
51
72
186
134
135
153
128
77
75
55
64
67
106
97
82
123
131
159
86
107
116
144
172
195
83
82
75
94
97
85
46
51
94
79
141
79
89
147
111
88
64
119
57
93
140
99
148
113
88
70
109
69
142
154
43
183
185
69
71
105
63
55
88
77
94
118
128
99
84
119
35
129
68
108
149
107
168
237
128
158
58
155
129
44
125
149
125
111
62
111
152
176
96
82
114
86
115
134
194
81
138
129
144
92
97
100
88
109
87
106
142
116
144
103
115
122
168
147
78
99
75
73
219
152
61
226
155
101
37
79
119
59
120
135
46
84
61
81
124
117
70
141
89
106
68
75
49
106
152
63
127
92
65
192
132
90
131
48
90
168
99
65
136
103
132
137
115
116
131
206
137
122
44
92
139
98
99
131
43
101
46
102
74
69
117
55
211
107
84
66
126
122
186
148
73
63
148
155
129
102
122
120
90
157
74
66
92
163
112
87
93
192
59
90
123
95
43
96
68
154
101
243
157
110
119
83
68
210
113
88
162
143
134
79
87
129
130
100
140
82
45
127
88
131
153
159
104
67
71
49
110
122
103
108
75
51
37
109
165
131
143
92
63
97
96
71
123
83
149
112
71
172
96
215
163
128
119
95
155
44
122
100
62
91
159
80
80
81
107
85
174
69
75
128
96
85
142
82
89
108
85
132
71
86
125
98
111
84
93
253
40
139
109
162
32
131
115
71
36
170
59
50
35
53
98
102
100
150
123
159
83
108
164
70
129
134
116
46
109
48
136
110
158
121
142
122
130
118
219
181
44
147
99
99
132
73
106
90
138
88
104
57
112
176
85
87
92
111
95
73
93
76
72
181
116
84
148
82
151
48
106
49
114
80
99
112
61
81
86
37
39
124
106
74
68
74
100
74
127
66
173
101
66
88
223
118
151
99
45
85
68
104
128
218
92
121
191
100
123
86
81
45
120
117
85
111
131
137
60
117
111
100
165
139
117
93
104
112
100
123
83
107
118
115
140
102
134
86
92
101
35
126
53
114
107
97
134
105
135
96
85
79
94
46
73
76
165
108
81
101
170
86
44
111
68
110
103
102
86
105
69
119
96
115
97
59
132
48
85
119
137
98
108
104
116
98
135
122
70
147
58
124
102
89
200
112
135
96
58
157
84
143
154
94
102
76
259
108
92
72
50
129
128
170
113
151
112
132
58
107
57
40
171
116
136
54
120
90
80
68
97
74
106
178
93
139
97
99
103
190
152
123
95
98
102
103
84
64
72
120
88
118
126
141
102
121
195
202
101
112
161
67
165
175
123
115
60
95
116
87
46
135
140
65
106
103
47
115
73
66
55
143
94
148
199
128
113
89
67
122
90
112
142
32
156
160
69
109
81
71
142
98
163
133
169
151
127
122
200
82
72
127
68
90
44
107
103
185
61
67
156
68
97
112
180
82
44
74
105
84
152
146
153
108
103
161
88
54
72
146
63
95
112
110
52
81
64
161
92
91
77
80
204
119
106
74
180
143
163
117
65
85
80
136
92
105
136
133
94
32
110
41
82
103
73
189
90
100
91
76
67
113
98
116
71
28
94
101
84
130
101
58
141
138
78
82
136
50
93
60
105
113
214
50
63
150
80
101
68
108
115
103
113
118
137
107
115
87
69
90
51
130
134
108
96
203
102
88
88
115
97
65
107
102
75
117
59
116
128
158
124
128
118
133
67
81
120
93
141
152
184
122
107
68
210
169
169
72
50
140
85
74
88
71
106
149
164
150
92
125
93
142
121
112
65
94
176
76
100
103
128
93
63
174
192
109
119
74
116
100
148
98
93
115
231
96
145
59
49
60
67
160
100
50
106
111
50
49
115
47
132
126
93
77
139
135
145
110
51
151
84
94
86
120
121
80
116
80
120
67
175
110
76
115
86
134
163
91
159
127
139
87
79
92
67
105
147
87
130
86
114
109
121
126
111
146
85
65
80
67
43
76
83
98
82
97
157
81
118
80
111
75
102
153
143
144
124
86
95
63
112
88
126
110
102
175
163
114
81
106
121
97
88
172
150
142
103
101
55
81
91
87
108
76
55
75
112
79
123
99
224
139
162
73
84
115
93
81
62
119
84
85
60
71
88
66
150
90
94
98
57
91
127
193
121
78
117
166
109
141
145
86
72
29
99
123
86
43
222
117
104
150
149
89
78
256
116
134
162
101
34
54
108
116
93
91
40
36
126
82
143
68
81
94
123
112
50
95
98
43
129
112
50
149
82
195
51
100
130
83
81
111
36
115
68
88
56
160
82
112
62
113
124
172
107
111
173
143
88
97
126
80
110
148
106
73
76
122
62
68
61
131
82
123
47
74
138
114
151
73
143
121
75
85
137
70
126
116
172
112
49
101
97
86
77
135
131
125
124
102
79
86
89
94
117
95
59
149
70
109
71
166
120
109
67
94
132
139
63
165
107
120
131
83
142
98
94
151
130
162
165
82
72
165
96
90
51
123
87
120
122
173
232
178
76
74
204
70
141
138
83
114
92
99
46
110
90
151
173
106
113
126
74
63
141
153
91
87
88
101
73
165
31
79
108
181
64
54
60
71
150
111
121
70
90
145
116
90
153
117
147
136
43
136
154
73
128
44
92
113
85
55
69
72
78
193
145
71
118
73
119
128
50
85
139
70
229
132
109
143
109
83
198
74
27
38
77
114
86
121
108
113
88
86
144
121
166
65
67
78
133
142
57
146
56
128
120
137
133
185
120
115
112
106
165
129
77
198
200
65
166
86
38
116
91
84
79
137
106
85
82
113
118
201
63
102
123
102
67
64
169
119
128
137
87
126
73
80
209
138
101
65
64
70
130
72
76
144
166
147
105
133
75
143
72
70
66
153
98
125
123
109
82
102
61
164
121
66
127
141
191
148
62
115
90
116
99
72
128
102
83
79
172
115
88
123
104
118
115
126
68
95
142
70
84
218
109
111
140
128
122
44
57
80
54
91
83
120
84
102
112
158
141
52
120
72
90
65
77
150
77
93
169
66
144
93
88
98
143
194
132
136
140
121
129
172
193
79
73
120
96
136
90
66
93
93
97
109
137
146
119
121
146
198
150
87
66
65
96
66
123
137
115
141
47
134
122
198
152
90
95
117
128
84
97
169
103
76
79
79
82
106
117
77
130
134
97
112
61
89
74
108
47
55
147
182
111
124
144
65
143
72
118
79
93
72
113
113
62
148
95
74
56
138
92
83
217
112
95
69
127
82
84
100
69
126
104
95
136
39
111
104
87
102
106
127
91
114
92
86
99
106
62
97
76
98
46
126
71
106
100
106
115
110
200
73
104
54
104
204
101
99
120
109
153
121
66
71
165
68
80
79
129
130
131
104
59
130
80
101
94
81
83
103
97
62
139
93
42
149
162
92
119
81
134
119
103
90
157
121
96
110
84
126
88
134
99
209
75
99
84
130
77
95
65
119
92
83
160
73
102
68
137
105
98
103
159
89
145
125
90
170
106
174
109
167
80
128
121
93
111
65
153
82
93
143
111
70
98
159
187
48
119
100
173
140
136
137
94
83
132
104
80
142
96
96
95
60
69
155
82
83
126
95
105
110
91
95
60
105
130
151
141
85
173
62
138
81
140
75
122
82
55
130
93
86
151
108
56
159
49
145
131
141
121
98
120
127
120
106
156
37
89
111
106
173
113
129
57
160
95
53
110
154
59
133
107
62
106
122
167
150
62
105
104
75
115
62
161
72
106
75
95
113
75
81
95
143
133
134
139
131
113
58
130
125
104
103
99
124
122
122
93
125
97
116
153
93
155
106
208
113
41
95
133
33
257
181
134
97
57
99
150
136
56
135
140
110
91
131
113
26
108
190
75
93
173
50
103
101
106
70
74
57
70
105
120
222
202
119
122
129
83
96
152
125
55
60
78
75
88
150
113
123
166
121
91
136
125
83
108
107
48
100
100
120
101
193
69
135
148
130
118
83
94
94
86
56
141
119
116
67
175
104
79
84
98
89
106
128
102
81
146
113
76
140
41
115
107
61
118
68
122
132
126
105
120
62
102
169
82
73
104
197
106
123
170
83
115
63
53
101
113
121
58
88
106
135
86
58
74
87
47
124
81
87
127
57
95
56
100
73
97
123
176
105
78
151
117
118
130
146
70
130
121
106
50
98
70
180
86
95
119
176
84
128
57
197
123
107
119
66
67
101
103
62
36
75
50
92
151
98
53
170
84
79
152
55
102
103
138
99
130
71
77
157
88
96
181
135
68
114
278
103
56
93
75
190
117
136
81
86
109
157
71
126
63
39
179
127
115
58
82
77
115
105
92
178
120
114
84
142
128
67
128
48
141
119
98
68
116
98
132
135
112
73
89
137
182
102
109
120
169
93
238
62
125
147
115
75
155
101
106
81
98
95
217
95
213
154
131
78
78
160
90
69
113
62
141
135
71
194
134
64
64
106
117
115
131
69
147
101
91
162
135
114
140
65
126
116
146
116
85
109
146
70
99
65
105
144
101
118
95
99
194
84
92
143
85
141
66
177
170
109
132
82
72
165
64
78
53
146
59
114
118
86
84
106
60
110
127
123
73
138
86
74
100
85
146
149
106
110
173
87
88
89
94
104
107
34
136
116
180
79
89
138
60
105
68
260
106
95
113
107
153
109
97
70
103
54
148
73
68
143
163
47
74
116
94
50
169
53
182
127
105
143
50
46
113
140
130
87
105
127
97
182
144
63
88
56
153
130
117
143
78
151
87
146
129
106
125
94
139
124
102
85
63
71
44
118
119
61
137
53
164
156
90
88
121
95
71
80
77
128
120
113
96
114
71
47
79
86
164
64
82
91
144
66
254
66
84
125
123
117
142
108
121
112
89
72
119
122
110
112
149
62
134
71
117
139
102
94
131
70
97
76
108
95
76
188
47
104
71
50
150
112
105
67
98
52
108
107
128
84
108
148
185
103
65
121
145
105
78
124
69
98
83
145
101
140
98
107
131
133
99
77
137
98
154
105
81
97
64
158
144
90
100
91
129
155
37
65
205
69
148
131
59
102
114
156
72
112
124
68
150
80
142
155
123
170
90
148
97
81
156
96
111
37
65
84
123
69
104
154
161
155
127
35
57
158
110
201
119
59
80
154
114
54
94
163
134
59
101
80
93
135
123
133
98
150
129
71
152
109
44
80
161
52
152
124
78
58
67
92
150
67
110
73
174
85
74
59
138
175
88
121
117
153
142
87
90
109
88
79
65
72
64
61
94
79
116
153
119
79
132
94
61
112
52
168
285
101
67
170
55
93
65
91
50
113
68
87
84
84
135
135
79
123
97
143
86
134
212
108
68
160
128
156
73
89
53
47
107
96
92
141
121
138
85
77
50
85
136
105
123
104
138
79
131
84
72
119
75
111
78
169
113
123
100
99
183
99
104
53
75
60
97
47
57
109
119
179
139
75
134
198
56
115
72
96
132
95
98
115
116
92
54
135
85
82
90
103
158
142
149
62
56
76
145
167
87
149
96
95
56
102
89
86
80
153
95
102
144
97
58
126
138
107
144
110
63
85
73
48
226
121
62
102
108
90
59
78
68
68
38
83
84
74
104
187
79
100
177
84
138
73
77
114
142
140
90
138
127
50
159
66
120
113
137
188
89
116
90
58
148
113
68
102
57
114
138
101
158
71
70
152
94
90
93
171
181
165
74
137
65
112
86
88
64
92
91
77
88
145
77
130
49
120
126
108
56
83
115
123
71
106
163
100
119
106
71
103
113
146
104
87
99
104
69
115
166
84
117
84
64
155
111
98
91
119
159
74
159
110
73
73
89
169
106
74
60
134
115
90
135
97
43
126
61
133
94
98
120
167
92
124
119
124
95
178
114
118
94
127
117
126
90
57
138
128
93
43
75
72
62
87
80
147
67
95
131
122
123
147
61
191
91
124
114
82
34
83
93
72
170
77
116
102
94
87
88
110
55
100
117
155
128
48
151
125
135
113
51
121
102
53
73
86
153
57
62
138
101
90
151
65
81
227
165
84
96
72
113
86
61
114
117
100
105
155
213
97
138
78
110
106
93
88
118
77
65
76
111
31
127
69
63
131
77
177
115
128
30
162
84
116
149
115
156
54
154
75
109
168
97
104
111
138
92
106
73
112
112
112
73
178
189
204
124
187
154
83
77
38
135
50
75
94
107
76
100
101
84
102
56
211
131
130
122
149
138
169
86
54
97
114
64
52
69
140
175
173
71
115
85
144
98
139
117
80
82
73
94
161
181
136
176
76
163
110
96
57
208
116
82
121
96
73
82
129
124
155
58
52
100
153
113
87
151
79
54
155
68
49
101
110
71
89
132
111
85
52
141
90
172
73
107
100
90
36
154
34
93
111
101
205
108
149
128
131
82
60
69
180
72
73
85
84
98
178
79
70
88
124
86
37
69
101
139
104
110
112
133
126
50
92
97
76
114
149
151
64
53
68
71
93
83
33
116
73
62
65
112
72
57
101
122
67
155
46
101
88
100
39
62
112
81
176
102
141
33
73
89
99
65
43
116
89
124
50
146
103
104
98
211
51
104
137
105
87
46
46
100
125
130
97
70
160
85
108
127
59
115
39
136
108
51
123
111
113
98
51
81
59
134
125
101
101
126
94
116
83
81
140
98
46
106
76
199
72
131
95
71
77
155
82
110
65
112
101
172
139
130
118
99
144
83
70
127
128
150
53
177
126
115
106
107
136
152
70
84
161
204
46
94
72
87
63
56
146
79
81
81
68
104
94
137
113
91
66
182
84
124
122
77
90
131
107
59
74
55
75
95
127
178
57
122
53
59
86
132
116
120
146
64
121
196
171
76
108
135
78
82
106
143
59
159
67
70
129
94
110
130
65
44
99
173
61
130
129
97
82
101
102
119
128
104
108
75
98
102
99
177
61
104
168
81
104
72
98
118
104
91
94
168
71
160
104
55
146
119
63
98
99
136
53
107
99
165
135
92
98
121
135
138
118
190
132
64
198
114
158
57
123
171
91
131
61
106
105
59
75
83
107
94
114
162
102
84
87
88
114
87
159
75
124
69
117
61
113
32
36
98
54
95
103
119
95
149
94
162
107
168
145
130
173
132
95
80
98
28
83
51
92
104
83
118
68
71
73
156
64
191
100
79
99
65
140
118
156
70
126
90
129
94
105
103
74
102
96
153
82
178
217
97
137
101
139
45
78
173
136
83
116
73
104
85
103
158
112
120
156
104
77
94
69
92
106
58
72
48
148
124
159
148
170
135
70
126
69
100
81
91
122
90
161
98
115
125
89
103
106
41
88
62
72
165
131
113
90
83
265
66
137
63
71
136
118
142
76
89
117
67
76
122
97
86
73
106
62
99
94
90
124
99
128
145
75
53
121
148
116
122
81
135
61
57
77
143
149
171
132
124
60
129
123
149
48
85
97
62
248
159
163
97
55
112
109
136
73
74
76
127
26
89
134
123
53
64
78
68
212
150
89
191
221
93
95
77
139
136
106
132
138
147
109
173
83
82
80
58
154
76
128
86
93
99
104
70
112
135
84
98
59
57
107
136
77
102
82
75
88
142
82
72
92
130
130
102
68
73
41
107
57
77
151
60
89
60
146
129
58
90
99
76
118
104
127
97
96
101
89
105
146
77
114
120
85
145
92
133
91
90
86
73
124
86
150
136
37
119
128
138
58
78
181
63
109
35
105
232
122
75
167
122
87
73
107
81
93
111
59
128
73
49
124
74
101
70
107
85
97
103
89
152
85
92
158
119
85
43
61
87
146
66
161
62
93
94
82
143
118
40
206
62
151
61
219
70
74
121
80
119
50
81
130
92
103
84
102
112
104
93
154
99
72
138
151
98
86
158
106
89
127
119
177
97
83
88
80
121
92
95
71
120
106
164
115
180
138
83
191
151
133
99
97
146
69
69
99
121
67
106
79
58
115
143
74
67
45
68
162
146
90
100
106
64
101
128
112
123
64
150
111
60
65
61
96
199
92
56
124
73
90
81
229
109
103
158
112
181
160
113
117
146
36
64
135
113
115
227
126
131
109
142
209
91
57
168
176
87
100
86
86
136
108
51
151
55
80
63
89
163
106
80
103
48
48
154
207
108
116
117
65
138
150
153
79
119
109
70
182
98
119
83
134
127
116
94
111
186
126
61
125
99
56
69
108
151
146
84
121
118
108
107
58
107
112
86
135
72
145
169
158
72
88
146
166
231
64
135
118
83
164
86
80
68
74
159
109
112
103
94
119
82
86
103
58
82
141
79
110
122
63
79
50
74
73
146
130
64
46
76
98
44
80
155
108
176
48
107
93
71
82
86
83
131
90
107
88
112
131
34
164
159
91
112
68
152
129
135
86
68
110
96
128
79
54
136
105
180
92
60
143
161
90
143
89
196
119
172
83
100
91
95
88
131
57
68
84
91
66
103
145
76
70
157
145
76
148
95
116
86
148
168
130
82
88
111
57
121
138
55
66
106
132
116
145
65
98
54
116
124
128
80
97
159
244
126
128
216
64
132
113
106
70
116
109
54
97
59
65
161
142
158
141
116
173
136
117
57
79
151
106
160
97
58
117
99
88
87
150
74
69
141
87
83
115
133
57
154
80
174
140
54
172
75
63
80
64
145
84
120
149
199
113
79
54
179
75
119
167
130
155
70
96
137
85
70
159
98
135
52
56
202
112
104
119
149
168
104
146
107
46
84
109
106
85
26
150
109
93
67
46
81
91
39
108
183
78
100
91
68
185
110
86
77
80
84
123
48
84
112
79
113
119
106
75
142
92
65
92
134
104
49
93
138
90
62
81
82
68
40
39
202
60
158
119
177
63
121
110
58
99
64
65
117
81
123
167
103
102
107
140
78
117
107
114
98
91
169
92
55
83
138
123
109
127
106
87
124
109
86
129
90
65
127
138
128
124
75
99
67
187
87
81
127
83
127
79
50
85
120
71
67
112
91
103
87
147
111
41
162
95
123
139
138
143
137
121
109
107
155
120
123
96
110
124
122
166
105
97
163
111
51
100
115
137
113
217
86
78
118
85
95
136
110
85
90
140
120
54
134
74
104
76
165
51
61
61
137
109
87
61
34
107
29
91
128
122
98
77
98
79
182
123
139
110
86
20
132
115
155
141
103
114
63
219
59
61
69
113
88
92
104
137
61
98
95
70
177
159
81
102
154
147
105
268
48
183
137
103
73
113
159
94
92
62
206
101
81
60
110
159
139
96
59
116
176
113
105
97
154
101
37
115
94
97
177
107
198
123
56
120
105
99
97
120
172
66
111
54
76
53
61
69
77
132
97
154
126
153
112
216
119
98
112
84
67
131
131
111
84
70
56
65
79
133
133
91
106
79
129
80
124
187
47
73
118
132
118
76
195
60
105
136
138
106
146
60
119
123
80
162
94
109
140
141
98
116
127
133
104
133
114
144
84
89
185
66
150
81
112
100
128
166
114
87
97
135
45
81
93
135
50
138
92
127
65
131
74
76
68
29
74
53
122
122
73
82
86
99
118
81
75
75
116
105
89
85
77
64
98
140
123
155
184
88
137
38
101
120
69
53
88
113
137
86
107
82
120
129
111
121
154
99
127
81
58
44
125
87
134
69
99
108
101
89
106
71
175
69
129
131
79
124
95
109
105
137
142
103
139
53
123
63
200
121
184
103
105
67
87
142
79
120
76
59
89
99
73
140
105
127
84
110
122
93
74
105
90
112
116
121
177
137
101
108
156
70
74
48
104
87
112
86
87
35
91
51
69
131
118
133
102
128
58
101
136
130
71
60
125
189
78
175
149
111
74
194
109
99
56
35
75
82
111
190
132
92
74
109
121
63
155
116
112
94
68
82
45
89
138
70
86
94
154
179
100
124
137
78
80
86
150
154
126
114
100
88
69
116
85
82
88
88
221
92
114
101
77
119
86
117
63
82
145
92
61
80
121
200
95
86
80
114
43
101
133
151
60
105
146
145
61
97
99
171
123
191
45
155
85
100
96
109
98
154
67
92
118
142
81
47
112
74
126
97
109
70
89
112
94
92
114
116
173
90
94
138
109
208
53
72
85
88
84
47
161
83
102
139
87
73
127
108
152
141
79
59
129
110
99
115
87
110
109
107
93
91
51
140
130
80
89
166
85
39
98
88
62
174
74
160
71
99
54
117
132
71
55
95
118
119
209
134
75
178
124
98
52
63
113
79
96
75
100
65
111
137
132
133
123
57
118
108
108
200
46
133
54
119
104
89
74
184
76
117
115
79
232
87
151
119
112
206
90
62
105
54
190
135
124
146
91
107
84
123
178
140
75
146
88
116
95
127
89
132
53
71
72
152
99
86
74
131
110
115
178
197
123
85
142
94
136
100
107
88
85
97
111
59
87
125
124
88
107
47
97
61
90
130
72
126
133
113
78
100
69
96
88
179
105
87
106
123
112
85
133
104
151
122
79
78
178
193
48
149
157
143
96
184
85
76
41
127
180
156
106
152
112
114
167
49
99
26
67
111
116
89
129
71
124
40
104
69
168
62
70
117
110
146
104
120
95
145
164
137
126
30
110
89
91
75
108
123
93
92
75
134
57
92
123
70
79
102
87
81
91
121
153
132
117
96
237
140
81
111
134
179
144
64
56
75
84
86
66
141
119
56
94
116
120
57
95
118
58
109
105
100
130
140
123
108
91
75
111
147
86
71
239
105
77
93
72
66
116
114
67
102
135
117
133
73
84
42
56
67
148
124
84
143
128
201
59
91
100
209
52
71
80
91
115
120
56
111
160
119
82
113
76
115
131
226
71
166
78
180
146
117
83
126
139
76
82
109
83
90
108
72
93
87
135
56
109
115
91
54
150
95
106
59
56
73
89
77
89
43
133
120
101
96
80
107
92
137
100
163
141
123
59
113
104
126
119
76
174
61
94
51
203
128
77
58
104
83
204
168
124
97
81
124
255
159
116
86
114
132
83
123
78
78
72
108
65
117
151
191
125
114
103
123
117
100
148
115
144
53
115
72
124
62
106
81
156
199
88
215
135
74
147
117
143
149
117
148
84
153
96
180
59
83
174
146
120
90
106
89
124
117
74
175
126
51
98
98
116
129
95
95
66
99
162
122
58
86
102
144
96
121
126
57
125
121
104
74
71
124
190
109
86
56
112
62
115
145
91
46
77
89
103
33
182
55
52
105
145
170
110
127
89
99
179
95
103
87
171
88
73
140
211
151
60
92
99
104
95
81
168
67
168
80
165
215
75
74
65
169
89
72
98
39
107
80
159
74
98
65
127
54
71
73
93
244
140
71
46
68
256
109
49
65
133
86
53
153
73
89
50
91
96
67
108
106
79
66
158
24
112
152
131
66
160
67
137
105
69
63
123
69
129
126
147
82
74
132
72
144
114
127
113
141
141
84
160
157
57
133
51
110
127
103
46
71
104
110
64
128
96
101
204
85
139
72
123
115
106
82
129
73
89
93
97
63
114
52
86
105
216
156
157
77
66
117
139
132
100
84
77
93
151
65
69
75
108
131
132
182
107
46
64
107
116
139
72
91
118
108
95
80
154
47
87
100
79
131
81
90
105
97
126
134
83
132
63
117
110
87
246
81
164
125
55
154
95
102
127
66
207
106
87
90
74
84
108
49
116
137
147
88
85
63
152
106
171
125
127
77
138
84
148
87
101
73
136
112
126
89
107
135
66
152
144
154
124
122
38
163
202
98
120
45
140
50
97
151
150
91
112
55
145
62
149
90
120
119
176
69
141
74
101
77
58
94
91
90
81
81
100
142
96
208
82
82
92
110
56
90
119
173
104
89
61
120
86
117
77
81
120
66
169
128
136
109
81
64
42
88
75
77
140
100
111
113
47
96
146
55
83
78
86
70
119
80
110
80
174
148
138
168
111
94
65
126
82
84
98
85
149
126
143
112
166
77
176
135
161
55
196
107
117
104
74
121
191
122
81
96
73
147
113
109
110
47
102
149
90
171
118
86
188
203
93
112
80
126
67
201
62
76
106
86
103
182
81
126
110
126
78
50
118
139
46
135
124
125
77
86
134
226
107
164
74
60
79
95
82
95
79
146
114
78
125
159
205
181
81
96
163
96
141
133
110
102
181
82
177
158
114
108
108
129
143
89
131
109
105
24
101
71
69
83
130
89
148
105
87
98
94
91
45
158
78
90
101
105
93
101
107
113
35
168
55
70
51
136
43
134
79
128
70
70
181
77
120
135
86
93
118
158
71
110
42
98
57
58
202
138
73
117
86
156
171
182
38
84
63
121
116
57
46
76
110
82
71
108
123
132
97
115
79
116
61
127
97
85
97
106
114
116
143
101
145
110
67
67
113
96
71
213
153
106
67
111
129
113
113
111
83
153
128
110
107
90
138
55
101
222
158
126
125
98
149
72
60
133
90
194
84
75
94
93
113
99
115
113
116
91
95
93
61
106
134
58
86
194
121
223
130
100
120
89
75
81
86
44
98
81
80
119
83
143
79
107
60
95
102
147
86
108
166
99
28
100
116
123
103
50
60
89
128
92
109
146
149
46
96
121
86
116
112
144
79
100
88
51
158
181
88
152
100
148
63
128
189
104
95
42
53
102
93
76
110
58
114
184
66
193
83
79
199
95
132
135
125
85
90
135
87
83
130
118
92
129
131
78
116
78
121
79
116
86
105
100
63
121
116
138
121
114
86
65
109
229
141
35
213
63
119
140
72
77
170
168
77
92
136
89
146
94
151
103
58
97
101
83
107
136
119
82
77
56
100
232
151
80
109
46
140
91
92
118
113
129
80
151
63
133
99
61
123
130
118
139
157
104
184
87
69
95
114
122
189
122
123
117
73
66
180
92
52
113
103
153
99
72
109
135
104
85
122
179
76
84
194
122
172
121
122
142
91
124
107
124
103
104
89
208
41
57
178
165
77
38
171
43
78
86
152
77
91
145
83
70
75
112
62
124
120
95
39
108
92
121
116
156
87
114
63
89
105
47
167
92
93
112
188
94
124
93
136
87
95
114
193
103
87
101
62
117
67
171
119
103
144
136
100
79
103
45
170
79
86
88
147
56
105
119
109
117
124
129
126
127
67
66
106
99
54
84
90
94
63
66
38
133
107
136
149
112
64
94
91
142
72
128
84
193
120
105
118
73
84
118
75
74
96
47
76
85
57
99
139
129
113
115
76
95
129
110
154
61
162
103
187
49
117
120
110
78
101
105
61
35
145
107
81
107
105
101
74
104
83
53
241
105
62
65
57
102
94
170
112
106
44
55
114
61
126
85
71
95
55
98
84
177
99
98
64
98
210
60
88
114
145
229
73
94
185
100
124
143
103
83
121
132
163
157
159
106
112
91
117
100
98
53
64
120
90
51
143
178
138
76
37
66
51
171
82
99
77
144
181
143
143
153
97
106
102
104
143
144
68
73
73
114
73
79
69
93
149
109
140
112
66
47
158
168
86
78
105
102
123
114
84
123
127
102
107
88
143
49
112
124
108
120
92
108
135
126
103
79
127
130
100
81
69
80
58
181
242
121
113
106
171
120
68
96
138
148
82
167
152
103
140
76
124
185
161
120
111
118
105
125
69
104
124
123
72
62
125
121
68
101
73
84
153
134
124
138
89
67
109
120
167
109
70
214
134
178
137
118
70
73
122
89
83
71
87
139
115
57
79
78
177
59
70
50
98
35
90
79
49
48
174
72
71
147
127
96
58
91
118
76
75
58
137
172
186
133
122
44
103
160
119
101
88
137
117
170
96
149
115
78
120
60
87
103
162
92
112
71
110
201
128
115
100
97
97
65
95
89
87
110
74
111
70
75
120
54
65
117
54
130
88
114
92
202
119
87
77
126
124
120
65
180
173
95
144
97
92
119
115
73
82
102
135
93
83
110
102
124
93
126
80
153
88
56
116
80
90
74
73
134
49
103
102
82
43
140
63
95
146
68
107
73
128
30
132
190
71
106
131
71
99
58
112
98
94
45
100
156
101
64
106
26
122
128
99
68
78
46
104
100
56
133
103
92
77
79
165
114
68
151
56
47
106
130
207
145
148
115
90
149
100
113
124
125
119
112
111
146
88
124
156
60
76
114
111
68
78
89
64
124
102
76
104
112
65
130
43
100
89
51
104
101
129
96
92
135
168
58
172
100
113
52
135
81
71
163
125
59
60
64
55
104
133
76
56
105
116
98
61
119
69
73
88
58
85
91
109
121
51
77
117
113
132
143
93
103
95
114
123
103
138
44
172
90
172
173
58
100
93
57
101
108
47
132
69
55
134
103
121
126
140
154
51
134
127
103
177
91
83
175
81
74
101
201
141
81
123
138
151
87
128
101
112
54
99
168
88
94
176
94
216
162
51
53
103
245
90
139
126
129
187
111
79
93
83
72
58
83
101
124
113
50
132
83
99
46
229
114
78
122
52
94
95
92
36
135
112
92
99
81
114
122
143
100
111
114
177
105
114
38
69
108
115
108
124
161
93
92
81
101
95
50
103
123
141
63
36
78
39
86
132
96
102
51
138
92
104
85
94
152
71
77
124
66
130
81
148
83
69
134
94
69
45
109
123
130
94
81
92
111
77
56
71
16
93
136
199
101
76
108
61
74
49
127
112
95
235
97
159
75
98
127
108
110
102
64
95
58
70
76
147
32
177
117
91
91
86
109
75
91
99
102
195
115
123
111
87
86
167
92
115
162
100
86
113
141
148
103
191
128
89
80
50
96
163
152
161
72
85
118
81
84
66
50
95
77
170
131
127
122
68
115
139
116
69
142
70
99
165
93
35
138
90
74
139
64
54
105
94
50
108
109
64
180
113
74
51
123
120
166
100
82
61
141
101
121
80
137
132
141
120
97
108
138
69
83
70
103
81
70
95
117
123
152
51
54
132
88
161
137
80
50
97
105
106
113
94
78
64
99
100
43
94
108
73
142
68
155
104
76
89
137
123
126
69
103
49
120
157
94
109
149
101
93
105
205
67
73
97
115
182
81
133
180
123
111
158
150
75
129
84
110
97
111
66
61
198
87
136
101
105
94
91
100
112
125
102
205
191
70
120
153
145
110
124
114
81
94
120
64
49
144
189
72
190
40
95
98
118
75
63
46
104
120
170
91
102
65
97
130
63
124
79
102
67
76
63
76
106
155
74
70
97
85
87
81
74
66
81
53
115
44
78
44
201
99
77
75
143
71
113
88
102
71
154
90
110
190
175
148
181
273
93
74
94
116
88
64
65
85
67
111
112
126
82
147
171
95
121
128
72
139
84
109
59
213
120
70
112
117
35
78
145
148
111
91
132
107
80
203
83
63
102
112
105
117
87
94
83
124
98
88
82
119
134
81
86
76
120
156
118
163
91
104
89
82
89
55
80
147
84
118
130
97
65
149
148
97
74
67
112
109
88
100
111
93
99
75
102
87
79
67
93
109
94
102
92
108
141
124
117
160
144
116
106
152
71
69
158
84
129
129
60
90
77
26
52
58
191
186
128
105
53
109
97
51
196
71
83
124
134
132
92
74
136
148
121
76
178
145
78
81
103
93
144
121
111
174
215
84
56
186
98
163
201
174
154
84
100
110
93
112
143
138
176
127
67
127
121
104
166
77
181
81
117
124
95
79
145
135
119
74
60
128
71
132
76
97
100
112
70
213
48
104
120
40
63
49
87
37
72
109
86
88
171
160
159
111
113
80
141
103
71
186
139
119
134
116
29
99
70
71
91
172
106
45
169
93
91
106
90
148
97
119
102
85
124
111
94
67
152
174
136
158
101
50
97
79
176
138
130
94
107
83
105
95
111
97
95
129
209
63
65
95
99
126
60
67
121
53
97
91
134
149
107
68
164
88
123
120
89
55
143
99
77
87
112
140
98
123
128
185
69
104
102
155
69
100
94
109
129
124
71
89
52
73
91
134
57
131
180
74
153
164
92
46
84
83
103
79
77
61
125
34
80
98
91
128
124
94
130
106
64
79
93
111
80
154
103
122
51
95
122
108
99
146
126
95
75
99
128
107
71
103
99
99
130
114
59
141
106
118
95
86
61
186
119
108
162
108
138
109
52
42
69
131
162
94
104
94
100
66
106
154
76
44
59
78
90
136
37
115
188
80
133
69
137
79
88
92
86
157
176
127
146
90
57
150
86
102
46
153
67
128
92
60
80
84
134
136
54
107
64
114
117
108
82
81
131
204
119
74
113
53
105
99
157
107
112
124
93
103
107
110
86
134
144
112
93
109
130
183
78
88
77
127
123
104
68
82
90
89
116
106
89
102
86
64
59
59
76
115
157
116
173
132
159
88
119
167
123
122
95
81
92
79
109
122
130
99
79
101
167
104
99
129
84
129
69
67
96
88
94
91
51
104
98
205
97
80
80
87
140
146
95
93
101
100
109
116
52
114
99
118
64
104
79
134
96
81
123
152
150
117
87
75
60
109
90
62
97
120
81
62
98
121
99
111
102
60
85
81
85
148
193
70
119
78
129
70
100
87
83
70
35
95
91
144
174
38
103
104
61
95
101
158
91
90
133
84
138
95
110
66
82
143
155
116
129
79
96
100
62
86
141
163
70
43
150
211
117
108
74
83
73
91
159
67
114
90
143
81
148
102
62
44
102
83
136
73
46
62
83
104
90
56
97
141
86
180
69
75
67
97
65
50
94
170
135
64
115
119
98
68
78
128
111
98
101
92
99
96
143
112
114
67
41
125
74
74
146
135
64
83
116
134
89
133
63
101
37
91
76
111
108
39
34
60
56
111
111
87
69
62
183
75
107
187
65
51
73
82
92
242
94
120
96
105
106
158
75
96
128
113
75
132
127
99
75
140
86
106
93
119
119
148
99
73
123
168
104
163
121
181
90
153
102
128
77
123
115
52
96
107
101
197
72
106
86
93
104
73
145
63
65
92
180
104
144
76
182
115
103
142
93
111
95
85
140
57
187
137
100
42
130
74
106
57
72
81
98
115
92
123
148
94
142
104
152
141
65
96
144
45
104
106
90
119
79
57
118
68
37
71
138
113
94
115
100
88
82
181
112
47
124
135
99
136
86
140
137
116
72
155
101
164
116
88
101
86
59
130
109
121
143
123
128
118
99
143
128
121
101
79
120
73
115
115
99
163
61
100
133
185
100
50
140
104
92
194
123
126
105
86
77
133
85
111
85
97
109
50
117
137
113
118
112
122
151
81
175
159
74
112
52
167
132
120
116
93
96
71
88
88
99
44
58
87
70
102
124
156
98
98
97
134
108
112
114
60
104
64
87
113
120
109
80
40
148
182
143
113
129
115
83
126
97
105
120
174
88
78
137
169
126
43
196
108
112
83
62
96
174
75
128
136
108
134
99
125
94
89
151
90
161
103
106
124
104
137
131
119
83
99
61
104
78
101
169
186
139
126
97
110
123
103
165
113
38
88
89
111
157
40
97
144
77
178
98
201
174
149
97
82
119
128
66
37
95
68
92
100
112
85
134
52
63
94
75
53
121
79
70
127
76
115
76
125
91
102
80
96
95
135
137
51
116
112
136
135
63
120
106
130
118
125
56
112
113
147
191
149
78
81
89
110
96
77
160
96
146
69
91
110
161
180
114
89
151
85
83
85
121
106
75
141
76
180
133
101
103
133
161
81
187
146
147
66
207
73
105
78
94
128
123
120
83
90
162
117
74
154
90
122
44
108
72
132
82
109
69
116
67
119
128
61
75
86
69
84
132
124
48
86
75
54
123
40
84
105
120
111
109
66
140
79
108
93
145
51
162
85
116
93
116
121
79
51
121
90
93
49
59
102
102
95
61
102
124
111
155
152
147
129
52
110
65
134
143
76
74
70
39
127
142
134
76
93
103
49
80
100
55
88
172
87
115
49
173
78
145
146
121
87
89
71
118
118
79
155
92
75
39
61
134
78
162
94
146
92
68
104
188
104
125
119
62
56
89
78
105
80
115
84
112
164
64
155
169
48
144
103
36
110
169
135
86
76
158
166
108
78
89
132
60
41
147
140
103
116
91
116
50
104
75
66
128
65
101
77
88
100
162
78
141
50
79
212
93
186
74
80
82
118
71
86
33
74
47
83
87
125
77
100
51
84
138
129
97
82
86
76
101
60
143
78
104
130
119
128
114
118
53
133
70
50
141
116
69
82
150
102
165
102
125
164
49
130
118
172
61
93
137
76
147
82
0
65
130
73
133
110
156
70
94
140
79
117
91
61
139
139
105
133
82
45
38
70
89
60
77
106
87
104
61
76
107
146
82
139
106
88
61
150
91
78
73
150
80
115
82
82
107
131
105
194
94
134
101
91
68
152
128
99
133
83
106
101
143
129
190
84
102
100
149
129
87
80
126
37
177
99
129
88
143
123
102
185
42
100
102
132
105
106
83
128
114
75
116
60
107
124
93
85
101
69
63
125
75
119
126
168
83
99
105
86
125
136
142
162
116
85
130
119
38
57
115
73
184
107
112
89
87
67
109
163
95
63
67
56
106
136
101
90
79
181
93
98
128
138
120
101
56
167
66
107
110
80
112
149
155
104
102
91
75
120
113
56
80
90
99
61
75
95
74
71
71
158
129
87
102
68
145
144
71
141
120
75
92
94
64
119
138
78
75
70
69
90
126
75
91
120
84
111
102
67
62
71
116
137
119
88
61
138
62
113
169
74
80
82
125
127
82
106
101
95
141
96
137
56
124
113
112
155
110
98
115
153
71
118
98
129
159
103
148
88
121
69
142
166
58
49
91
118
100
119
90
119
88
91
96
95
136
138
85
139
109
127
98
158
128
78
109
97
88
152
125
97
164
92
84
112
119
83
86
66
99
77
76
109
113
120
113
93
127
63
127
108
64
107
122
83
124
76
51
85
89
70
163
166
68
87
82
100
129
100
80
139
101
53
68
73
77
106
83
108
72
110
73
58
134
116
144
69
119
163
92
63
160
180
96
112
105
148
91
90
80
158
167
108
110
66
128
63
108
111
81
98
48
82
131
181
63
112
129
90
87
205
66
51
113
95
93
107
247
164
142
101
93
81
70
67
202
57
123
79
113
191
71
170
95
115
71
88
79
69
66
163
101
137
87
73
82
139
145
105
113
113
72
140
97
128
125
82
67
64
139
152
121
97
112
78
95
136
79
100
165
60
52
32
147
110
99
257
161
61
91
196
70
60
152
109
105
88
68
95
86
86
44
49
75
81
82
95
33
31
130
117
88
74
60
66
70
51
57
150
112
54
43
84
136
68
113
121
149
132
160
77
63
53
64
113
110
80
60
200
69
113
101
100
108
57
135
66
85
85
58
217
50
60
126
76
105
126
107
66
137
219
194
87
77
107
97
132
53
74
143
116
70
63
47
111
167
57
148
98
116
96
106
187
122
61
85
101
83
155
124
91
104
122
99
68
322
110
127
182
124
60
148
89
102
102
87
49
178
121
140
130
103
82
114
103
66
90
55
82
75
93
78
123
98
108
110
123
111
57
120
63
140
50
164
134
24
98
123
65
126
73
106
138
223
134
105
101
138
108
134
54
201
229
173
132
104
99
119
43
108
32
196
157
81
92
163
96
136
106
135
87
76
69
139
247
101
118
154
136
121
168
153
33
127
167
85
164
106
92
135
185
211
133
87
130
100
66
128
54
52
207
94
158
63
148
150
176
59
127
120
132
72
172
81
97
108
96
156
81
132
136
73
134
105
113
73
51
112
43
98
120
134
120
124
179
69
46
95
126
101
210
108
83
91
156
48
33
122
162
130
84
86
126
98
249
90
145
61
56
144
82
83
105
77
60
117
67
103
106
177
120
157
101
95
101
131
100
209
101
87
106
126
86
107
55
94
105
139
106
167
110
208
87
79
68
162
112
75
82
171
124
91
117
137
37
165
88
142
61
104
128
145
193
63
135
51
83
133
60
110
139
133
79
135
120
125
103
89
92
86
91
97
79
86
174
150
72
142
121
153
72
78
196
157
135
96
95
70
58
99
198
107
95
157
83
231
96
101
153
148
111
149
77
72
89
53
96
139
110
157
53
146
133
88
168
196
126
82
66
134
164
96
108
97
123
96
109
78
192
113
60
81
54
158
73
132
134
82
83
74
113
180
153
109
47
51
125
107
98
105
127
65
38
137
61
97
59
109
107
113
142
115
101
83
44
94
118
97
73
33
54
38
104
109
135
85
118
160
89
80
136
169
118
111
83
232
103
130
191
82
96
61
96
142
145
102
69
138
126
98
137
202
107
131
99
63
103
130
74
203
114
73
91
94
105
84
91
81
120
62
181
79
91
79
136
129
91
65
113
123
66
76
98
96
104
111
103
83
169
119
59
88
113
95
61
81
135
112
68
111
125
108
79
112
155
114
61
80
148
155
121
68
74
79
115
94
82
66
55
142
78
85
113
111
128
114
42
114
65
129
68
47
57
133
111
87
107
71
60
166
65
88
129
131
124
131
91
129
112
80
141
82
106
86
109
142
131
104
45
79
121
61
184
95
76
136
91
73
96
82
92
111
86
95
92
72
94
139
73
139
158
84
95
101
125
45
113
160
83
86
90
83
59
111
64
74
67
87
55
108
163
80
110
123
90
118
124
63
92
168
61
69
133
124
128
106
124
93
111
95
87
98
87
101
90
140
46
112
121
65
123
133
120
95
86
146
84
160
169
112
122
92
67
181
155
211
121
101
77
118
66
106
42
125
101
137
90
222
68
149
106
131
74
61
104
164
64
120
88
160
191
119
197
245
79
129
84
136
110
38
146
51
127
127
124
69
110
120
44
125
133
108
74
83
159
127
104
67
139
135
85
144
62
90
125
82
154
99
95
146
103
114
88
52
74
82
178
61
51
196
135
127
80
164
91
113
70
116
110
139
131
67
59
123
94
39
54
86
72
87
73
85
99
141
63
82
131
219
48
57
106
66
78
113
57
111
142
97
92
100
90
108
66
103
115
158
51
110
104
66
54
106
72
98
95
204
85
175
149
166
116
67
80
118
108
136
99
87
115
112
146
44
197
118
126
164
103
116
55
69
79
95
99
36
89
102
95
90
68
131
101
129
114
88
116
82
80
106
190
77
76
58
208
172
131
118
152
127
135
78
171
161
45
108
78
74
129
152
46
172
129
68
112
81
86
74
136
187
84
114
38
67
47
160
92
172
140
67
83
113
136
109
108
87
159
60
70
93
112
110
100
120
221
75
77
186
71
135
59
71
49
94
104
96
67
87
79
41
93
152
73
79
50
44
127
59
117
129
88
137
104
134
92
117
114
86
62
88
143
79
137
94
69
96
106
129
107
106
91
69
87
122
153
128
85
139
37
72
99
111
120
138
66
83
105
72
77
123
87
84
118
112
137
65
91
116
127
109
109
48
120
67
105
104
94
112
90
112
176
109
114
103
102
140
111
97
157
127
47
170
144
104
118
77
180
67
99
41
80
124
62
61
81
114
116
141
113
38
157
75
50
137
62
50
140
76
129
137
75
105
234
154
122
112
64
148
68
199
48
225
151
44
107
134
74
81
60
84
97
132
121
55
143
87
118
143
41
85
37
135
113
103
146
89
122
122
118
76
115
164
98
92
55
287
83
62
77
146
77
97
107
78
101
81
162
71
124
144
61
77
71
51
96
134
86
116
128
131
75
77
101
86
90
68
69
172
70
73
52
126
104
96
73
96
185
118
141
84
95
118
108
50
64
87
108
85
108
130
70
119
107
95
157
56
77
164
92
101
106
122
96
170
50
211
74
115
147
80
131
102
81
76
101
124
101
58
121
37
67
64
89
120
55
128
155
175
169
157
82
132
82
73
81
188
88
59
86
105
139
171
92
73
98
121
70
130
64
105
196
93
91
118
52
130
65
90
59
94
110
57
88
129
98
122
106
107
162
108
141
62
162
116
112
61
112
138
126
128
153
119
217
140
66
100
194
170
150
105
132
172
105
193
71
96
63
67
79
68
100
97
118
99
102
96
146
51
54
168
86
107
111
127
114
111
60
108
88
81
133
98
49
130
70
182
144
82
121
107
85
81
117
83
51
108
113
83
85
131
163
46
106
70
99
162
58
31
100
56
55
61
153
126
105
112
84
42
105
136
65
74
150
146
75
141
133
66
128
72
60
92
80
189
83
127
117
163
87
76
150
109
76
129
95
184
67
78
104
96
76
100
179
81
78
118
107
73
94
71
76
124
99
87
83
133
78
90
153
133
111
145
111
55
117
44
134
167
64
59
151
101
75
98
179
76
176
92
94
156
82
66
69
55
62
89
121
43
116
84
109
110
160
130
81
119
77
77
77
120
110
79
65
107
105
101
102
177
79
58
110
111
84
137
105
101
121
95
156
53
113
146
66
82
127
128
63
142
203
136
67
161
87
125
65
49
67
140
89
126
131
145
110
80
112
165
104
128
163
144
130
97
60
99
124
206
86
93
82
49
119
72
61
124
114
102
135
120
135
180
66
57
109
110
67
132
42
58
46
80
78
86
163
93
99
64
82
124
124
81
89
72
134
137
151
132
142
70
74
120
94
62
169
115
64
72
57
76
158
92
148
68
155
119
110
76
128
73
103
128
131
136
131
203
63
80
66
93
141
68
123
192
138
107
71
83
104
95
185
72
71
206
75
97
76
70
128
79
138
56
165
58
92
87
59
73
63
78
54
167
173
99
111
141
115
142
87
134
67
223
87
86
105
127
74
136
74
84
91
60
100
96
83
46
62
94
172
76
106
116
29
111
118
55
73
131
194
129
148
69
93
150
75
112
143
128
81
94
36
95
120
123
91
127
84
78
145
127
112
56
124
50
131
127
168
111
175
68
124
77
153
117
102
71
96
107
59
127
55
114
104
63
102
115
170
115
88
80
118
87
190
60
106
135
99
60
49
48
81
74
58
113
123
77
93
94
55
100
122
95
128
54
85
98
51
73
83
46
48
120
71
108
58
178
98
39
94
55
53
111
164
46
88
167
168
124
94
174
187
136
135
93
102
73
99
58
99
127
100
128
129
75
158
133
126
113
110
108
54
90
82
95
93
96
85
167
72
179
65
131
85
60
64
127
150
123
134
117
98
102
234
66
158
115
88
80
68
140
44
126
62
47
79
60
21
115
128
171
97
121
102
101
119
81
136
47
94
88
65
40
102
154
92
48
103
45
124
98
83
125
158
139
87
66
183
101
109
95
67
42
167
73
59
119
95
80
45
72
112
123
168
127
101
95
104
81
95
82
72
55
42
59
46
88
63
95
115
91
135
188
57
86
195
111
58
116
159
119
80
44
133
161
135
129
112
38
49
82
217
100
61
106
94
113
104
110
76
176
117
156
100
111
82
64
129
147
121
57
42
35
87
109
86
121
59
51
108
56
96
107
61
73
85
76
94
130
100
47
145
103
151
129
85
56
68
78
121
138
90
177
79
81
122
164
80
132
104
113
113
96
78
69
79
104
74
101
41
126
70
130
115
72
53
83
77
155
76
133
85
127
126
108
102
69
88
123
129
54
139
105
71
99
135
154
133
126
33
127
64
111
89
81
78
69
98
56
103
145
107
86
49
71
63
90
112
98
58
73
143
144
160
50
71
79
83
72
72
89
78
63
105
54
102
179
106
84
140
66
102
116
118
136
99
167
130
157
99
86
43
183
74
90
60
102
147
159
98
211
39
80
85
114
195
109
100
80
73
156
95
161
110
79
97
90
142
131
62
105
54
188
100
126
110
151
50
103
101
96
105
69
101
113
74
108
138
84
111
86
142
122
152
118
97
58
136
113
64
97
106
120
58
104
131
77
61
67
42
106
123
135
158
90
94
87
192
38
53
129
145
147
130
64
125
110
103
163
97
86
100
78
95
161
90
99
114
77
87
87
59
58
67
72
235
92
120
86
81
125
82
166
57
83
144
63
93
159
160
168
106
88
136
215
98
124
80
65
115
128
140
115
159
99
113
87
203
93
98
100
139
142
53
83
106
124
110
149
72
111
57
155
106
67
112
90
72
83
68
105
128
179
90
98
54
109
174
51
122
135
63
70
122
158
78
113
133
125
99
87
92
52
115
130
63
221
103
168
74
82
90
35
88
130
91
99
191
164
62
122
97
184
95
119
88
77
119
156
151
125
119
142
132
129
67
143
147
148
73
131
81
115
119
131
82
138
89
122
50
59
130
81
101
81
122
78
104
115
47
40
79
92
80
113
64
191
62
69
87
138
91
107
63
118
164
119
128
89
72
122
97
105
136
124
142
90
100
178
113
60
121
155
39
128
174
147
100
86
106
95
67
139
57
87
150
65
154
145
98
95
143
104
94
77
81
90
115
110
42
95
103
137
132
92
103
126
102
150
135
103
84
93
68
173
96
179
119
126
75
62
180
147
89
79
100
111
70
190
53
119
64
90
104
77
121
92
128
123
92
66
89
61
134
105
67
70
152
88
141
43
115
66
201
105
48
76
156
107
70
50
77
117
70
130
122
114
70
83
112
133
72
123
157
140
169
115
158
220
116
128
134
133
132
96
117
101
148
135
57
58
82
76
122
80
79
118
60
55
94
129
72
172
82
129
122
120
95
57
161
185
96
108
58
58
52
72
97
76
162
34
160
112
78
133
141
97
140
89
57
85
85
156
57
127
101
87
114
74
139
141
110
32
55
121
75
107
163
85
128
80
123
40
88
130
100
102
116
100
98
102
106
50
85
60
220
88
59
129
91
88
107
155
67
111
99
94
75
59
138
129
75
55
131
114
124
99
143
125
77
99
140
89
152
99
88
83
141
87
116
107
162
74
136
56
139
97
92
49
72
102
87
63
144
85
62
77
69
174
84
97
48
129
71
125
129
144
71
75
56
68
132
128
150
109
155
116
65
135
154
92
105
74
77
113
49
52
182
51
91
87
142
85
151
102
108
138
148
157
147
71
113
140
174
53
119
59
88
71
94
209
115
57
130
109
94
118
72
138
94
79
126
95
85
79
132
160
163
73
151
65
93
88
113
139
174
123
117
174
159
105
165
75
144
74
108
181
61
81
103
136
112
105
47
140
50
141
106
93
97
79
152
154
75
134
58
73
109
93
127
92
88
136
116
130
93
134
111
166
61
97
63
172
113
101
97
65
67
73
104
137
52
53
151
108
134
142
156
46
82
71
190
67
160
166
107
98
90
96
65
112
125
71
54
76
209
129
134
70
116
94
152
139
53
57
82
148
78
71
186
121
128
121
141
120
61
63
80
158
41
138
113
132
107
139
117
65
54
76
100
161
106
74
173
195
101
175
127
180
138
149
76
109
68
131
129
57
118
206
65
155
46
65
154
100
141
95
195
217
69
123
135
118
84
109
105
102
178
158
70
74
103
77
84
160
175
118
175
121
157
75
74
159
103
76
86
111
131
102
136
176
120
146
87
131
61
126
119
97
43
100
149
65
133
88
162
47
111
116
61
97
147
111
99
133
56
112
80
59
113
164
188
67
132
164
125
64
185
138
93
75
133
79
99
110
99
140
167
104
96
50
116
126
87
144
111
108
123
97
139
119
154
60
164
145
136
99
162
86
88
66
133
68
88
111
59
52
61
150
77
142
127
109
54
126
94
88
132
52
82
101
126
85
125
160
75
144
108
105
87
128
91
140
104
92
140
78
92
96
142
84
149
104
79
93
120
80
114
123
117
81
100
73
71
59
175
102
82
126
143
103
124
111
58
104
68
96
77
126
159
100
149
109
104
118
152
127
55
141
131
100
69
63
86
139
130
79
40
92
114
129
51
146
105
102
168
78
64
99
70
122
173
128
77
116
60
123
142
87
57
108
74
125
83
104
117
140
111
65
159
63
140
130
193
139
162
95
139
113
155
108
115
91
105
57
110
312
55
133
38
157
208
91
76
83
83
145
55
54
82
72
113
96
104
56
112
100
47
172
154
139
84
110
65
113
109
132
174
118
75
133
57
88
139
87
75
142
106
74
69
133
16
84
114
110
146
144
167
65
133
46
120
91
110
42
173
138
53
63
162
99
160
156
106
69
87
154
114
68
143
90
95
68
137
91
165
127
99
77
98
63
77
100
112
81
110
125
85
126
148
124
58
116
19
57
107
92
127
89
67
98
85
97
167
98
107
85
129
46
62
106
86
128
135
44
177
92
201
62
207
149
145
154
132
138
202
82
117
144
76
109
71
71
86
84
49
99
109
60
63
118
165
101
118
96
96
171
114
157
129
44
85
128
56
100
65
108
122
108
72
116
137
170
98
147
114
107
139
97
76
67
123
41
101
118
169
95
103
143
70
74
109
133
102
103
45
171
98
68
122
79
116
79
173
121
124
33
78
125
164
115
166
30
111
111
96
167
143
123
39
57
37
151
142
115
137
82
68
103
139
106
108
67
72
146
48
128
117
135
93
143
148
73
68
68
128
112
136
73
107
126
70
120
104
102
57
97
56
75
148
76
67
65
167
55
100
80
61
124
75
160
55
112
93
100
85
131
138
119
82
103
151
53
133
97
131
85
123
58
128
108
142
134
166
111
124
114
85
166
80
177
84
65
72
112
19
120
169
170
140
34
91
165
149
148
129
121
109
180
105
157
148
128
120
71
76
72
106
144
76
97
37
150
175
60
95
57
85
95
87
117
189
70
78
115
97
153
196
134
136
147
142
167
57
176
116
144
123
72
105
156
116
52
123
89
109
76
171
181
55
74
79
79
83
106
69
78
96
103
64
171
107
93
53
152
135
83
224
99
109
124
83
108
41
131
150
47
114
87
109
78
105
88
82
123
76
101
172
106
79
146
171
88
243
125
121
81
44
125
122
158
122
172
160
86
90
155
125
169
139
157
125
93
114
92
118
152
169
148
119
86
59
101
79
92
138
70
54
83
81
94
122
116
102
119
172
72
89
72
85
108
86
123
96
139
74
144
50
97
97
134
73
89
94
66
58
120
114
128
109
57
102
155
118
112
91
60
52
105
78
97
90
56
110
51
132
87
54
123
102
149
171
157
121
114
148
127
83
85
84
109
55
134
115
57
188
140
119
102
102
163
99
78
69
55
106
131
111
76
164
92
169
113
84
89
137
105
92
78
141
133
123
158
92
141
96
114
109
57
135
181
143
70
90
80
143
205
107
71
57
223
40
130
53
116
114
104
62
115
94
155
120
81
131
110
82
142
136
137
83
104
107
127
105
72
74
159
123
169
107
73
105
86
123
160
43
134
117
115
112
59
94
119
70
71
41
65
137
79
50
114
131
74
42
118
87
106
59
194
96
151
34
125
104
69
52
103
64
76
114
96
142
117
52
79
218
151
89
106
105
67
177
83
103
108
104
87
74
98
169
52
57
51
127
74
150
95
203
112
178
101
89
35
92
85
44
68
78
120
162
59
91
133
76
74
109
129
129
84
63
137
80
82
163
106
80
70
93
74
68
139
87
105
111
126
56
141
80
157
155
148
57
112
131
181
133
76
108
67
54
112
110
50
132
177
121
93
169
78
39
94
65
118
111
162
99
121
99
117
132
118
70
132
56
40
82
61
59
125
128
103
123
103
61
128
62
90
109
145
93
59
114
91
131
175
180
147
85
125
161
159
66
84
80
63
79
140
38
87
105
72
90
99
109
57
53
87
45
89
84
127
116
62
95
99
206
70
94
123
88
125
107
107
173
147
89
114
41
185
145
144
122
97
49
141
84
107
66
102
92
71
101
108
94
143
132
93
206
137
75
83
48
191
77
95
102
50
86
107
107
180
90
36
70
61
106
71
73
88
121
114
112
136
142
115
150
145
83
79
88
99
117
129
175
158
88
97
111
74
118
93
87
87
107
113
144
190
122
111
32
139
206
104
110
139
52
61
82
109
139
147
67
59
169
100
127
176
102
83
121
48
148
135
43
149
81
105
119
108
82
125
101
103
156
71
133
140
67
82
138
48
100
79
100
124
177
133
103
110
156
139
50
113
79
173
94
46
144
89
139
92
100
162
134
87
87
256
52
155
114
152
117
93
125
188
75
70
72
128
44
77
78
202
129
40
65
87
116
125
128
128
64
77
74
86
164
111
97
98
97
146
87
100
43
80
121
61
69
113
110
157
161
165
102
63
90
100
162
150
102
163
127
50
58
105
96
54
89
99
105
147
73
149
71
88
115
44
51
76
141
84
79
111
160
108
67
133
149
112
67
104
108
124
167
184
157
71
107
184
80
143
97
105
78
61
86
106
96
115
86
141
161
138
128
108
143
78
136
149
49
65
90
55
87
80
181
154
112
63
109
137
63
129
60
109
88
145
186
58
84
90
158
100
88
88
176
247
135
134
97
59
93
69
89
122
125
94
177
162
181
64
104
81
139
89
125
105
179
71
77
145
107
56
108
156
98
91
128
114
58
120
129
108
67
117
151
86
136
127
86
126
121
118
32
61
101
77
95
113
79
109
49
154
106
124
80
72
100
88
77
88
154
117
96
142
84
65
100
173
113
115
112
147
114
118
52
58
145
121
116
106
136
82
138
86
84
98
142
100
153
124
48
98
170
131
130
93
71
84
120
83
89
109
27
154
76
150
97
91
106
87
91
199
108
147
74
71
123
77
104
118
54
122
162
41
106
59
98
115
96
76
107
199
132
164
109
139
142
104
123
91
85
108
82
43
98
74
68
191
133
55
99
66
81
159
114
91
101
146
75
98
132
59
131
115
128
78
124
109
91
132
57
120
64
109
73
60
88
99
39
79
171
110
89
98
119
108
111
60
78
77
112
160
82
75
184
57
92
139
65
78
92
47
151
132
71
83
98
82
131
138
66
97
138
79
63
118
134
90
148
113
50
81
171
161
60
145
121
81
125
110
52
117
176
95
85
89
64
92
124
95
116
133
121
71
63
114
105
125
152
86
77
61
85
95
67
135
147
98
113
146
92
64
98
79
109
102
117
120
117
59
111
89
123
115
54
58
168
94
70
91
78
94
54
90
64
215
71
42
73
99
124
67
96
91
134
80
212
105
57
51
98
92
86
153
46
95
71
135
100
86
137
69
150
72
115
90
101
77
62
89
139
111
99
41
55
76
102
54
185
212
96
119
124
71
103
91
97
97
141
71
78
70
119
60
41
50
142
117
40
80
120
44
143
89
51
103
62
45
150
136
116
83
104
131
106
145
59
113
131
56
131
52
68
68
85
112
81
112
130
108
153
121
85
85
110
116
109
94
77
102
129
86
137
119
137
118
116
158
94
143
108
119
134
67
81
117
83
141
45
162
129
110
81
177
62
108
135
66
87
105
138
94
132
125
96
79
130
74
61
74
124
165
134
69
71
102
129
73
76
85
58
61
62
123
67
192
147
94
89
126
56
58
45
87
155
78
144
44
151
130
110
61
76
95
75
115
120
63
73
193
196
68
87
104
136
111
65
70
111
127
179
46
108
85
139
133
121
119
88
119
108
136
123
84
99
112
97
144
204
123
88
102
130
74
47
105
91
199
153
100
88
183
88
86
90
95
153
209
87
112
65
89
69
118
128
63
67
85
59
180
114
109
101
105
104
108
153
68
67
82
66
134
49
82
71
115
175
85
137
165
130
109
122
89
122
97
146
42
86
113
91
111
94
71
89
95
136
176
87
77
67
89
89
51
76
86
90
203
130
93
92
71
99
150
186
125
68
65
110
75
95
83
95
76
116
134
75
137
60
193
86
87
144
75
50
80
110
156
62
94
66
152
38
130
62
74
139
50
98
90
117
161
137
57
112
158
73
114
63
82
99
115
104
105
195
163
95
145
72
131
131
145
128
141
103
69
56
65
94
98
44
93
47
43
100
186
140
117
81
80
93
148
87
98
62
115
93
115
129
136
96
62
117
175
57
104
131
176
133
105
75
98
117
75
48
72
108
102
106
203
128
60
90
63
137
60
37
96
53
98
94
185
74
63
91
86
59
91
146
94
68
151
111
154
169
102
106
65
85
115
108
169
137
151
71
161
87
116
106
158
206
120
95
136
162
82
59
114
94
127
54
168
102
95
120
136
140
124
100
72
67
71
123
101
55
148
101
111
178
147
105
164
116
79
126
83
171
59
95
167
80
234
135
50
140
120
83
119
106
51
194
103
54
82
154
112
122
197
96
93
104
49
174
164
122
110
102
162
99
123
110
120
91
120
108
55
93
144
81
133
141
90
108
57
154
77
103
103
37
120
111
105
112
83
67
121
95
85
52
148
161
57
58
123
69
114
101
119
221
158
66
102
69
68
113
146
71
73
132
155
75
119
115
137
128
156
69
32
86
45
61
119
70
213
86
89
91
70
56
122
50
86
105
163
180
100
117
76
82
126
129
150
50
106
97
119
85
82
119
76
73
145
139
97
141
76
185
92
98
99
84
107
107
106
102
168
69
123
93
98
120
117
71
151
90
90
104
44
59
70
96
131
83
35
85
154
84
73
58
133
135
144
134
127
126
96
66
142
111
99
73
109
82
101
129
123
133
142
65
75
151
101
76
108
94
97
129
85
79
155
60
109
64
114
103
32
84
154
62
80
96
109
93
132
130
143
104
166
86
97
86
110
119
212
93
83
82
68
71
59
167
106
111
96
88
129
180
119
122
169
114
205
91
104
108
61
79
66
147
76
103
61
148
65
147
88
109
91
104
92
72
150
91
104
74
73
37
48
148
180
95
74
130
127
121
86
122
76
138
110
86
152
138
82
160
113
126
89
126
91
77
148
84
42
93
85
101
83
138
198
50
74
59
109
109
77
73
103
33
158
70
188
66
115
102
99
95
105
98
93
78
63
88
119
116
155
90
167
82
39
51
127
76
116
95
142
130
173
92
88
98
203
87
53
57
91
125
123
134
89
79
66
171
156
86
141
121
118
65
105
77
83
72
94
91
58
148
111
104
140
71
70
96
157
97
73
117
162
44
117
119
71
112
98
127
124
182
94
185
71
97
113
119
73
144
53
94
142
137
71
57
130
138
188
202
98
128
55
116
121
151
78
204
64
83
156
137
103
169
48
95
180
92
195
122
81
96
77
90
85
101
50
140
56
134
101
131
120
85
90
58
36
101
77
91
117
179
129
166
53
106
45
135
128
113
100
101
93
90
61
96
90
106
116
120
166
70
69
53
104
101
110
168
98
40
82
141
125
99
127
87
124
90
193
100
96
128
95
103
126
98
105
131
117
208
157
103
72
153
155
79
88
182
141
84
143
123
88
124
147
123
150
135
82
58
134
117
96
164
59
113
142
142
142
197
142
54
154
77
79
166
110
69
215
64
88
86
58
116
78
111
184
78
84
141
124
109
82
124
124
80
133
123
156
78
137
108
132
82
108
109
107
93
42
169
62
86
66
84
81
108
167
111
108
44
115
101
125
101
78
61
63
122
83
123
51
108
61
135
115
81
77
151
84
103
70
134
139
84
107
139
144
79
73
122
164
196
114
116
86
69
126
141
42
105
75
79
159
111
108
102
136
100
135
51
77
119
82
84
126
147
116
124
70
132
87
77
143
84
99
124
102
62
109
143
135
95
84
124
88
97
90
103
32
94
122
70
70
44
85
41
61
112
102
85
88
102
115
187
149
69
103
111
81
124
115
76
188
53
114
121
129
53
103
100
239
73
90
76
139
179
140
117
133
64
232
152
53
125
107
98
101
115
72
146
92
116
172
77
62
82
278
108
176
101
106
34
132
63
138
82
141
192
96
94
151
124
96
45
51
83
93
74
66
106
83
84
103
104
91
93
94
76
144
69
112
126
147
127
76
100
60
116
85
81
118
87
110
161
181
53
67
46
150
150
137
154
158
30
103
70
70
84
79
121
138
124
131
158
127
58
84
102
80
114
206
135
105
83
129
64
90
121
131
98
89
225
184
74
83
146
141
207
61
102
156
168
100
98
85
125
104
182
105
114
161
130
186
68
89
90
118
139
123
219
74
109
65
117
90
140
43
159
81
72
61
151
76
135
66
144
124
57
73
111
146
168
208
146
88
95
89
55
94
121
55
107
114
86
70
70
104
282
37
139
87
141
189
89
191
66
102
146
129
55
131
103
148
53
94
54
84
158
178
91
141
78
97
129
107
91
109
112
155
106
57
89
213
78
39
71
74
115
180
84
74
90
49
107
103
53
216
137
127
121
70
84
78
82
125
138
105
172
120
84
92
119
135
85
72
111
119
112
116
133
111
157
91
122
98
89
117
105
44
100
131
121
105
134
63
115
74
56
86
102
109
58
47
87
83
59
85
89
84
97
80
81
38
132
97
173
88
136
98
77
232
109
88
47
83
110
131
101
119
144
88
101
161
68
129
145
126
156
79
88
88
122
86
83
139
127
124
135
44
85
163
111
178
114
65
87
78
51
151
152
83
53
105
147
109
65
82
125
74
122
105
94
172
66
78
161
133
113
136
165
117
87
51
54
163
148
77
82
121
91
97
126
59
159
128
164
59
128
61
67
110
116
135
94
123
57
83
71
149
165
127
81
36
80
170
98
166
148
113
129
105
144
59
82
63
144
81
81
104
137
109
108
71
75
124
97
147
234
90
40
82
70
98
99
63
120
89
117
98
114
112
147
149
58
81
95
38
86
102
74
115
133
135
61
68
67
56
86
132
80
120
112
52
53
61
101
122
89
59
94
152
63
91
163
37
130
99
170
58
107
130
149
159
124
104
121
107
127
130
132
61
116
80
110
65
78
95
100
142
46
141
74
56
69
123
121
97
158
85
33
125
136
99
149
92
99
268
51
140
80
93
117
99
90
98
122
102
119
91
118
107
129
98
134
99
67
69
121
151
89
127
110
104
59
145
104
114
104
101
71
125
97
116
96
76
123
99
80
76
238
107
104
77
171
94
111
123
82
225
101
120
65
105
109
95
120
69
86
90
78
43
91
101
132
96
142
105
99
104
162
107
71
133
123
146
71
145
112
152
147
145
232
95
78
134
159
153
58
101
107
107
73
103
82
105
73
68
104
88
117
89
76
143
185
67
141
94
122
116
96
142
105
91
223
48
92
163
87
101
116
45
59
138
50
46
73
92
69
63
80
100
57
90
142
83
90
139
130
99
101
232
82
76
87
152
139
59
82
53
91
112
35
100
104
46
171
147
35
86
64
129
93
111
49
135
181
83
101
110
128
72
58
103
112
105
108
122
54
114
156
149
156
78
87
94
87
102
35
153
145
138
108
166
72
73
107
81
64
78
88
202
111
177
97
99
118
134
85
144
74
71
215
147
103
92
135
90
84
162
92
74
123
160
58
73
82
71
71
84
117
100
69
127
67
146
115
152
163
79
70
55
138
154
89
94
156
102
85
156
110
65
75
81
76
114
100
79
169
76
127
203
99
129
137
57
62
73
161
70
97
98
87
99
23
73
138
71
109
101
102
207
157
135
88
100
140
122
50
88
73
85
106
114
159
107
41
156
45
82
84
104
98
82
112
148
49
115
56
154
90
122
108
148
106
43
77
89
106
66
121
120
85
74
73
116
66
107
74
63
118
109
54
88
40
100
75
147
123
97
124
137
93
73
48
158
109
115
112
89
218
108
107
75
124
63
79
90
48
143
59
88
146
141
214
72
136
49
158
63
110
76
88
105
102
57
178
69
134
103
109
124
97
68
89
90
105
150
139
101
94
117
64
78
92
94
158
130
81
130
52
84
86
93
108
100
120
77
126
185
70
100
125
128
99
118
136
120
77
137
122
107
67
171
88
198
67
71
131
149
222
112
50
98
84
116
79
89
133
57
147
83
138
88
73
147
123
70
133
73
70
216
75
61
87
82
99
73
91
71
77
123
125
61
100
75
78
164
106
127
69
89
133
147
138
106
140
144
50
106
116
94
119
84
91
110
73
160
98
102
84
141
95
94
167
57
120
77
63
68
77
73
126
102
62
114
67
112
122
134
115
81
60
128
128
74
83
93
67
116
63
121
160
44
120
65
69
99
111
113
89
117
63
334
113
99
51
96
231
103
87
52
110
78
133
101
141
95
96
78
131
152
95
152
37
88
81
105
117
103
95
100
103
90
86
101
94
78
116
179
103
117
121
104
109
130
82
70
70
183
117
84
35
136
209
108
130
125
89
131
131
105
60
94
57
102
119
90
75
107
46
104
60
141
117
138
133
157
35
95
116
86
81
99
74
82
131
52
90
134
84
119
142
129
111
156
64
116
110
105
128
71
115
107
74
67
98
82
70
119
106
140
96
152
72
108
65
92
116
107
125
80
101
96
66
76
123
84
122
57
74
145
135
101
137
98
67
95
99
50
121
95
128
117
85
230
97
98
76
85
74
158
130
190
82
115
62
113
163
106
114
148
142
147
110
124
86
77
110
100
110
107
85
58
88
114
70
135
97
124
108
33
118
138
86
56
132
128
90
128
169
92
138
163
145
113
131
41
269
80
100
53
123
178
160
84
97
70
148
118
101
193
85
202
113
74
111
160
75
84
164
141
84
60
85
137
75
71
116
88
85
106
100
87
86
118
100
60
75
165
92
75
154
122
103
118
151
65
138
156
121
124
92
112
109
89
145
203
54
139
81
112
96
109
83
96
96
62
45
113
125
80
165
171
66
125
133
75
96
87
116
93
103
109
129
90
122
70
66
78
77
107
99
118
214
103
91
140
124
141
68
76
164
193
138
82
79
59
129
72
104
194
92
116
79
59
114
139
105
72
118
100
77
71
80
77
137
146
95
125
128
108
178
121
84
104
135
93
48
71
140
134
96
148
78
65
152
124
192
119
138
122
65
156
57
180
68
76
53
111
100
64
67
109
93
103
96
186
111
154
71
100
170
113
159
61
114
84
137
157
189
136
141
102
78
130
170
122
67
109
85
106
59
102
120
142
85
70
72
77
159
127
137
100
86
46
66
136
103
61
63
64
121
76
129
67
115
71
123
105
110
145
134
121
35
122
130
150
45
101
111
68
93
108
90
96
114
100
93
64
83
126
159
47
68
145
160
106
83
99
86
47
74
113
128
76
83
116
79
48
71
94
60
99
162
101
118
176
137
107
122
96
108
107
89
132
148
110
103
86
40
113
171
67
141
129
67
184
169
125
114
122
149
156
97
93
144
181
67
180
67
62
94
102
157
49
61
123
174
129
124
37
111
165
184
65
104
89
39
102
111
119
62
129
175
84
71
102
62
47
103
77
173
91
119
69
112
58
179
89
143
132
95
75
116
139
35
151
129
89
154
178
56
90
157
220
140
148
69
68
119
95
104
59
143
57
105
188
151
110
88
153
69
82
77
134
154
162
71
120
65
99
83
77
138
104
124
80
73
93
79
82
99
87
134
121
149
134
69
93
106
101
62
86
42
92
98
153
71
69
82
109
94
123
138
66
133
165
82
118
92
110
58
114
97
127
100
102
242
82
82
64
108
133
100
99
88
144
120
162
58
79
73
53
67
101
155
61
77
103
73
100
155
138
166
80
112
91
63
82
97
117
123
69
78
134
65
99
114
69
151
54
103
85
135
126
64
112
123
70
100
159
71
86
90
118
104
65
87
89
82
135
168
116
146
106
108
113
122
130
87
143
109
109
144
66
51
131
141
81
65
105
161
166
48
89
75
90
112
85
125
107
136
86
145
75
131
132
70
97
61
79
182
107
51
121
103
49
102
121
118
83
146
100
116
96
70
138
81
29
109
98
107
108
127
80
55
169
117
96
93
130
98
131
78
130
150
62
87
79
86
73
120
129
121
102
178
107
93
149
117
85
123
73
169
70
94
111
111
117
112
88
56
178
56
126
110
90
95
86
65
119
147
152
30
85
139
56
75
116
108
100
88
97
102
92
147
109
148
98
110
74
101
107
148
133
103
84
116
106
78
66
85
116
66
120
120
100
61
105
126
98
69
140
172
150
43
187
85
63
226
59
113
67
102
84
144
88
80
52
50
100
183
105
122
105
52
142
128
123
93
70
130
97
76
39
71
111
156
113
154
86
97
56
49
119
171
61
68
61
55
66
138
107
71
149
116
74
42
117
116
65
190
157
70
137
74
155
107
42
165
103
96
75
27
123
60
78
177
119
165
84
81
120
36
132
75
167
126
178
164
113
106
86
57
59
87
77
98
115
142
141
69
87
88
172
96
69
52
72
86
86
98
86
281
77
87
90
146
131
94
249
158
175
139
72
70
36
120
154
129
141
134
95
163
35
118
121
138
185
118
48
213
101
91
108
79
160
118
84
89
100
66
53
62
87
96
83
67
76
100
193
142
112
110
90
86
59
86
105
98
88
188
160
75
104
111
112
51
106
133
114
240
59
93
108
65
44
99
153
91
111
85
75
117
101
85
102
73
56
187
82
99
126
173
89
137
67
169
125
86
176
114
83
79
75
54
92
80
145
128
114
192
98
68
39
86
180
54
99
106
125
143
97
75
99
72
137
112
99
76
51
136
100
185
150
51
153
85
179
40
88
108
63
94
68
110
113
57
108
69
120
89
54
133
68
159
73
116
65
115
112
46
160
171
77
79
108
131
83
75
173
122
80
99
95
76
103
74
148
64
70
123
161
109
101
151
102
84
106
60
84
90
64
89
174
154
114
50
94
93
173
66
111
71
102
152
129
141
177
134
66
50
69
119
165
62
70
141
73
104
48
104
232
147
162
113
88
82
138
59
144
97
116
98
188
82
177
96
62
115
111
72
119
157
101
94
59
120
74
115
97
195
98
63
103
154
122
63
95
101
82
71
149
108
94
145
148
117
182
132
122
115
75
178
138
64
49
93
81
79
108
138
108
86
105
95
42
119
111
200
105
89
110
102
117
122
101
102
147
110
55
139
47
187
89
93
116
139
118
69
142
87
130
83
98
172
98
167
125
68
83
63
116
59
79
84
73
70
52
105
256
125
180
113
129
66
101
132
144
135
89
116
96
164
173
159
87
117
125
88
119
148
142
94
161
72
105
84
122
220
71
164
115
103
53
133
70
142
92
99
86
67
139
94
59
157
104
98
58
163
118
80
86
88
60
65
101
118
70
87
109
45
56
121
138
56
115
109
96
126
102
195
125
182
58
95
133
43
81
42
108
52
68
123
109
101
107
75
83
99
133
65
125
75
84
78
30
74
67
141
55
60
64
104
124
65
116
102
64
97
65
85
102
78
78
99
90
116
58
125
152
49
153
54
140
109
124
143
171
84
79
133
88
145
105
106
105
109
72
116
90
184
92
87
142
180
97
80
171
131
114
105
96
66
75
144
89
87
72
77
134
120
135
107
66
123
85
84
124
35
115
94
237
171
72
88
56
98
97
131
135
156
95
74
113
91
120
77
120
115
137
104
65
80
80
172
140
100
89
153
141
100
101
86
131
88
111
40
204
58
116
184
125
174
76
93
163
49
87
157
148
104
91
92
103
73
48
161
89
128
105
78
170
153
105
117
113
213
69
112
102
118
106
118
144
102
26
118
80
73
105
63
126
125
132
134
146
75
58
64
133
98
188
57
98
97
93
103
153
170
86
77
78
93
48
67
72
89
82
75
122
114
118
157
95
96
105
207
183
93
89
81
91
52
188
100
131
97
98
143
153
64
146
101
75
100
123
80
119
46
127
63
119
69
155
79
27
25
75
83
146
129
58
177
58
99
66
133
88
153
128
82
133
128
72
88
74
111
66
71
145
80
100
62
111
88
141
85
122
79
95
87
87
62
84
112
110
84
65
126
143
131
107
151
92
128
136
136
112
112
188
52
63
109
76
116
93
77
76
37
191
81
114
138
53
136
105
92
126
104
99
77
91
161
87
171
71
176
67
104
119
99
72
57
58
80
135
145
77
93
61
151
160
133
80
123
194
76
90
112
85
86
85
69
121
118
156
129
91
97
64
95
104
99
120
123
54
71
111
84
49
163
133
54
78
161
56
121
178
101
47
98
69
78
47
81
105
148
98
34
107
42
209
101
95
147
172
127
114
64
191
120
110
94
93
116
115
48
97
77
114
180
117
112
191
87
102
113
89
57
116
136
54
101
73
194
106
110
59
106
131
151
97
154
82
110
179
224
105
83
95
64
98
117
99
115
74
126
60
154
61
68
207
89
142
123
71
122
76
117
105
91
92
112
113
112
83
52
118
76
93
114
152
144
92
134
99
139
66
42
100
269
137
93
122
90
147
104
103
156
182
215
64
51
52
124
54
138
83
118
103
139
129
149
168
70
63
97
109
77
113
131
41
77
169
95
164
203
89
161
98
77
94
121
123
238
78
116
114
94
62
121
115
64
54
91
59
87
188
150
72
60
83
114
108
130
105
184
124
125
66
56
90
143
72
62
75
158
126
62
106
75
76
104
96
158
77
90
112
50
70
94
91
93
151
76
66
148
99
126
37
149
163
80
67
171
33
61
89
92
158
138
88
103
93
84
86
98
133
110
78
119
125
70
100
86
84
105
72
61
85
91
71
119
83
91
135
98
114
137
101
126
159
41
66
84
112
74
99
137
71
127
119
64
126
128
56
79
143
95
133
164
167
98
93
100
107
101
76
159
74
55
87
88
146
73
121
113
80
80
88
103
111
191
55
71
170
117
84
80
132
126
102
118
65
87
126
113
102
93
138
214
121
146
135
91
113
100
121
98
113
92
123
98
93
115
120
153
95
112
64
179
61
107
54
77
138
183
72
90
97
158
84
74
127
76
65
114
121
89
120
142
96
80
90
145
64
71
96
156
67
90
99
71
100
89
155
114
144
118
164
38
63
116
157
77
103
73
80
89
154
67
113
91
51
81
45
121
82
149
128
82
150
110
105
119
99
127
75
86
145
109
130
140
74
201
95
110
49
129
57
45
76
70
135
150
106
147
114
71
129
42
85
34
105
193
215
108
60
93
130
74
78
60
269
96
113
67
62
142
51
76
62
152
139
102
110
106
123
105
98
113
70
142
144
107
119
89
127
139
87
118
122
79
64
112
107
130
86
110
132
132
140
139
119
143
100
195
105
115
110
131
95
58
96
54
57
101
89
129
49
65
81
46
71
122
58
171
116
90
113
163
105
117
130
81
81
150
46
154
73
96
105
96
94
70
85
226
140
148
66
33
107
147
88
120
91
76
96
91
104
132
178
90
138
79
110
111
114
123
130
146
157
86
75
80
52
86
125
171
203
44
94
117
174
76
88
108
155
86
48
145
107
72
65
117
55
72
113
96
85
145
107
72
102
105
146
100
70
165
109
110
70
82
99
116
83
82
53
111
105
92
120
81
64
89
135
93
80
60
133
90
113
152
67
105
128
104
115
105
150
141
44
114
147
207
126
88
102
100
121
69
111
58
168
120
45
47
78
88
109
83
86
66
73
165
121
65
40
159
86
153
93
108
88
89
92
108
90
131
115
122
55
145
171
153
70
73
97
155
76
72
131
60
77
79
179
106
101
133
64
95
90
77
89
147
153
104
149
119
123
142
107
132
98
133
73
98
41
174
56
68
127
173
122
81
111
52
63
80
48
92
44
87
62
60
73
110
107
77
126
95
162
64
48
65
137
82
119
118
88
120
66
131
138
80
138
121
102
155
45
138
103
180
90
63
97
86
115
94
87
49
66
92
90
88
125
108
126
79
104
114
57
112
115
88
103
69
137
166
81
143
77
161
152
92
91
78
71
85
151
157
95
78
108
128
130
109
69
67
78
117
41
90
133
109
143
78
107
91
106
111
88
109
77
139
44
44
93
121
80
145
88
78
61
158
78
128
40
125
113
101
69
127
123
179
90
95
42
55
78
77
190
128
131
55
162
70
75
49
90
111
119
135
114
142
87
105
69
100
86
58
150
23
95
107
88
86
78
181
47
109
143
78
170
39
112
81
142
92
82
80
121
141
106
108
103
119
155
76
50
108
165
85
142
115
155
72
139
165
86
83
153
147
108
94
120
111
116
101
102
101
229
78
161
88
105
73
156
132
117
84
112
71
151
59
117
107
107
67
96
87
113
74
78
223
66
154
70
80
114
125
69
87
75
116
79
113
178
82
85
107
111
99
75
118
194
94
150
143
154
103
114
103
63
101
168
59
85
133
202
139
83
81
98
133
112
129
111
138
81
101
150
149
48
76
126
90
94
101
184
69
60
64
112
122
118
79
81
106
190
150
117
135
129
114
65
91
110
158
94
64
61
71
78
102
170
177
141
43
93
86
88
87
128
79
92
202
73
114
103
81
57
123
83
86
78
48
118
85
53
152
78
80
72
92
63
109
130
108
174
126
93
99
150
51
118
89
94
138
130
110
128
142
141
113
58
113
107
55
150
65
42
126
115
47
169
164
86
105
30
107
240
142
45
103
137
111
64
49
119
144
120
105
215
152
162
82
98
112
90
96
159
70
99
64
122
165
127
143
150
133
121
177
169
103
130
143
106
89
153
69
131
134
124
168
73
127
143
169
137
118
124
110
61
158
154
39
130
193
101
208
82
78
190
84
114
177
119
74
128
145
73
91
77
96
82
149
173
114
81
77
118
129
159
158
129
178
76
98
104
87
68
102
161
145
56
122
116
71
66
114
78
117
62
93
88
107
60
110
156
105
123
115
102
101
98
124
114
87
68
96
129
168
141
107
115
115
162
156
130
134
117
147
85
116
82
155
88
38
208
166
102
97
95
84
135
133
232
114
225
116
109
56
90
45
98
112
125
130
77
103
118
166
108
89
92
168
209
82
135
111
64
75
73
62
94
92
90
158
131
93
137
39
161
127
64
88
97
98
78
97
76
42
120
144
153
79
74
122
99
58
82
184
134
84
103
74
85
87
165
107
79
159
98
48
93
93
72
120
94
74
75
56
118
171
76
206
168
88
80
125
86
90
212
136
92
110
39
68
89
80
91
78
40
126
168
112
82
108
79
48
92
72
90
103
97
67
223
185
86
122
93
71
134
93
51
151
71
167
125
171
136
93
87
138
191
83
88
208
59
173
72
70
111
91
29
43
73
97
141
108
84
99
184
96
117
254
128
85
58
120
141
70
81
144
47
150
45
141
76
109
58
75
111
120
60
93
95
129
96
163
203
69
72
98
113
90
67
82
111
87
61
156
104
41
143
94
158
71
52
62
119
106
101
72
180
66
122
137
147
61
122
69
116
97
120
36
144
140
60
74
105
100
117
100
77
50
89
77
80
188
90
98
115
141
141
93
90
70
83
93
104
96
121
155
75
103
153
98
167
76
169
87
97
140
71
132
93
123
98
109
86
111
118
80
81
108
37
134
170
92
90
153
121
128
108
52
167
126
84
141
106
130
83
46
68
78
71
104
97
154
62
96
87
104
70
91
69
90
56
119
134
152
80
46
66
178
115
90
111
169
131
55
81
62
50
64
216
122
82
138
70
36
115
103
71
163
113
82
123
161
62
80
82
87
96
112
150
156
119
50
174
114
100
111
123
75
71
203
113
201
30
86
89
30
147
143
119
168
64
47
92
115
102
72
89
99
174
142
78
150
79
173
156
132
46
136
74
87
113
150
121
104
110
71
79
92
106
70
69
178
64
56
93
58
54
107
94
58
115
85
82
76
75
95
179
69
101
113
86
99
110
110
147
79
151
106
88
158
172
155
106
124
121
116
108
42
111
124
84
99
76
90
91
82
63
148
104
153
94
99
115
107
85
108
55
135
87
121
194
157
126
100
104
127
133
64
147
68
174
96
81
126
107
157
49
109
142
61
95
168
146
108
114
66
205
107
156
68
73
105
119
113
70
71
54
75
100
136
132
127
107
115
74
147
82
107
127
65
88
78
120
94
129
191
104
123
135
70
138
104
125
110
97
67
143
112
89
43
102
56
142
94
198
73
114
186
80
92
73
66
89
233
180
84
149
53
138
43
102
102
114
124
103
97
96
138
67
79
159
82
88
97
89
94
52
96
87
130
78
65
132
117
79
68
149
102
79
144
115
87
75
44
131
47
61
91
91
138
102
71
106
76
189
108
52
81
49
93
98
166
168
129
57
105
151
81
152
85
92
139
112
147
126
68
105
75
157
51
72
115
122
153
154
126
40
87
90
78
76
76
88
153
80
69
129
121
63
92
121
76
169
95
86
110
118
111
87
83
75
114
87
190
160
147
125
103
155
39
90
109
128
89
80
79
91
90
107
123
89
106
73
115
118
48
147
132
100
103
99
115
57
70
47
85
71
205
40
41
80
98
81
149
75
122
96
123
150
100
122
91
109
110
201
139
101
116
141
127
86
129
133
82
99
62
184
167
97
53
151
142
109
67
179
101
161
111
151
175
106
116
64
76
44
132
94
129
152
153
120
102
52
72
123
145
75
87
136
76
85
72
129
175
118
31
57
66
104
184
89
92
99
127
78
96
125
209
95
114
85
122
128
132
62
126
162
54
128
74
132
73
102
104
73
50
71
62
89
94
188
88
69
117
98
86
102
219
88
162
166
132
104
88
115
65
133
77
148
80
142
84
82
174
99
114
97
93
164
50
114
133
121
74
96
37
95
176
82
180
93
165
129
42
76
121
122
71
85
70
139
89
120
101
78
106
63
163
178
82
73
113
113
115
125
102
72
121
178
67
92
89
110
125
109
95
101
131
108
102
91
49
93
147
89
88
118
137
74
119
128
122
53
127
142
77
62
72
160
130
112
142
149
132
83
73
136
149
68
121
58
144
158
152
92
95
77
71
166
108
99
69
90
87
99
112
86
148
48
126
71
117
90
69
74
132
73
68
99
76
78
101
71
149
118
120
64
86
99
143
77
150
91
111
107
196
104
54
157
119
36
113
98
98
202
87
224
76
82
93
78
93
118
56
115
39
85
54
59
143
61
94
90
150
112
132
180
114
145
118
217
131
73
110
65
38
89
177
133
63
53
178
106
114
122
84
134
118
139
78
114
77
90
158
55
186
59
153
91
139
129
89
129
139
90
69
84
202
98
120
138
95
166
93
77
66
69
116
125
62
79
54
94
140
72
94
120
162
120
64
64
68
137
58
134
121
99
111
123
169
134
112
90
54
121
93
121
85
115
74
93
157
177
148
74
66
128
62
103
83
105
111
133
69
108
87
72
87
119
82
217
121
91
71
62
109
86
71
92
95
146
122
77
130
129
200
36
100
101
159
68
127
109
157
140
118
81
91
114
143
191
134
79
118
145
121
149
79
75
67
109
75
140
81
182
84
125
96
70
67
30
66
129
95
199
76
101
105
109
83
202
67
161
159
128
124
125
116
128
98
71
120
72
77
82
68
60
126
180
96
89
55
135
103
165
73
137
124
92
89
119
132
84
64
107
117
117
117
40
68
108
157
74
176
68
78
116
77
95
148
109
78
64
76
106
116
72
59
129
116
106
124
89
144
61
131
98
100
73
178
133
97
100
70
55
212
141
116
55
101
66
103
94
75
115
76
59
95
91
80
67
102
79
53
88
86
117
74
73
101
79
71
148
95
157
130
110
60
40
149
110
62
136
92
62
95
96
88
143
90
137
58
106
78
77
149
175
36
67
147
74
102
142
105
133
127
123
93
80
66
95
132
130
157
100
161
67
115
105
152
82
122
68
110
97
142
55
102
75
202
87
125
146
54
142
104
127
158
147
76
128
99
129
54
125
124
150
44
44
100
131
144
126
93
123
76
82
67
123
143
81
122
67
146
197
75
124
149
106
151
128
68
104
60
67
67
120
68
75
112
104
118
120
169
79
141
114
84
119
114
139
82
54
42
89
76
158
83
95
42
111
95
155
101
118
131
162
62
105
85
119
60
116
72
98
126
104
128
116
62
112
90
101
84
66
97
87
50
57
147
93
62
87
34
73
145
69
115
100
140
73
69
127
89
131
138
95
84
54
105
131
118
69
94
99
74
121
106
88
105
70
52
99
170
95
72
90
104
102
132
169
40
83
98
68
118
148
63
136
89
167
93
104
71
172
116
81
110
94
138
121
72
116
104
48
64
52
85
165
205
90
125
105
115
47
78
65
76
100
92
202
109
52
89
44
160
90
70
105
103
154
112
75
120
92
124
118
89
111
98
140
92
95
153
80
149
107
81
100
81
73
81
85
71
113
97
104
104
125
88
110
59
110
123
53
83
39
80
83
87
109
91
117
53
60
41
74
51
112
212
71
94
119
87
217
53
88
95
87
87
61
102
119
68
145
114
76
83
44
148
51
126
106
125
89
70
109
130
92
117
95
159
89
76
145
75
107
50
70
58
100
106
94
132
79
53
181
79
197
135
127
217
61
101
81
102
142
86
46
119
161
81
92
134
78
85
91
152
127
92
133
129
38
123
38
56
102
117
149
22
81
109
50
123
91
72
112
72
150
91
149
99
75
164
74
101
145
93
56
64
91
72
90
123
83
148
85
81
108
69
111
70
99
111
97
113
70
106
122
94
108
82
92
103
104
109
129
133
78
62
76
98
217
92
102
52
123
124
116
128
47
122
84
82
86
89
79
120
99
115
127
81
154
144
118
85
83
74
125
140
114
117
152
99
112
76
118
48
51
101
124
107
129
91
89
111
73
74
56
127
98
64
91
73
144
61
87
111
82
123
49
137
122
110
151
181
113
127
184
49
114
145
119
81
113
71
159
102
124
45
94
69
52
87
231
123
197
92
111
67
125
86
83
118
87
131
69
70
86
131
94
136
136
59
111
125
110
112
119
80
79
67
72
97
48
91
91
94
53
129
103
135
158
121
65
135
40
66
103
141
38
64
96
49
120
100
134
160
133
65
142
109
159
159
97
84
106
80
119
83
83
118
64
97
85
105
67
89
231
65
118
107
103
81
100
97
112
99
115
93
141
98
105
146
56
120
61
74
117
35
143
85
101
111
50
57
141
116
150
57
58
143
124
69
150
86
97
129
117
92
123
156
125
131
124
49
106
67
87
152
56
60
105
84
70
143
188
139
150
72
97
80
57
126
138
150
119
120
134
78
174
65
70
106
118
110
185
171
82
59
152
168
154
70
84
141
117
114
57
71
134
103
112
108
88
90
85
105
84
45
134
181
83
89
97
110
139
47
53
131
105
105
157
81
110
113
125
107
93
93
138
90
73
141
120
92
117
99
96
62
132
81
114
73
69
140
99
83
98
72
91
60
86
125
150
83
85
94
118
42
163
78
91
122
33
137
72
76
85
71
112
87
118
123
83
70
72
117
126
91
134
98
95
112
104
113
97
142
79
121
174
136
76
102
102
89
123
133
26
86
108
156
103
149
107
72
148
62
135
182
168
83
70
113
54
93
106
169
167
80
75
150
73
63
84
141
123
105
110
33
104
131
71
149
78
91
125
118
134
86
149
118
118
105
92
65
151
53
102
90
87
74
143
121
113
51
61
124
116
110
137
109
121
126
112
93
138
128
134
130
193
151
58
114
82
89
125
90
132
100
59
88
143
99
59
240
57
97
167
75
131
191
271
119
112
83
84
147
101
74
96
186
98
71
145
153
129
75
94
126
86
178
74
83
149
148
74
106
119
76
143
108
113
167
121
128
63
193
120
171
76
75
98
93
174
84
110
57
117
104
100
63
87
60
109
162
105
96
104
63
74
113
178
192
112
53
80
116
83
51
109
80
91
132
124
78
139
93
95
64
74
65
77
72
90
55
115
212
102
100
113
98
134
166
110
99
68
88
121
187
77
77
115
109
65
79
130
137
78
170
184
64
104
125
77
122
164
110
123
78
164
67
56
65
171
102
137
57
90
110
141
147
85
104
70
69
110
79
56
136
123
63
91
47
78
101
55
66
148
106
107
65
136
118
133
95
158
159
87
81
79
106
70
110
119
115
99
72
48
103
87
85
74
114
90
78
121
125
70
96
116
104
132
93
71
91
98
120
35
95
204
75
124
132
129
99
88
43
70
141
120
98
123
96
153
55
51
94
137
156
47
53
60
119
69
113
38
86
53
125
122
62
89
120
144
69
123
86
117
76
112
100
93
65
107
71
237
124
81
50
111
70
32
91
110
115
75
89
115
99
60
63
71
90
79
107
76
124
79
161
107
37
44
60
130
82
60
34
74
138
75
78
92
90
122
89
78
90
184
105
81
88
77
91
55
83
64
42
46
119
130
101
149
111
132
140
120
166
82
99
88
73
112
79
58
70
84
149
86
119
135
105
159
92
131
123
132
134
65
131
105
104
66
70
149
192
116
85
83
118
105
113
188
72
103
127
138
153
63
103
130
51
105
60
77
96
144
61
125
37
133
56
74
113
66
116
61
59
67
55
79
91
39
77
64
84
160
42
97
101
206
57
113
140
57
84
94
99
107
126
88
75
105
118
86
116
191
60
97
101
103
76
173
107
123
63
86
76
134
73
100
87
116
165
104
73
126
161
80
75
64
121
200
47
37
85
152
81
76
90
48
158
118
101
126
244
158
200
96
140
124
92
37
155
86
72
184
84
192
71
209
115
87
85
155
85
64
91
92
42
144
60
140
76
108
46
128
139
59
100
139
129
108
93
92
147
139
117
90
69
128
108
61
74
95
95
155
91
116
77
86
51
152
98
77
129
52
121
79
96
131
105
132
144
55
117
129
166
51
182
170
91
95
108
91
124
106
116
103
116
112
71
85
138
145
119
146
98
53
55
61
203
93
145
97
147
162
102
69
72
73
178
109
127
102
61
81
122
142
65
111
153
101
75
121
91
84
133
89
105
85
137
52
116
132
115
167
120
57
100
94
60
144
62
105
84
44
111
138
94
92
85
89
197
50
193
112
111
266
89
86
93
132
76
59
126
89
73
89
78
113
111
102
115
171
45
131
153
163
86
103
134
64
112
106
70
85
115
129
66
38
63
65
124
144
96
131
125
129
138
132
84
168
94
81
82
95
165
176
165
190
148
79
99
56
95
125
122
107
139
94
103
80
95
106
208
89
27
86
86
258
159
54
113
83
138
154
62
102
218
153
97
162
137
155
120
132
138
93
81
108
133
89
95
75
74
54
130
76
96
119
82
102
128
142
115
54
82
48
103
148
93
58
112
112
113
59
60
94
145
112
156
129
112
101
126
157
88
57
154
150
86
82
116
140
51
123
76
84
53
108
164
112
64
110
108
87
88
100
121
179
131
109
133
118
71
118
128
85
126
47
72
156
130
90
41
137
104
81
105
96
130
82
126
161
113
64
48
50
79
120
69
53
158
159
59
77
77
49
189
116
172
113
78
112
85
121
194
92
112
87
99
157
193
100
101
54
132
103
68
63
122
123
178
139
156
190
131
111
101
109
208
92
142
69
186
109
129
167
178
77
122
60
148
132
104
103
102
67
120
47
146
71
144
93
91
38
204
105
118
147
65
72
129
105
117
82
115
125
76
135
111
135
45
84
171
174
93
126
161
112
66
54
102
74
146
136
137
132
113
51
86
93
87
86
54
141
172
146
60
143
50
120
126
76
67
132
110
117
110
141
205
125
97
129
57
149
126
117
70
180
73
189
84
122
134
83
81
116
103
82
97
144
94
88
131
90
66
90
79
129
98
151
91
101
169
113
177
116
157
74
75
106
135
198
101
107
107
104
144
90
53
77
88
103
243
41
152
107
91
64
87
112
58
75
55
60
133
153
77
102
140
78
54
108
108
71
69
79
87
124
91
140
129
178
88
71
77
36
111
98
83
115
106
92
121
120
202
43
88
70
131
94
173
59
125
95
104
173
164
94
82
131
62
112
146
80
117
150
150
74
50
138
99
94
113
70
88
145
138
100
62
112
133
147
91
135
91
49
56
64
92
99
101
119
72
88
56
184
163
165
103
114
111
100
139
112
95
156
93
106
155
53
118
148
92
134
129
152
117
122
102
91
136
92
87
79
79
59
140
109
120
120
99
85
97
43
57
115
155
156
113
121
154
86
77
71
71
102
70
105
84
113
140
138
102
88
111
66
97
54
77
135
94
85
95
74
131
114
104
70
84
101
112
131
55
81
85
87
93
64
128
71
164
156
56
181
112
83
110
79
105
63
64
111
144
72
168
150
89
147
120
42
99
112
129
108
57
102
73
49
97
165
135
76
110
123
111
117
93
116
110
105
109
96
56
156
65
100
80
131
44
67
73
120
72
134
71
80
80
103
77
129
89
76
152
57
103
111
119
95
134
69
63
192
146
106
177
72
81
121
74
120
92
70
83
162
111
113
83
126
119
116
65
102
98
115
104
122
145
117
83
82
76
34
172
68
103
247
46
73
54
78
64
120
129
47
77
83
83
224
109
120
75
84
104
53
124
112
104
69
73
108
155
97
149
154
113
138
43
93
105
78
107
112
119
69
71
167
86
127
99
94
129
59
185
99
130
108
93
83
67
80
64
84
74
117
85
109
137
108
106
36
65
67
98
114
78
93
140
58
61
144
156
139
103
135
78
116
102
114
138
73
147
111
108
75
117
87
85
96
82
69
99
106
148
111
64
45
182
61
121
111
144
166
111
107
77
132
123
130
88
87
129
64
93
128
107
65
90
64
217
94
86
151
62
176
88
56
138
125
92
144
80
158
79
84
132
161
36
112
116
71
126
113
109
100
73
154
134
80
217
105
55
86
80
93
124
99
162
99
79
135
170
127
72
44
158
57
105
77
112
34
169
157
131
167
157
75
121
116
99
126
251
91
101
66
69
87
121
76
90
106
84
114
118
91
155
101
47
94
93
166
156
109
116
130
111
115
126
53
104
87
211
91
116
143
147
93
90
117
189
96
116
112
115
72
113
65
136
79
73
98
150
100
118
118
128
129
96
101
138
135
109
170
63
98
42
126
147
64
170
84
137
113
112
89
160
135
97
135
116
201
91
90
128
93
40
89
92
75
106
110
69
99
143
85
78
116
78
137
125
155
133
105
100
83
78
163
116
79
54
145
95
31
130
142
107
103
83
65
141
119
96
74
78
129
86
130
95
72
80
88
122
81
110
105
94
97
105
70
98
78
120
83
98
57
81
139
126
46
102
71
94
120
175
99
53
107
103
72
142
132
61
124
134
156
42
99
158
60
100
169
148
117
106
116
55
88
60
78
106
80
180
77
98
108
112
100
116
116
123
134
157
171
91
134
51
101
124
180
121
93
79
127
85
50
94
124
130
149
93
87
118
98
118
96
112
138
78
81
140
93
128
117
134
114
79
85
41
144
78
79
119
76
98
109
95
53
103
147
115
156
209
130
127
123
107
68
85
126
111
42
108
66
69
116
132
55
113
134
62
142
111
34
91
73
147
125
103
189
85
92
170
130
51
77
132
144
47
82
89
127
106
98
110
148
108
94
57
139
66
106
57
38
100
143
99
82
54
92
71
119
149
119
127
33
86
171
89
100
119
120
165
101
191
141
111
137
110
55
91
117
106
77
90
144
133
114
69
128
75
114
146
106
114
149
228
76
151
136
60
85
86
104
124
72
162
101
151
179
124
182
229
77
41
33
88
172
153
111
90
140
98
79
70
69
147
33
51
69
137
122
121
108
124
85
78
145
50
193
45
110
40
108
111
113
154
37
69
143
126
86
53
142
90
130
122
164
98
84
217
152
113
135
97
231
38
79
147
139
97
124
145
166
92
84
105
89
84
100
120
77
134
68
156
70
97
123
90
76
63
77
97
134
108
111
85
74
69
97
97
128
93
142
81
51
94
72
131
119
93
78
93
42
178
87
82
80
169
119
126
130
74
109
90
118
54
159
125
160
139
56
103
137
134
138
125
110
80
145
107
148
148
107
94
90
82
74
80
148
57
120
66
133
105
84
81
121
109
88
111
109
119
204
112
101
74
87
74
106
118
103
51
68
66
97
112
102
95
125
118
148
98
110
130
126
55
98
91
112
113
41
72
75
89
95
118
90
81
148
115
118
84
121
57
136
129
79
58
140
170
75
97
108
75
54
206
91
58
68
77
93
104
107
67
128
105
93
135
103
113
176
101
105
69
156
165
98
138
110
85
78
101
163
97
99
130
141
83
94
93
87
126
97
93
97
100
62
161
116
112
66
114
168
162
91
161
151
102
104
158
82
62
113
105
117
74
125
102
155
142
86
118
133
112
103
159
156
141
101
125
50
93
56
126
146
119
123
70
106
118
92
27
150
101
141
64
57
87
91
151
100
121
91
74
69
55
161
59
77
105
47
105
124
86
120
115
85
209
140
75
70
122
71
53
85
150
77
230
114
172
78
162
138
177
150
116
63
124
76
113
53
112
128
138
89
98
117
150
157
112
157
111
122
112
120
55
112
81
155
139
119
120
93
66
89
92
76
72
80
102
100
151
105
61
77
101
88
88
79
105
146
127
132
101
65
96
90
111
147
142
101
69
102
74
111
197
127
69
86
94
65
62
75
69
82
150
88
127
62
70
179
160
74
61
63
129
119
157
96
93
232
197
130
118
156
119
73
88
53
107
117
133
145
138
116
48
141
49
135
90
94
93
138
124
122
69
171
86
68
59
105
101
85
196
96
89
107
98
54
127
151
110
164
130
109
96
111
106
89
150
124
92
70
65
53
125
77
87
68
140
111
110
126
145
137
206
134
145
90
148
175
96
67
114
132
96
93
88
69
203
92
91
71
100
91
86
96
103
84
85
110
88
59
138
91
155
170
120
122
68
135
111
143
92
35
129
64
68
156
96
181
100
58
134
94
82
133
118
38
55
99
152
76
88
145
89
92
137
129
143
81
73
165
159
115
75
95
66
63
110
133
134
114
180
163
122
110
85
155
114
110
76
102
62
130
93
118
130
49
135
254
160
155
47
148
89
58
128
114
101
146
66
95
114
59
151
56
137
77
86
215
66
80
93
110
51
178
90
114
116
53
121
79
81
130
169
75
116
80
130
62
96
106
77
71
92
133
58
120
76
130
124
178
75
40
68
53
137
59
157
93
86
205
108
127
119
80
127
108
156
106
97
179
80
77
114
48
124
78
106
60
48
82
125
87
76
56
132
100
67
66
101
86
83
97
36
146
94
105
141
45
70
122
131
104
67
155
71
103
106
112
103
128
112
155
107
115
63
113
57
157
82
62
85
77
41
63
54
167
93
99
160
77
110
87
121
99
92
122
115
113
121
135
75
78
91
91
84
117
101
124
68
86
89
161
92
126
144
180
55
31
87
124
128
177
121
66
90
92
81
75
147
122
123
92
82
140
88
70
54
52
81
119
48
81
69
90
139
143
104
96
248
69
66
192
131
117
86
51
78
156
176
138
98
96
96
145
50
145
67
143
73
78
117
104
127
160
128
86
87
151
193
75
90
96
36
109
71
59
119
77
89
138
168
139
85
129
79
55
63
148
93
139
82
107
93
148
90
94
90
97
99
179
92
57
74
96
80
128
124
90
190
72
130
119
76
141
150
59
118
97
83
66
115
101
91
66
152
58
65
53
137
88
138
78
88
101
103
96
126
105
106
73
165
80
104
119
65
81
107
102
210
95
115
64
60
35
115
84
74
62
114
119
27
114
80
124
129
178
206
77
153
169
168
100
76
101
56
88
64
191
53
70
112
130
109
94
93
99
135
89
78
97
91
114
127
77
162
88
61
73
115
94
66
168
91
155
162
49
107
65
92
115
76
49
81
95
61
129
87
110
82
81
146
95
149
63
121
172
113
47
116
80
142
122
122
146
111
151
139
231
85
89
74
97
125
79
170
187
105
64
106
85
128
111
119
159
84
81
114
152
96
132
212
108
116
63
136
128
64
179
89
44
73
70
45
114
104
44
123
44
95
111
107
63
73
120
145
44
109
92
58
65
68
98
63
87
143
87
171
135
68
116
42
72
146
167
86
62
136
55
123
54
176
69
117
73
193
96
79
82
195
119
62
77
82
87
186
104
79
163
145
85
37
104
104
82
77
169
63
69
85
42
184
142
135
134
61
84
74
94
82
164
136
95
137
89
147
179
99
68
75
102
94
98
78
83
137
114
136
77
52
135
64
172
158
162
45
52
77
191
68
103
55
153
67
64
110
40
111
86
182
60
156
101
63
78
85
70
75
89
112
110
92
79
116
123
106
71
85
163
72
155
81
181
166
143
108
120
118
128
78
159
54
150
66
144
128
145
99
81
128
131
70
76
58
141
58
160
105
132
60
67
98
119
121
83
87
124
97
100
129
69
105
136
84
140
100
105
140
94
126
45
141
107
142
111
75
47
135
112
154
81
55
97
96
141
133
97
101
130
107
119
104
109
88
132
116
76
89
109
117
85
140
98
85
90
140
194
94
99
63
150
84
128
94
130
53
114
160
141
97
114
94
66
92
92
95
91
121
54
91
93
127
177
160
56
182
52
123
122
145
106
124
111
93
96
66
61
125
116
166
85
91
86
117
40
79
78
104
123
73
111
97
207
123
171
110
139
90
199
105
90
93
142
103
124
123
94
158
122
102
109
80
78
157
104
131
75
151
145
121
70
68
140
104
99
98
127
94
138
74
90
90
107
103
105
150
130
77
62
106
75
62
164
55
82
109
46
122
139
44
171
105
67
32
99
203
138
65
72
93
114
57
51
95
73
73
119
90
93
65
84
81
101
101
123
105
148
130
61
75
69
100
64
111
86
97
95
128
77
53
118
140
161
113
35
155
105
223
105
98
111
146
100
102
63
125
155
131
37
117
71
122
196
111
120
89
78
154
165
39
121
83
96
183
132
105
77
77
119
89
111
112
79
120
148
99
142
87
113
107
100
133
76
75
109
133
107
77
60
101
117
94
112
58
98
48
105
61
132
104
138
174
146
37
70
81
150
55
131
69
90
156
122
153
74
143
118
131
70
135
134
130
106
73
70
148
146
69
98
64
118
55
109
63
95
81
104
151
147
139
165
87
84
133
149
63
123
123
65
73
148
58
121
49
74
106
144
126
113
37
75
100
179
102
107
75
119
78
62
135
127
88
60
80
172
71
57
162
94
68
125
129
102
107
76
129
88
62
111
91
89
119
89
68
185
114
121
102
111
100
129
43
135
150
104
62
75
110
130
111
54
84
156
160
64
145
35
74
82
128
96
135
80
109
129
138
110
118
52
140
84
58
89
115
105
153
61
105
68
57
127
169
139
124
41
144
126
112
138
72
83
150
145
119
113
143
84
130
124
50
87
53
60
113
98
151
167
110
136
106
75
82
87
78
124
40
141
69
127
88
131
252
142
115
68
79
112
84
141
101
124
86
74
113
110
59
131
81
80
120
95
129
58
123
120
47
104
108
99
34
150
186
48
130
124
81
131
94
92
217
174
129
108
37
90
72
117
119
101
90
111
108
150
100
64
91
138
86
145
158
134
164
125
91
76
93
155
99
73
107
151
172
102
114
111
90
173
105
67
166
74
145
139
119
120
100
69
112
116
237
81
116
25
51
89
92
101
73
52
70
144
87
50
89
112
161
70
111
99
67
133
150
112
148
147
96
99
51
114
156
52
76
194
81
79
47
118
113
82
51
106
137
108
46
134
98
226
82
139
67
97
107
149
99
105
65
224
104
127
181
120
63
108
63
90
111
91
112
91
99
75
66
90
138
155
201
116
62
123
33
122
155
133
121
86
95
87
103
143
118
108
120
83
98
157
69
91
76
92
63
102
100
84
94
65
88
72
85
57
110
64
144
62
74
158
98
130
97
131
105
72
78
84
128
94
180
78
86
101
82
47
56
83
61
119
109
65
108
94
167
127
177
91
87
151
119
77
87
59
59
47
89
177
53
96
109
70
118
90
89
127
119
113
145
147
86
81
93
37
45
145
111
117
62
34
122
108
136
104
60
113
140
66
119
119
95
86
111
109
104
115
100
115
144
183
88
187
120
103
55
82
115
83
136
152
103
137
90
162
103
62
124
73
77
90
56
164
49
72
88
62
171
128
126
111
56
100
47
77
98
44
86
85
154
98
133
113
61
56
121
64
54
105
90
111
111
87
95
113
73
135
110
62
112
105
146
103
107
96
54
91
142
75
131
174
108
69
138
103
112
115
167
133
61
133
134
182
123
90
110
103
131
85
84
162
104
134
101
117
46
93
88
117
82
70
89
83
85
92
81
66
149
177
76
80
77
92
103
80
78
50
44
120
76
221
46
90
55
184
83
107
96
163
122
124
134
53
172
61
74
117
75
128
129
54
101
59
70
78
113
73
55
153
84
141
76
154
118
131
121
63
98
206
160
57
98
105
171
80
113
86
64
140
125
76
115
78
111
129
109
100
49
89
120
164
100
95
73
66
142
82
52
84
64
54
91
119
102
69
72
47
82
106
112
96
80
126
128
120
98
140
95
154
169
181
145
118
144
94
159
119
144
41
129
153
56
73
46
105
119
56
84
64
138
58
98
192
106
55
81
105
152
129
75
70
89
109
70
128
53
106
69
114
77
145
79
133
96
62
100
85
57
58
162
94
174
50
87
93
72
85
68
72
65
194
135
96
95
88
71
113
75
67
118
117
145
149
54
123
149
67
73
82
107
129
91
127
128
127
68
122
90
49
147
55
90
121
71
83
76
135
155
82
107
90
68
121
85
78
129
59
109
39
69
169
136
137
53
154
105
128
135
69
61
108
92
59
43
103
68
118
73
70
88
90
140
72
62
69
118
115
210
197
65
79
121
151
161
101
150
181
128
113
126
86
112
69
156
197
84
111
96
64
163
138
85
166
105
192
85
176
59
97
61
66
102
75
103
76
70
45
156
115
86
136
155
88
144
118
87
100
116
40
122
62
88
117
82
93
80
79
74
129
115
129
50
67
139
197
139
102
103
110
91
103
84
102
174
133
84
134
98
85
135
105
104
82
44
118
197
124
131
192
126
101
55
108
96
81
176
173
32
104
84
104
148
87
100
114
84
88
123
177
50
131
105
71
55
126
133
122
148
76
120
137
97
91
58
72
180
115
80
79
148
64
84
255
108
65
75
80
66
44
113
65
128
116
88
81
146
122
107
73
147
126
97
136
135
94
133
134
56
161
79
121
84
85
160
191
67
68
202
218
109
89
85
127
53
99
92
82
119
80
160
101
190
107
95
81
126
112
134
156
103
131
137
97
147
67
100
120
83
98
82
99
77
77
142
67
48
78
110
117
147
85
121
81
86
110
78
168
98
92
85
97
102
163
107
92
121
191
113
105
137
104
199
111
169
66
97
38
99
115
121
101
100
55
139
124
132
100
71
101
126
142
82
176
122
95
88
179
132
120
123
139
87
116
70
86
60
41
72
87
218
145
128
109
121
73
91
114
90
57
101
117
115
115
150
82
76
122
80
75
97
65
140
103
96
82
69
148
124
94
113
147
130
91
63
75
112
121
149
113
99
57
124
116
127
52
116
111
92
101
184
97
75
77
156
134
129
159
128
137
137
56
59
81
134
84
81
67
88
83
110
73
106
88
91
85
65
124
86
94
98
119
216
172
136
68
62
54
106
72
84
112
92
147
61
83
117
191
80
124
91
92
60
91
119
93
39
146
151
119
189
121
61
102
74
112
91
110
98
132
102
78
126
156
155
111
111
87
94
75
109
127
103
71
42
138
74
127
113
114
134
121
73
49
146
102
134
145
88
110
42
60
82
70
160
107
66
143
127
142
141
161
108
158
149
181
119
107
110
63
141
197
55
64
130
173
56
106
171
69
68
152
168
157
91
97
113
131
111
148
83
83
121
150
109
88
79
90
70
122
93
65
71
78
84
75
150
87
133
56
125
97
52
129
142
144
110
85
117
130
228
201
122
139
151
77
78
140
135
166
101
172
90
155
138
73
105
137
99
100
121
63
179
105
94
78
111
89
51
54
119
190
60
56
105
128
95
112
146
60
132
108
82
57
88
165
79
62
107
181
103
100
120
87
98
100
37
92
107
72
129
121
182
90
23
71
98
66
157
169
78
105
97
106
80
93
68
69
45
51
65
144
132
86
103
82
50
113
81
88
132
72
101
128
88
81
82
164
92
79
137
85
93
93
116
111
124
65
105
109
92
109
71
145
91
102
196
115
90
118
96
68
127
91
110
84
142
108
106
74
106
93
63
68
160
133
113
132
67
87
84
109
91
152
110
105
136
80
122
74
103
164
117
114
101
60
119
157
203
118
92
137
92
78
70
118
133
143
149
120
138
64
91
150
129
151
77
110
81
110
126
88
161
266
113
111
105
107
95
49
89
99
139
124
125
114
80
96
65
98
134
127
125
82
109
96
69
142
62
125
105
86
105
47
144
107
73
132
104
108
74
93
61
57
60
118
147
132
96
128
69
143
155
98
121
53
184
94
71
112
109
91
86
96
114
142
67
117
76
94
106
58
128
81
48
93
42
118
157
145
71
119
118
148
165
103
123
137
97
129
86
171
327
100
140
69
101
82
140
162
104
67
105
155
132
99
156
128
122
103
57
64
132
133
145
102
194
69
54
91
125
105
94
117
121
37
153
55
132
168
84
60
170
131
221
67
130
57
99
162
115
128
206
65
171
127
119
145
62
54
139
70
99
62
86
134
121
72
131
53
92
113
93
116
73
84
122
115
85
40
74
123
96
128
143
99
40
104
100
83
62
49
92
111
49
138
133
55
135
154
151
120
103
141
70
76
90
121
89
101
118
107
64
99
118
108
139
44
134
37
116
83
104
157
60
180
119
50
107
110
80
92
110
85
75
59
67
90
87
70
121
116
69
77
144
139
135
111
66
114
85
82
105
83
115
90
147
166
112
75
73
135
68
103
62
113
93
115
68
68
112
98
39
118
80
63
134
132
186
199
129
138
81
195
152
74
160
80
63
58
147
86
89
69
167
63
98
87
75
81
119
140
87
128
72
87
84
72
111
117
149
75
81
136
85
104
83
109
110
84
59
115
95
162
107
133
69
127
157
78
124
39
65
64
96
74
109
71
72
71
94
165
41
145
44
127
97
59
90
152
100
105
134
91
71
147
144
155
87
160
97
106
76
196
101
86
158
77
161
114
65
143
141
107
107
132
94
74
110
112
96
72
122
47
24
100
128
108
95
105
169
90
103
123
108
136
125
73
56
118
87
128
114
67
67
142
111
108
167
124
106
93
64
138
57
166
92
102
86
91
88
91
125
142
76
120
128
77
123
118
157
84
75
85
105
120
126
101
87
105
90
113
97
84
129
72
151
88
63
139
90
31
133
83
57
147
114
157
119
132
76
168
59
149
97
99
107
130
52
143
190
65
141
171
89
95
143
72
49
110
84
210
84
112
131
66
128
70
95
102
64
114
62
70
77
124
45
117
158
183
125
121
86
41
115
101
54
70
151
102
105
51
81
84
103
111
99
97
39
110
95
62
146
174
103
109
69
77
98
52
133
88
124
102
76
85
141
85
82
111
128
62
53
102
78
142
82
91
84
140
102
66
98
135
73
88
113
139
77
50
136
124
48
108
86
122
117
76
101
110
107
80
114
114
108
120
135
98
64
36
162
151
77
177
126
142
120
152
63
97
66
54
135
56
97
123
58
86
115
113
77
136
133
113
114
75
102
45
81
115
188
64
177
133
92
103
93
90
125
105
136
142
65
78
132
124
194
121
119
75
169
69
81
150
131
121
88
121
78
170
94
80
84
75
144
96
89
113
134
131
150
81
90
159
78
89
145
137
114
143
92
123
100
117
119
125
154
90
209
128
48
201
72
160
127
139
156
62
114
91
121
161
168
102
100
89
98
145
142
93
105
66
93
43
85
66
139
109
95
123
108
76
118
157
133
77
63
84
157
93
79
66
76
76
109
60
111
170
65
107
102
148
113
132
81
129
126
44
60
63
97
111
119
60
86
105
112
49
120
122
100
115
82
72
101
98
161
99
94
162
70
158
82
77
83
64
134
141
145
135
86
92
103
96
129
126
162
161
124
159
85
136
141
174
69
89
111
170
99
113
114
84
79
110
85
99
141
91
62
95
186
168
118
90
95
38
65
106
77
90
70
55
150
145
99
137
161
171
86
70
122
112
79
100
59
153
54
110
90
71
86
111
114
79
205
104
55
102
88
105
153
77
51
68
142
103
90
90
84
103
94
160
127
136
123
164
91
92
85
158
130
55
176
58
66
53
100
118
76
109
85
120
38
94
133
158
109
59
120
114
91
107
147
57
129
183
82
69
97
101
95
172
132
79
70
81
70
85
155
95
103
92
84
91
140
119
136
68
83
84
105
36
97
85
105
84
68
129
165
102
95
84
113
124
97
53
103
95
101
105
95
152
85
71
60
65
150
48
76
116
87
127
132
155
142
99
121
238
101
119
106
124
92
122
135
55
121
106
75
145
107
116
126
77
112
107
71
135
91
57
101
51
82
157
62
96
57
81
116
117
102
110
162
95
127
127
144
82
56
129
117
110
94
163
97
100
58
138
161
115
107
214
129
73
143
125
89
102
201
124
101
111
151
126
65
130
85
45
86
116
87
114
178
173
100
66
71
114
112
54
54
116
97
45
118
79
109
113
77
177
65
121
56
56
125
73
103
142
103
145
70
104
101
158
166
92
150
103
73
60
165
98
50
99
116
50
58
94
147
142
89
121
143
111
66
98
89
73
111
93
39
85
123
105
100
222
61
131
193
117
130
131
112
141
95
173
118
80
73
82
44
108
148
93
62
104
68
149
104
104
182
88
101
52
88
149
30
119
49
130
159
139
185
55
136
43
66
145
85
103
70
162
66
77
90
82
120
88
79
144
98
131
71
154
143
57
116
84
132
54
80
120
139
71
78
92
115
117
85
71
92
64
70
161
72
106
117
120
186
84
76
38
89
62
80
93
89
104
135
115
148
88
87
134
133
168
72
226
116
202
87
116
117
79
62
165
111
124
97
78
114
58
134
75
114
83
59
89
52
112
176
102
66
136
75
123
75
59
132
111
155
67
120
66
135
62
95
49
100
76
85
180
75
77
121
96
87
128
128
128
142
125
97
86
138
127
68
70
91
142
89
146
134
124
92
96
99
148
78
168
109
31
158
65
75
93
105
103
75
103
125
31
118
141
126
135
127
110
85
96
131
74
108
121
148
133
164
66
122
73
69
78
56
107
88
64
83
89
96
103
43
145
91
186
119
79
81
93
174
126
93
90
60
119
74
113
195
118
170
102
152
80
104
78
44
102
100
54
180
138
159
113
112
131
139
239
98
109
95
64
98
100
98
114
124
75
106
79
75
61
55
136
170
96
137
86
101
83
144
69
69
112
112
118
111
68
130
101
130
111
113
122
69
72
59
93
133
238
76
83
86
142
95
63
92
136
162
124
142
124
72
143
116
72
70
108
98
87
79
39
156
82
111
45
115
180
103
70
64
76
86
120
74
152
98
77
137
93
111
184
125
98
134
135
72
112
74
183
126
110
151
126
51
103
115
63
88
68
123
85
80
119
93
87
142
79
118
119
146
165
47
104
108
178
107
55
122
118
63
123
48
88
66
108
128
49
109
120
88
91
105
116
89
130
75
63
98
34
89
110
111
91
59
113
80
85
149
86
92
89
80
170
80
46
124
188
104
120
201
111
75
74
81
70
58
90
87
75
41
87
92
92
113
79
94
100
116
124
142
90
168
181
99
110
73
118
119
97
114
135
94
161
69
154
103
119
89
82
82
121
95
125
106
140
49
97
116
103
161
204
107
86
56
74
115
111
41
146
131
48
111
132
90
111
102
90
101
120
72
178
123
96
128
119
81
92
61
100
59
52
63
196
74
128
80
102
131
97
82
67
49
87
50
84
45
176
80
93
91
69
72
111
117
89
122
92
61
68
58
42
147
147
83
113
77
242
68
83
126
109
66
90
60
107
106
123
104
135
141
44
38
93
232
174
120
97
143
169
142
97
134
117
109
163
119
79
125
149
53
120
88
137
70
158
77
135
100
83
155
80
78
62
138
98
107
207
74
139
164
127
148
59
114
146
61
65
76
58
147
87
104
84
77
103
167
91
116
88
101
86
194
146
86
102
157
100
47
86
103
35
106
168
135
195
151
67
54
110
126
71
119
136
154
23
102
68
107
91
72
84
153
52
104
115
94
186
123
145
101
77
85
84
110
66
147
175
148
107
170
110
106
107
217
159
146
139
205
134
161
62
170
118
147
138
90
110
85
120
101
81
158
100
105
75
104
69
105
114
47
102
145
79
106
92
109
109
52
116
126
116
149
38
74
86
93
130
108
79
167
103
48
97
131
65
86
111
86
64
151
64
61
113
40
147
115
132
49
77
58
162
103
62
95
121
154
138
109
79
125
128
112
70
91
182
144
92
48
76
134
124
81
91
294
125
139
94
91
113
110
154
58
71
106
148
84
76
191
127
71
112
145
76
98
133
56
66
155
69
161
60
95
78
109
165
182
136
89
64
82
102
92
96
135
70
105
70
88
118
95
99
98
125
162
117
115
88
100
81
108
168
97
77
70
148
118
69
102
73
65
177
133
124
76
148
107
109
161
96
104
116
140
227
104
70
81
141
101
148
138
147
127
84
53
161
170
85
58
73
92
75
72
120
167
96
89
59
106
59
109
91
81
108
100
163
120
82
139
130
96
79
117
103
111
105
70
57
140
80
75
149
69
135
162
91
155
82
47
99
89
46
56
77
97
144
77
94
83
171
109
171
119
120
71
148
147
74
89
137
140
86
80
176
141
199
35
117
42
138
148
140
130
78
105
138
87
132
66
100
115
181
70
86
92
125
98
44
92
67
70
55
50
133
107
52
47
98
87
55
67
91
75
97
125
89
67
102
133
38
138
77
100
83
89
110
106
107
144
99
100
51
134
120
172
68
139
86
125
89
72
69
139
132
72
78
113
140
100
132
101
93
118
93
118
198
105
120
146
152
53
123
80
111
45
80
137
99
92
95
156
145
87
103
128
83
117
208
127
85
45
79
94
128
117
97
83
74
191
130
110
86
118
117
138
157
108
163
109
161
62
84
72
119
78
107
62
53
141
82
123
69
143
64
147
208
163
104
99
128
161
92
151
45
57
100
121
82
95
112
101
148
91
122
98
109
100
158
78
175
111
69
101
126
42
90
122
173
58
110
97
87
152
141
35
117
57
145
121
141
171
134
204
67
132
95
109
94
98
79
82
86
136
153
83
111
85
83
106
60
86
109
77
36
60
112
101
85
87
122
141
136
110
113
134
103
129
103
115
165
98
117
146
77
139
103
75
78
66
86
158
85
75
129
132
73
188
120
146
71
120
71
98
147
58
114
121
144
95
154
50
62
129
193
92
108
136
92
128
60
117
144
66
172
83
75
223
176
55
142
104
119
233
128
117
121
35
117
97
49
134
105
119
161
48
100
92
78
72
119
135
92
78
120
184
116
93
155
61
62
108
81
101
151
87
38
104
161
99
161
79
95
116
110
86
93
141
150
77
73
145
105
75
75
53
94
86
103
146
91
175
63
184
58
87
94
161
121
128
94
67
119
88
91
128
67
68
88
60
78
82
90
42
116
81
129
72
64
141
113
92
103
59
135
96
141
65
80
74
103
164
102
70
57
63
111
134
220
106
112
111
112
186
101
94
103
77
73
106
105
92
158
158
114
84
84
116
59
49
85
96
107
94
82
72
110
121
105
119
85
83
143
132
100
90
65
111
80
148
85
116
151
187
106
78
201
93
99
81
87
50
84
123
108
71
44
97
156
71
133
58
142
70
93
154
59
96
126
71
141
70
92
44
43
60
95
123
109
121
87
86
119
70
74
126
83
75
97
52
138
87
66
92
114
148
130
59
107
148
97
120
77
168
183
110
67
107
70
67
102
161
77
135
106
52
76
160
136
134
135
92
106
99
160
228
70
148
101
64
114
103
38
108
66
104
139
151
168
75
98
91
64
85
131
75
78
98
82
99
134
75
81
73
84
126
141
119
48
114
92
95
126
92
47
106
96
67
119
60
136
83
58
105
98
96
148
144
85
69
103
109
138
146
156
88
157
114
155
112
88
155
188
279
92
121
39
83
133
87
63
183
126
107
131
170
99
92
132
158
80
123
101
94
84
52
59
96
119
200
54
131
123
89
103
115
150
55
109
168
76
129
98
107
56
125
133
60
60
159
169
164
43
58
117
151
145
62
86
134
199
121
139
36
65
71
62
146
130
67
167
102
138
43
64
117
102
108
106
141
61
94
100
76
154
81
170
119
195
94
123
155
134
77
116
65
70
139
130
119
87
103
101
53
96
70
58
61
146
93
75
120
50
55
61
66
95
94
89
115
85
53
128
118
45
152
95
63
96
130
107
72
32
85
103
199
93
112
78
157
103
109
119
99
91
180
90
63
82
131
78
59
70
104
91
149
130
154
90
96
111
50
95
95
86
136
82
61
107
71
112
77
66
91
97
116
112
113
158
101
131
105
35
119
125
141
78
83
53
53
78
154
95
47
141
108
68
101
115
77
117
92
76
47
202
90
91
116
115
130
106
57
85
140
39
173
115
120
162
187
91
64
130
93
116
135
50
106
250
53
48
158
90
129
119
161
117
127
114
55
147
64
54
115
104
161
136
116
93
148
64
149
160
50
91
150
121
163
170
134
186
144
96
77
67
107
159
93
87
66
65
180
161
117
91
144
103
110
86
53
94
107
134
117
214
81
67
64
124
120
77
175
98
217
107
132
74
91
64
135
109
139
106
137
86
117
117
54
91
46
98
111
59
75
105
168
83
35
93
130
62
140
113
70
93
133
61
74
113
86
107
152
133
122
102
103
106
145
62
113
103
95
105
98
120
109
171
94
113
169
45
198
59
35
131
100
114
142
87
57
65
178
76
125
108
104
103
130
133
51
104
99
106
66
95
100
169
140
73
85
94
75
102
100
106
112
133
88
129
111
130
166
87
87
70
148
178
106
76
110
71
170
116
32
91
111
103
88
118
69
129
71
158
110
138
124
81
116
113
150
75
129
70
71
131
90
66
85
94
131
204
87
79
71
92
94
58
156
114
86
142
98
162
113
100
128
92
66
146
114
89
84
107
121
87
122
160
157
124
124
201
82
163
92
116
103
113
80
112
80
88
67
117
79
81
88
84
235
136
113
82
62
75
49
86
74
133
97
127
115
138
89
115
46
122
145
121
45
180
150
193
48
73
84
77
93
70
82
88
189
96
76
139
115
151
56
149
74
123
55
156
92
68
113
105
111
161
131
89
104
96
131
71
136
106
154
114
102
73
142
161
115
71
86
105
135
103
51
77
39
159
147
117
73
89
74
101
155
88
114
116
154
123
106
65
77
151
99
198
85
62
85
120
103
184
120
141
94
128
132
72
60
93
56
152
187
73
128
116
174
96
198
63
65
97
95
102
101
65
122
98
137
131
93
90
154
87
49
113
99
163
111
64
104
73
99
132
79
108
148
150
86
144
112
90
108
151
166
106
139
84
45
112
111
197
93
72
137
87
125
106
44
77
98
134
59
130
91
107
135
104
129
150
113
114
107
71
73
134
81
96
82
73
137
131
107
155
92
58
73
118
84
90
158
156
79
149
113
68
81
109
113
77
112
109
76
99
142
131
95
90
111
87
78
80
86
43
68
84
79
98
127
154
84
92
113
117
127
86
69
95
90
68
79
71
162
128
77
179
106
70
63
87
69
58
100
99
114
172
87
133
195
56
62
185
161
28
153
96
70
105
131
69
108
84
140
85
108
70
135
99
106
91
129
72
67
81
104
130
116
133
44
150
94
127
62
144
140
72
89
85
118
94
64
120
106
72
124
141
118
98
71
184
116
109
118
82
96
70
172
87
70
91
127
97
136
108
110
85
121
58
91
70
131
82
133
156
104
75
78
71
50
57
100
102
140
205
82
88
57
68
128
158
89
96
81
77
118
44
29
70
166
88
73
96
96
65
43
71
101
180
95
180
173
87
224
97
125
75
161
69
142
102
118
41
119
60
73
79
143
149
52
113
183
38
79
97
122
154
75
80
97
132
160
165
87
68
154
77
129
133
154
81
52
125
106
40
110
94
136
36
73
77
68
78
122
217
167
150
82
127
97
62
102
67
117
127
135
176
152
194
78
268
134
97
106
91
95
64
129
72
61
98
111
70
91
79
99
96
67
38
148
62
108
80
94
213
83
173
89
76
62
124
75
174
91
113
163
84
127
199
201
130
85
89
164
156
155
115
91
119
134
102
107
194
215
112
107
40
149
115
93
46
156
104
46
65
69
57
102
86
89
80
119
66
57
149
125
123
57
96
69
124
98
132
63
156
169
62
93
178
148
89
94
95
130
48
47
159
86
165
130
87
122
67
72
70
119
72
84
67
94
53
95
76
57
103
146
106
85
185
99
130
125
113
69
104
108
110
111
79
186
112
133
64
74
165
140
117
86
54
116
92
90
70
113
111
116
124
193
107
83
78
126
137
179
61
104
135
88
63
51
79
130
117
54
100
89
124
123
116
110
120
145
106
82
77
108
74
98
126
73
111
80
87
51
115
65
78
129
186
90
98
47
74
110
66
125
134
70
163
149
97
136
115
114
54
130
150
158
87
146
123
141
114
82
78
70
90
105
70
116
100
148
96
131
90
64
132
121
82
77
100
151
44
103
147
86
95
110
139
94
125
38
81
86
72
132
97
123
83
37
105
50
122
94
94
86
111
58
133
90
66
159
187
57
122
129
112
163
142
121
132
79
82
120
240
51
124
41
82
197
82
94
81
93
61
118
131
59
52
192
116
50
161
144
135
86
98
116
110
73
116
61
126
107
60
133
39
86
97
165
74
133
106
100
80
167
138
91
151
86
76
195
154
62
102
91
202
128
86
69
69
100
80
73
148
110
58
140
180
94
78
200
110
118
95
121
80
82
54
73
85
74
86
84
43
51
95
90
98
67
39
87
87
158
73
67
76
61
100
72
122
102
75
100
106
77
97
143
88
58
87
134
73
77
60
53
62
52
78
75
73
206
60
91
78
123
146
125
152
91
128
192
122
93
93
162
76
100
54
191
89
151
118
182
87
153
58
89
137
159
81
112
81
65
62
73
130
81
163
138
97
116
83
143
74
89
124
119
126
83
114
80
97
185
97
218
117
157
127
136
104
190
84
88
161
107
119
107
107
63
50
105
107
41
115
118
115
170
69
55
77
96
91
103
81
180
59
47
232
69
94
70
66
125
54
157
131
138
80
202
103
82
139
63
147
152
137
89
102
132
50
132
121
194
102
136
84
114
76
107
121
127
67
60
124
91
91
87
79
159
68
95
60
64
91
97
70
151
40
127
97
91
90
88
75
65
120
66
133
141
131
119
139
125
108
166
80
73
127
153
113
148
64
140
148
60
85
158
140
95
127
90
130
130
61
80
54
100
134
108
83
76
158
84
175
75
94
120
63
81
113
151
134
73
80
156
77
37
112
97
100
112
50
88
82
92
153
91
82
143
61
110
86
123
103
70
94
147
97
135
89
147
87
126
70
93
111
139
103
143
74
67
89
107
194
92
47
74
173
92
146
140
112
82
143
87
105
197
124
76
133
146
83
66
96
145
118
94
98
98
105
142
110
107
112
65
135
165
144
131
135
61
82
68
122
132
111
82
70
94
70
130
92
129
137
95
67
43
97
138
132
58
46
84
90
110
195
92
98
79
53
139
57
55
117
121
94
164
139
71
59
101
140
136
76
88
115
53
118
39
76
103
100
78
85
114
120
97
74
60
204
234
73
143
133
123
184
56
84
160
82
83
84
265
129
126
91
177
119
113
125
95
109
96
91
127
72
58
128
44
159
118
90
77
89
70
92
108
156
56
94
66
145
74
70
64
76
105
80
142
103
73
106
147
185
100
124
95
97
68
51
116
226
89
132
110
105
108
116
77
108
84
97
53
109
71
85
77
62
94
106
98
112
171
84
81
118
97
53
91
148
131
129
97
62
95
107
72
112
53
70
128
116
136
108
113
72
92
140
89
166
122
158
105
159
100
132
76
123
87
56
101
135
74
137
140
117
90
103
100
81
79
89
69
175
105
51
91
143
83
172
56
59
48
112
52
67
181
145
143
175
77
69
64
78
82
140
135
145
120
122
113
61
101
132
124
83
128
155
95
136
59
48
116
128
41
131
104
127
61
89
110
110
107
70
113
56
138
71
114
86
162
102
132
82
140
64
46
96
168
93
135
203
148
79
118
138
99
67
129
164
170
70
115
148
102
55
142
146
112
91
100
139
106
145
70
159
89
148
56
86
117
101
72
89
103
170
157
128
109
105
58
131
132
86
152
95
104
157
85
87
81
73
69
91
58
171
129
74
156
70
148
75
81
85
214
89
90
53
131
144
130
122
98
77
104
67
143
106
149
108
80
99
104
90
133
102
135
68
112
137
107
57
38
106
146
108
112
151
155
85
51
128
69
107
89
113
110
88
111
82
122
98
176
99
120
110
123
94
115
106
83
53
159
117
111
115
142
144
125
49
97
82
186
161
133
108
72
103
120
55
122
113
120
96
87
118
90
143
144
80
146
196
166
92
71
165
88
115
145
55
83
123
110
180
105
113
100
106
88
160
138
85
144
76
169
100
95
93
62
70
130
91
94
74
135
109
132
91
213
122
83
90
136
75
109
145
119
118
41
131
66
52
108
153
106
122
180
72
74
156
110
169
94
120
178
210
117
67
128
83
93
70
134
112
96
73
76
81
100
188
75
90
56
120
146
98
77
88
69
77
55
116
128
134
223
65
118
129
88
96
94
70
28
111
124
121
116
60
97
118
156
110
60
90
261
109
125
68
104
118
89
91
105
87
176
152
70
79
52
175
81
165
109
99
152
106
104
63
37
115
122
121
47
122
118
129
56
82
184
111
83
54
158
58
68
109
88
74
42
94
84
76
114
115
49
120
109
104
164
164
144
139
111
54
117
65
78
152
108
140
44
91
125
138
100
169
92
154
76
121
123
112
142
135
144
82
69
99
163
84
53
100
72
70
51
55
118
99
75
88
108
115
110
99
115
76
128
85
88
128
142
84
156
69
92
140
62
125
68
97
97
69
148
61
110
72
137
91
191
93
102
122
129
146
90
44
45
156
95
64
208
58
96
136
70
88
145
122
117
74
68
78
128
103
67
95
101
133
147
108
157
72
99
71
143
90
112
122
178
74
115
105
147
160
76
104
125
105
107
157
89
119
63
104
86
110
170
59
136
102
69
110
88
47
110
70
112
71
91
67
97
97
116
72
94
93
98
110
121
96
40
97
104
116
122
114
119
111
70
174
107
99
125
176
105
154
118
116
114
84
75
109
97
142
134
116
116
77
126
131
100
93
67
66
123
145
90
68
207
47
80
128
75
112
152
106
132
127
69
158
82
129
99
134
155
69
97
166
106
129
154
54
107
65
68
149
99
155
123
152
95
62
123
86
95
92
130
132
86
168
174
126
151
87
106
137
148
73
156
136
59
81
47
320
69
85
64
87
98
68
171
70
193
143
110
104
181
127
134
199
168
128
124
61
131
114
69
122
89
112
125
107
112
105
71
72
149
143
111
92
107
111
59
81
119
118
120
146
113
127
106
120
201
82
92
78
113
87
67
51
145
104
115
110
129
97
78
103
264
48
130
130
166
76
93
169
135
75
175
88
131
98
56
125
200
90
96
88
100
74
114
134
68
142
118
83
51
129
112
104
107
111
60
128
195
42
117
86
155
81
81
136
47
172
65
106
109
69
182
112
192
56
88
133
122
240
43
149
63
46
90
186
112
50
95
118
129
62
110
153
95
95
130
93
119
150
123
114
84
86
137
70
95
101
108
74
129
126
91
55
65
105
115
105
119
148
102
100
139
122
83
123
213
184
155
18
67
71
72
56
82
79
84
86
99
141
267
93
94
86
45
99
143
92
86
45
95
117
124
80
59
80
60
139
117
67
104
36
112
137
119
124
128
64
104
158
96
85
92
82
37
109
127
110
67
212
148
166
95
98
76
172
80
137
223
78
45
102
205
112
158
171
105
63
101
123
113
106
115
79
99
72
80
128
45
98
189
144
138
147
131
77
91
88
121
104
130
95
80
36
77
140
126
137
53
81
105
107
137
37
152
48
76
102
57
83
124
182
138
86
71
118
95
88
95
147
61
44
96
140
85
96
103
136
139
110
107
157
59
71
237
88
163
119
92
82
91
166
62
127
96
55
95
87
63
136
123
101
157
59
136
227
43
39
136
86
86
117
105
131
107
63
149
109
37
51
70
128
239
75
145
97
137
91
51
102
74
115
86
165
123
120
149
111
142
77
74
92
87
60
134
135
146
133
218
144
108
73
88
118
126
114
168
162
107
106
58
57
87
76
101
140
57
44
112
116
138
108
83
95
140
81
80
184
77
157
22
81
135
131
130
183
91
107
145
46
75
53
118
137
61
118
76
139
33
66
59
139
94
94
107
99
74
97
105
55
79
85
232
109
115
107
122
148
68
156
216
60
109
89
205
62
172
151
108
120
69
138
99
118
76
77
108
61
86
119
211
100
113
143
61
133
109
119
141
85
139
99
103
132
87
82
129
78
113
87
130
73
166
84
125
152
133
103
115
137
102
78
166
69
82
116
92
198
73
68
113
104
143
68
183
98
130
159
85
119
47
109
114
86
66
117
40
116
181
86
76
116
69
81
75
84
158
98
65
85
90
71
73
79
116
43
130
37
116
89
173
173
137
49
175
142
109
117
112
47
106
96
102
133
117
106
125
113
137
120
126
142
77
128
100
56
53
179
92
208
87
133
105
98
106
170
115
172
85
163
167
200
145
86
145
132
144
124
102
84
147
90
144
93
43
53
111
125
117
121
100
73
112
148
97
50
108
67
123
47
119
145
102
79
103
98
120
157
106
217
56
66
66
211
37
133
88
109
65
67
73
106
77
51
173
31
113
166
129
62
60
110
77
149
52
108
138
46
66
100
184
109
119
84
138
139
47
191
83
97
101
99
66
126
54
139
77
81
153
87
79
77
70
127
75
48
125
95
63
58
169
118
86
67
98
46
57
78
87
72
79
101
98
189
88
115
65
85
188
145
129
138
203
117
71
128
195
115
100
54
116
89
178
111
96
84
159
52
58
130
80
70
96
63
46
165
98
109
93
99
90
102
147
110
114
129
61
84
67
87
151
117
71
130
91
74
97
93
76
142
101
139
92
69
145
131
134
99
120
106
112
91
123
86
185
107
63
114
122
40
88
66
134
93
109
149
87
163
74
139
79
115
106
106
192
133
87
58
94
101
140
104
115
81
61
93
89
122
98
106
175
90
94
100
105
168
121
42
68
87
137
64
169
71
80
51
136
103
163
101
75
110
125
151
76
202
133
74
78
59
124
169
102
93
170
81
73
136
82
76
70
49
134
84
100
79
100
78
67
136
86
55
78
71
108
247
71
52
91
112
75
148
146
115
144
144
68
114
118
34
123
89
61
172
96
159
144
71
33
109
190
149
119
83
69
49
85
95
49
83
101
82
127
169
112
65
81
130
80
128
119
83
170
134
148
79
120
91
141
144
122
97
76
51
151
100
86
91
92
129
135
55
60
119
98
124
124
120
107
57
79
109
96
174
73
160
125
167
109
175
154
92
81
212
70
90
78
50
122
81
87
94
106
62
87
64
68
144
85
114
169
203
151
128
88
66
108
152
137
143
67
84
131
100
108
101
129
61
72
73
86
173
64
59
133
86
118
60
103
81
124
139
124
136
71
110
98
109
100
82
118
136
98
90
121
104
68
114
162
188
125
71
114
118
137
140
70
110
155
123
134
97
52
78
110
135
99
104
68
108
123
83
130
71
134
68
98
76
119
116
134
58
124
66
78
65
97
49
88
63
147
110
98
90
38
123
74
98
90
58
118
88
109
99
74
135
98
130
92
69
124
42
88
84
42
68
147
56
55
0
133
52
130
125
79
105
84
148
160
83
88
157
58
115
94
87
116
74
66
84
129
125
128
129
123
68
98
86
89
46
70
124
132
128
98
194
124
70
100
63
142
94
130
110
60
59
88
96
125
86
108
51
54
151
142
139
155
46
109
110
83
112
132
141
112
108
86
110
65
110
157
145
116
196
193
160
117
73
92
67
116
61
98
71
71
95
65
120
53
88
126
134
63
60
164
118
133
149
226
160
76
97
130
81
93
115
41
137
168
88
128
103
41
48
109
107
62
121
123
132
148
141
63
68
143
125
59
64
106
78
150
87
90
128
104
119
91
122
79
137
42
93
117
115
54
141
205
107
136
92
125
38
139
143
169
64
46
73
87
93
259
49
113
71
130
151
123
121
128
101
76
140
71
91
117
153
135
97
73
134
83
134
107
106
161
97
77
102
115
74
177
89
67
103
82
67
112
85
37
149
96
32
80
151
147
94
55
117
83
117
98
129
48
76
108
101
99
111
108
106
108
78
150
91
148
138
149
100
66
132
44
156
106
156
68
43
173
94
74
76
103
98
127
61
139
146
60
91
109
95
89
104
42
88
137
115
109
76
129
55
115
133
137
81
91
143
76
87
50
225
134
82
123
57
132
78
110
150
138
130
109
70
83
135
114
85
160
116
78
192
146
95
55
92
93
35
92
120
161
78
97
122
82
58
60
113
168
156
110
110
122
118
146
96
113
104
91
68
73
104
129
128
123
89
73
99
88
108
75
87
77
64
161
181
71
96
141
86
46
106
76
78
98
164
116
131
118
144
76
91
104
106
95
86
123
102
118
96
79
168
42
125
96
102
49
97
111
137
89
80
79
162
82
45
40
81
128
107
104
130
108
115
127
92
99
111
87
91
118
77
100
98
107
103
94
84
71
169
65
97
81
62
102
129
56
96
96
95
40
140
137
68
103
73
68
104
97
113
85
96
189
125
102
92
124
73
99
104
38
103
110
27
158
95
68
42
86
159
84
61
70
115
40
120
127
93
130
120
170
60
125
98
138
91
59
212
130
130
118
141
81
153
66
135
87
118
124
138
65
113
110
64
73
65
149
73
43
140
157
89
109
54
51
110
149
98
136
129
114
131
86
169
75
80
151
98
57
183
83
78
75
106
110
109
110
111
45
92
185
143
135
109
117
83
121
87
131
101
98
143
148
89
80
56
151
65
80
101
99
110
98
103
100
154
113
103
53
85
80
139
100
67
141
82
35
89
131
114
89
76
83
139
156
155
66
163
125
57
146
59
119
70
104
93
80
48
159
106
66
63
159
55
107
105
146
178
93
234
48
84
116
110
146
144
97
87
50
74
94
134
129
96
88
156
85
93
106
60
149
156
194
127
91
78
99
73
120
31
160
95
80
101
177
78
129
162
121
85
94
88
52
100
154
82
57
139
123
90
103
73
107
89
84
63
94
170
151
132
140
143
109
166
218
126
100
72
103
179
102
56
148
143
126
103
106
78
165
103
63
104
166
58
97
102
79
78
107
85
78
80
143
74
94
141
128
65
123
137
104
109
92
64
132
65
155
159
96
136
119
99
113
147
81
193
123
77
107
64
50
152
132
71
98
87
87
64
155
97
112
92
144
115
167
143
71
39
156
107
80
89
251
130
97
77
109
114
67
83
179
87
141
139
87
72
59
122
128
117
131
117
77
98
100
117
151
116
66
68
137
54
170
127
102
141
74
111
75
145
100
69
83
160
82
45
104
182
59
62
90
41
118
144
113
144
60
226
80
56
49
52
107
76
110
162
179
95
87
58
104
150
89
105
123
52
118
108
143
136
147
120
139
164
166
62
70
86
148
43
110
186
118
95
48
110
108
113
142
145
186
68
138
171
120
50
64
79
70
110
99
132
76
126
83
124
119
125
124
72
105
123
77
129
156
110
131
126
128
85
81
162
64
176
95
76
127
57
60
90
56
92
138
177
138
148
131
81
116
166
95
163
68
185
134
109
106
79
71
71
118
52
119
62
80
92
98
132
125
83
101
84
71
135
62
87
50
182
105
153
101
87
38
115
68
116
74
58
45
157
114
127
102
53
111
142
113
93
59
142
61
112
151
105
96
170
79
77
97
38
91
43
96
80
155
111
68
45
102
91
110
116
74
62
154
125
61
81
146
111
97
62
161
116
157
97
71
94
116
103
34
88
102
42
69
43
125
112
91
24
68
165
143
157
73
155
111
109
146
145
79
115
70
187
159
159
74
128
147
59
67
149
56
93
112
105
139
87
119
83
93
67
170
155
117
74
139
124
87
126
107
110
116
47
46
151
92
56
156
154
78
109
67
56
97
131
160
101
63
176
63
95
117
95
67
116
107
77
67
71
176
111
80
80
120
137
102
102
73
160
88
105
88
124
81
132
114
129
92
44
110
130
101
139
73
163
132
78
70
43
113
71
111
100
127
194
80
102
92
87
57
175
177
86
156
77
56
95
85
113
57
132
115
188
130
82
128
113
148
97
102
101
61
64
70
93
143
65
54
85
121
126
65
167
53
107
96
147
180
89
112
160
83
87
103
140
68
105
185
128
100
133
107
115
165
115
121
62
95
94
98
164
144
80
90
98
91
51
67
89
113
76
92
82
101
129
55
116
137
97
169
141
102
65
182
124
108
93
117
95
85
143
125
136
62
52
182
94
78
86
78
169
121
65
162
129
82
169
101
74
51
156
104
66
104
94
90
107
123
124
104
215
106
96
106
156
135
63
77
69
84
123
107
80
103
117
108
152
106
122
125
216
119
98
86
198
130
98
121
85
95
121
96
90
110
68
166
70
164
123
97
89
89
154
86
112
111
67
107
129
52
127
143
99
68
117
110
110
71
108
100
123
106
124
112
64
133
82
83
45
137
99
67
80
125
77
123
67
65
123
151
122
97
137
61
143
228
129
70
99
163
102
99
185
132
136
75
89
79
104
106
102
130
95
64
93
145
130
74
66
67
72
56
232
67
112
127
73
96
92
155
95
140
76
134
89
139
116
161
94
109
80
63
142
69
83
55
72
58
116
182
115
185
116
117
71
165
163
93
92
75
92
55
41
63
82
146
148
55
146
96
58
59
154
130
87
132
87
108
64
60
177
143
144
81
155
99
129
68
104
75
175
56
187
89
93
103
82
58
92
158
157
102
91
75
116
159
50
49
83
66
166
141
81
91
108
51
73
103
151
107
106
119
110
90
84
137
51
88
86
121
126
149
133
96
95
125
62
50
119
70
120
119
148
101
141
73
125
51
52
99
89
51
112
61
92
74
72
100
70
151
94
113
117
127
30
96
78
109
93
174
100
61
58
114
36
134
171
71
148
121
122
137
117
56
46
63
37
118
77
71
83
108
106
106
46
101
114
93
116
103
120
92
155
102
93
38
136
89
86
133
82
84
163
66
59
113
115
145
87
77
157
144
103
88
132
132
58
95
160
47
128
89
121
63
98
88
65
80
55
53
103
133
90
70
80
132
101
79
65
91
78
65
139
126
108
117
218
117
115
116
126
138
95
148
71
134
78
110
102
142
121
129
93
168
103
141
83
146
158
62
78
134
51
103
62
119
149
59
69
50
131
92
182
82
100
280
93
128
121
93
93
114
90
34
137
139
40
161
39
108
84
145
97
56
134
138
57
72
91
57
63
81
173
108
67
74
59
168
96
89
98
121
122
116
80
149
114
87
85
53
115
87
139
115
37
75
72
114
109
188
77
41
99
161
113
72
128
120
80
90
87
92
139
151
167
91
200
88
75
101
32
89
85
95
165
93
144
74
124
127
168
60
110
93
117
77
93
86
80
92
55
70
212
71
75
56
64
129
100
73
139
74
135
93
181
110
126
137
145
86
55
70
96
88
132
56
58
168
67
136
91
104
135
79
114
103
121
93
109
78
105
121
90
115
87
54
88
112
61
104
100
57
154
129
113
108
214
159
141
79
137
54
135
134
174
77
155
182
101
131
99
109
94
89
110
166
59
92
88
136
124
131
120
95
96
173
109
40
65
156
116
187
112
175
82
143
65
75
91
82
98
68
128
63
236
192
133
99
51
79
168
119
120
72
100
80
96
159
80
52
107
192
162
193
150
59
89
97
90
49
80
99
106
108
90
111
68
139
160
101
149
93
119
51
136
119
64
82
63
111
86
80
65
131
51
109
123
96
105
64
51
155
141
146
101
92
101
70
122
115
32
102
97
122
134
85
70
107
158
45
125
67
55
102
73
74
81
93
106
99
90
87
83
107
123
109
90
100
149
138
116
109
140
104
62
114
112
102
74
152
50
96
127
120
112
63
62
159
113
82
66
71
112
77
136
60
80
95
72
72
119
94
67
85
127
71
64
162
65
122
59
143
87
83
111
167
114
201
71
119
127
107
175
110
150
146
58
100
162
66
111
83
88
79
68
147
66
115
88
119
97
156
123
113
72
152
111
174
152
91
110
126
139
79
121
48
157
108
65
44
136
152
95
92
111
72
144
77
125
107
136
152
244
88
173
126
131
114
161
84
152
59
74
142
111
48
103
119
62
80
122
113
112
155
77
131
66
121
126
164
62
80
60
155
94
133
105
69
159
82
73
54
107
122
54
68
126
129
52
133
148
155
129
84
149
186
57
125
93
66
143
87
98
138
121
80
108
81
59
150
79
31
89
97
151
127
96
154
129
108
125
96
84
93
83
107
159
68
152
56
143
96
85
64
110
139
62
143
141
98
78
136
106
132
164
39
58
168
124
156
107
114
93
150
118
109
64
63
60
81
109
56
96
70
171
131
79
184
53
142
147
123
169
122
58
157
73
125
70
131
92
135
115
111
121
85
72
69
54
106
111
120
112
95
72
92
144
90
84
187
77
108
124
131
105
89
144
216
201
110
109
146
119
106
61
98
136
150
107
149
107
81
164
112
122
160
143
76
125
115
150
110
156
106
94
62
76
100
202
106
106
56
76
166
168
85
115
96
97
110
155
87
65
195
76
83
63
105
172
152
56
84
140
112
145
90
105
98
100
91
49
163
93
81
190
102
116
63
74
64
75
83
134
68
122
128
124
93
130
72
147
88
51
137
48
72
164
79
199
81
77
136
110
79
92
81
69
170
26
76
48
77
95
55
121
70
77
65
103
100
120
110
78
84
61
60
98
90
61
61
169
156
130
95
105
104
60
174
63
144
115
97
84
141
106
61
114
79
51
85
132
199
103
106
74
72
114
76
167
78
116
89
103
86
126
143
115
101
70
133
60
72
63
120
120
140
144
83
74
129
140
58
82
137
209
129
158
138
72
80
39
188
113
106
128
145
135
80
118
86
127
175
116
107
195
100
99
109
187
88
130
118
73
28
85
57
90
53
111
135
95
83
110
137
145
141
80
60
110
61
99
137
91
73
76
107
156
65
61
89
124
96
148
151
152
100
130
157
113
97
117
83
105
58
85
60
41
83
86
92
110
138
164
87
105
62
114
121
135
101
117
163
179
118
121
85
159
99
70
55
78
136
130
62
83
82
128
101
67
45
86
146
192
108
70
135
124
133
45
57
119
127
216
116
157
43
85
87
74
89
121
159
101
46
47
82
53
81
139
104
115
194
144
62
126
88
116
55
95
124
97
128
79
69
60
128
104
96
106
86
61
90
182
114
154
152
104
97
103
134
108
111
175
149
138
99
84
73
132
127
112
205
80
57
130
69
146
113
95
157
75
98
131
90
106
90
119
89
123
103
125
110
129
150
120
125
53
108
112
96
74
48
71
108
71
62
128
65
69
149
87
91
67
32
141
106
100
170
113
88
63
122
89
104
108
61
79
48
123
100
81
72
67
112
67
114
101
100
48
144
177
99
94
85
130
114
101
157
72
90
132
83
63
55
32
84
154
135
106
133
119
65
64
113
147
141
42
69
126
57
128
201
98
53
86
78
92
104
86
69
114
81
48
121
103
73
104
115
109
109
53
46
135
124
105
59
140
84
37
65
145
78
73
174
117
76
40
120
97
29
111
99
180
85
107
125
137
104
90
180
60
55
107
78
181
64
72
106
113
94
163
61
59
88
115
80
124
52
78
93
126
65
126
114
78
74
135
76
98
180
133
96
115
74
171
127
103
74
79
118
104
106
68
59
162
127
82
65
154
75
179
108
88
162
133
79
69
75
76
58
135
152
107
85
88
70
177
180
131
114
76
121
131
120
88
132
155
109
116
36
67
158
152
112
134
159
86
145
61
108
98
62
59
174
86
122
179
129
89
107
64
119
108
91
110
164
100
83
85
58
175
158
82
60
75
112
134
82
83
135
47
198
81
66
60
46
74
169
123
53
60
77
79
118
101
51
109
127
108
127
123
62
152
84
106
114
70
137
213
47
145
150
102
116
70
106
72
102
190
119
79
73
76
102
121
170
134
38
144
59
149
59
140
192
47
108
126
47
59
177
121
80
66
64
82
103
108
159
131
66
72
212
69
146
153
46
154
88
127
143
84
151
137
99
82
112
114
84
98
154
137
126
57
55
120
134
56
94
75
72
132
71
29
73
102
73
99
118
114
139
109
58
88
153
84
115
87
67
100
90
161
201
150
112
138
92
141
69
76
67
120
179
65
128
76
98
60
88
154
166
66
171
66
82
62
112
92
134
48
125
96
60
98
28
143
110
103
158
56
81
126
54
186
158
93
96
52
54
45
95
69
163
98
113
92
114
103
80
90
69
111
122
181
125
55
115
98
99
135
179
61
82
102
139
199
107
139
91
159
98
105
124
84
125
133
103
149
65
143
118
179
108
123
165
89
100
105
74
127
127
57
125
59
121
83
83
97
130
104
121
79
124
175
144
67
117
119
151
134
51
61
74
79
118
164
166
165
74
104
86
112
120
58
78
118
64
114
94
64
106
154
82
96
111
155
75
126
101
92
158
84
70
88
132
109
171
72
171
75
265
129
85
39
83
103
142
95
114
72
100
134
53
117
153
54
84
63
90
66
71
75
73
116
55
124
140
56
58
103
115
41
120
107
202
97
159
124
59
73
205
61
126
81
129
86
120
156
85
166
110
81
103
74
40
165
113
94
95
94
73
71
66
106
75
176
108
157
85
131
47
122
113
187
192
59
97
65
128
77
116
80
116
156
146
40
74
125
71
111
174
136
112
75
110
92
137
149
81
65
95
193
80
70
124
75
67
124
95
80
61
118
121
90
90
69
109
89
115
103
101
63
116
111
71
124
72
113
129
120
100
94
86
99
92
82
111
108
102
131
138
162
49
130
84
108
77
106
101
131
110
117
115
96
111
206
131
92
97
71
70
152
74
115
110
113
108
102
108
129
110
79
48
57
75
104
61
123
73
101
121
107
106
67
84
92
126
111
85
159
146
107
114
76
151
86
135
75
79
135
108
145
171
128
123
89
98
232
70
134
109
62
58
96
119
110
101
114
158
107
132
101
123
77
187
76
90
98
135
84
85
183
133
135
84
42
48
100
152
85
85
46
171
90
148
103
80
103
60
77
113
85
203
150
76
66
67
83
108
102
73
50
149
118
120
89
79
113
87
78
44
162
91
124
140
98
141
79
84
78
129
44
75
77
161
56
116
100
96
38
91
112
86
77
133
107
63
82
79
99
194
60
84
92
98
56
79
61
131
160
51
97
79
63
97
112
112
259
97
75
62
115
75
79
138
75
101
186
57
89
86
63
59
54
154
99
69
115
93
149
118
84
40
53
76
121
115
91
91
100
85
86
81
145
84
96
96
86
72
85
121
85
110
59
117
68
50
112
101
129
90
70
133
75
172
190
92
115
94
86
86
102
75
148
100
108
117
72
134
152
104
106
92
109
80
93
128
92
47
69
81
71
93
69
127
110
38
92
149
172
157
58
123
78
98
112
77
186
108
120
93
114
72
39
216
77
117
66
110
198
145
112
87
126
134
86
100
76
142
108
119
111
67
133
120
100
63
83
90
127
95
94
173
88
95
114
101
121
73
57
87
91
136
104
92
108
65
160
123
70
113
74
139
99
230
142
143
106
160
147
115
76
107
185
155
94
50
118
168
128
91
133
61
84
73
84
212
113
130
110
121
119
67
81
118
66
92
54
66
73
86
159
106
89
177
84
73
189
119
112
43
120
134
72
83
73
99
89
93
101
99
136
99
104
136
134
90
98
62
78
40
217
68
80
72
120
90
37
137
53
126
90
99
68
101
192
78
130
119
152
139
99
107
149
62
66
70
123
142
48
78
45
111
124
74
55
83
57
40
74
159
62
62
75
126
73
69
65
78
76
72
97
107
134
98
61
235
144
93
80
130
86
83
147
213
42
79
101
114
113
94
82
111
61
128
66
86
60
139
103
97
155
34
138
67
135
103
139
162
106
124
58
87
96
81
102
127
87
58
146
58
44
192
99
39
99
66
97
87
107
55
106
97
125
104
65
116
73
81
164
163
92
126
65
81
98
140
95
127
121
84
73
124
97
99
74
128
116
81
38
91
141
133
101
140
59
70
94
179
131
88
75
46
126
109
141
144
105
84
160
101
34
56
60
102
129
30
84
76
121
193
129
85
121
249
127
145
122
77
125
131
130
102
144
125
129
110
102
47
212
170
117
148
119
58
89
140
78
76
58
144
120
73
100
107
53
103
74
94
138
114
73
61
43
87
153
76
138
148
107
106
70
106
155
77
116
107
148
68
195
143
74
120
85
59
65
123
121
102
154
101
59
86
68
113
96
108
74
122
121
74
58
123
66
90
78
108
85
68
124
82
65
70
114
72
82
84
100
115
100
133
56
100
145
98
103
80
79
92
99
141
134
86
61
70
131
80
54
181
72
89
115
91
154
64
81
81
68
107
116
86
117
136
76
149
108
144
187
88
141
138
87
63
128
75
104
56
68
90
125
69
81
119
91
75
99
117
132
131
78
110
125
90
63
119
117
76
98
121
55
140
144
65
80
139
96
148
108
130
87
116
81
46
167
91
124
66
82
117
60
158
110
94
98
137
118
78
30
150
137
111
126
133
135
127
153
109
57
135
107
139
95
116
76
102
137
221
88
107
76
93
159
54
88
90
165
55
70
103
182
83
113
126
115
98
60
67
127
139
106
142
125
56
129
140
145
73
67
32
103
71
86
171
77
100
107
115
113
119
160
53
80
52
63
139
85
127
83
67
85
40
195
238
177
67
111
90
173
79
99
83
114
91
109
70
112
118
96
172
134
42
113
251
173
246
59
133
126
113
94
68
125
62
168
64
183
63
138
84
84
116
62
82
95
93
160
147
141
133
164
132
109
153
92
73
85
125
147
95
80
148
104
76
94
169
71
113
108
88
79
59
95
67
63
153
83
78
51
41
152
44
104
106
57
80
132
75
84
114
86
110
150
99
132
106
79
78
44
126
59
159
61
57
136
111
101
186
222
117
102
125
104
109
99
54
145
55
173
65
84
150
113
195
56
128
95
142
148
111
160
126
52
98
91
63
87
56
180
187
96
73
68
110
126
87
131
129
106
119
267
151
153
95
69
89
88
119
59
58
55
168
58
98
119
80
91
98
131
165
71
91
77
95
106
178
91
75
110
27
43
76
118
82
81
64
106
67
137
169
72
99
49
74
122
151
65
205
144
63
100
109
137
60
134
76
131
70
56
90
46
83
92
203
59
114
72
72
80
114
97
143
69
108
173
108
52
128
84
62
165
97
168
49
61
106
96
123
171
148
64
92
172
118
120
144
56
139
91
55
101
74
110
149
95
116
104
161
144
218
148
66
103
82
95
144
123
94
78
154
93
82
82
125
69
92
193
103
59
59
80
107
98
66
89
150
84
138
61
109
102
82
69
93
144
83
117
53
98
106
133
99
129
107
155
85
110
106
155
90
111
78
69
114
83
89
141
86
179
101
54
177
79
134
56
110
116
164
98
50
83
99
94
89
73
67
120
147
138
86
140
225
134
127
95
206
78
125
144
119
164
107
129
91
136
64
65
79
138
67
87
147
114
75
53
51
146
145
45
66
76
106
67
68
61
150
113
97
53
152
128
117
72
89
85
138
115
54
119
72
132
142
142
90
204
67
167
133
120
57
165
159
91
68
139
94
146
143
132
88
45
58
75
70
99
120
109
97
148
175
99
92
72
101
139
108
84
134
110
88
138
191
142
61
85
83
127
186
98
150
108
76
88
135
120
48
132
67
81
106
107
151
80
75
84
121
87
98
69
90
139
106
93
71
90
88
76
72
97
130
90
87
66
107
62
118
86
97
155
105
64
107
86
35
161
171
97
108
106
151
163
124
36
99
113
122
66
126
92
116
70
122
87
87
132
123
168
72
131
101
53
93
127
73
78
91
111
64
72
137
129
93
107
92
140
83
130
57
101
92
116
34
153
129
79
94
124
80
125
130
126
107
114
128
75
78
123
132
87
140
92
107
153
117
98
98
150
144
92
98
122
64
193
189
130
117
124
101
78
100
82
94
84
98
134
82
77
125
104
114
114
87
64
147
223
108
111
105
155
86
53
67
74
138
68
98
117
75
98
92
98
115
70
114
64
47
92
156
160
86
163
95
140
93
113
144
27
42
138
57
79
167
80
101
157
97
92
77
89
173
139
127
65
110
75
163
123
85
93
119
146
85
155
103
113
96
107
77
81
115
131
115
95
176
147
152
107
116
67
107
96
119
130
86
98
97
84
80
126
127
42
69
56
95
36
137
142
69
185
91
163
70
108
55
92
132
159
111
68
105
96
125
125
94
135
74
118
53
91
103
72
83
65
89
106
126
173
154
86
85
76
93
44
184
107
148
46
48
66
93
51
60
110
67
118
83
86
95
119
83
51
101
61
78
61
128
127
111
106
119
102
56
118
136
171
184
204
150
231
62
161
118
184
113
125
76
217
97
123
102
124
88
156
119
93
67
90
76
127
73
92
130
33
60
88
113
40
74
135
95
49
84
102
115
82
118
98
71
160
63
84
142
200
132
105
75
98
100
133
59
62
106
77
111
155
61
153
120
163
89
73
142
77
137
123
134
128
99
68
124
193
93
190
33
93
141
116
43
126
119
111
82
111
47
90
136
96
163
146
76
101
120
66
61
92
51
110
94
173
165
97
142
139
135
88
98
73
110
75
92
78
73
78
140
54
70
83
104
143
76
180
81
54
61
98
68
134
134
154
69
114
54
91
83
92
96
70
48
118
105
94
123
101
59
110
68
84
87
147
100
107
110
123
153
91
112
33
129
153
67
115
174
184
75
107
76
169
53
131
105
49
50
66
101
56
87
156
105
96
46
106
143
194
113
40
122
48
135
47
93
139
74
73
141
58
110
52
85
169
100
102
129
94
114
199
138
123
135
83
85
122
88
133
43
137
57
184
58
123
166
144
105
171
83
85
119
120
42
87
219
75
82
94
87
138
114
50
96
175
109
125
149
85
158
114
150
158
148
109
105
171
136
193
108
126
69
62
76
68
75
154
62
159
156
83
137
140
140
62
58
82
99
34
60
105
107
69
118
93
93
96
73
48
53
130
79
94
90
38
153
156
134
160
136
100
107
150
61
65
89
56
118
169
97
90
116
88
60
153
120
40
100
76
67
102
152
194
56
84
59
69
111
138
91
88
65
145
108
126
180
97
67
100
151
85
131
106
127
54
81
124
93
125
75
73
100
84
90
66
92
95
102
73
122
92
104
70
45
99
85
120
82
77
121
203
70
105
143
105
62
154
105
198
42
147
135
139
132
75
77
96
88
131
120
98
119
93
150
75
64
72
89
81
73
148
104
107
129
180
99
81
119
69
114
124
78
92
57
75
178
170
96
117
173
78
108
136
59
94
146
80
169
109
144
133
131
97
73
145
95
136
82
137
140
97
132
160
135
156
141
110
191
135
80
90
123
145
82
105
38
54
114
96
151
72
149
83
109
64
77
79
103
134
169
69
84
139
109
134
82
187
71
130
163
162
50
113
81
136
65
95
151
118
139
105
106
94
130
64
67
88
71
96
121
117
54
111
43
173
161
159
132
66
167
34
60
84
84
99
90
73
55
115
92
97
138
122
51
88
50
101
119
89
116
98
84
178
79
49
53
143
138
109
102
125
61
96
133
54
188
42
109
107
170
74
137
162
102
135
184
110
173
110
104
124
124
117
119
76
58
94
64
69
102
80
90
56
107
109
112
40
49
70
66
111
119
124
140
93
48
73
72
50
98
121
83
84
140
69
113
86
91
129
98
91
108
84
132
141
105
166
132
100
106
207
107
69
76
146
151
93
111
56
145
61
64
70
123
78
70
59
128
72
124
120
96
75
76
118
156
151
40
172
131
232
59
89
66
131
41
101
117
139
112
99
62
118
138
169
90
66
61
36
148
157
195
87
108
95
103
142
100
113
101
131
192
120
95
109
111
38
65
152
90
113
123
67
70
58
141
126
73
114
75
76
95
126
84
71
129
109
49
86
72
92
125
113
151
87
134
112
96
122
56
110
84
111
126
37
79
93
129
114
80
112
165
125
99
96
67
113
45
102
204
163
118
131
150
103
57
107
108
132
135
134
84
112
65
135
109
86
73
117
133
50
100
156
57
89
82
107
85
89
63
78
113
94
148
84
93
45
60
58
57
60
141
89
108
209
110
127
56
70
148
171
172
126
90
116
130
180
83
146
93
91
168
109
80
87
113
125
76
151
44
96
111
204
83
146
90
118
75
71
123
79
103
88
89
159
229
101
48
176
142
93
85
85
101
93
164
86
50
129
75
133
53
109
141
157
87
148
107
86
107
75
88
72
135
159
123
78
121
116
112
132
89
78
94
120
109
153
107
113
104
146
62
95
48
94
80
92
132
161
103
136
105
130
117
127
58
103
139
128
41
93
138
87
64
84
79
109
77
78
86
61
90
116
125
100
85
91
97
121
214
156
173
88
66
33
131
138
119
100
118
98
56
45
74
146
83
67
69
64
155
146
64
113
62
81
45
180
100
137
149
173
131
195
117
138
42
134
103
133
112
84
126
115
120
46
34
59
42
92
78
75
74
180
105
117
70
115
134
100
113
147
46
100
60
71
61
64
101
85
87
67
65
80
115
132
24
158
128
84
131
78
45
131
88
119
132
62
77
115
68
80
86
94
70
201
82
124
123
331
101
153
125
76
98
150
70
108
133
96
62
45
82
62
105
80
76
98
197
81
50
178
148
77
157
93
66
115
118
113
76
88
112
82
124
169
85
115
142
118
174
74
98
127
85
57
172
30
177
68
109
86
92
58
98
92
125
77
83
143
81
94
98
81
114
105
112
151
69
98
99
82
143
49
94
61
126
112
144
133
135
173
133
114
118
101
158
130
68
124
132
75
70
116
140
97
50
83
116
121
155
71
69
66
152
106
73
169
71
148
159
86
85
42
37
90
113
148
104
124
201
97
112
226
113
76
110
167
86
93
148
78
77
132
143
112
95
75
128
90
124
98
71
102
80
43
77
80
59
87
87
85
38
108
106
81
53
103
81
166
120
75
69
151
115
75
95
120
93
173
151
150
130
110
80
73
157
77
107
103
49
140
37
145
76
192
58
112
117
142
122
77
89
129
133
99
67
87
85
165
186
120
89
92
83
128
88
89
100
117
81
90
141
89
194
110
105
96
45
79
87
64
132
100
119
94
82
100
103
104
114
60
76
56
154
56
129
110
92
54
96
108
122
82
75
137
75
111
230
112
125
141
141
132
166
107
147
103
157
78
70
104
171
78
59
67
152
51
86
82
161
68
141
38
106
58
91
83
97
86
122
74
170
81
108
44
94
80
89
199
150
142
148
71
98
140
82
93
123
87
110
157
52
64
247
98
101
87
116
173
150
101
138
95
127
67
94
147
172
101
88
43
162
134
54
66
117
99
97
134
161
81
118
132
120
85
94
187
110
117
76
115
136
75
187
93
57
112
57
92
70
129
120
133
102
101
98
118
139
111
56
89
82
64
120
108
122
97
120
131
102
171
74
102
95
148
58
59
128
121
122
139
54
127
97
61
80
119
63
116
82
70
91
110
61
93
141
92
93
112
174
125
94
98
73
94
102
54
122
85
33
163
131
115
96
102
69
41
129
71
174
100
79
106
110
50
58
155
103
152
74
62
78
169
171
37
171
133
85
91
55
114
102
82
100
54
134
59
79
106
107
141
138
66
85
98
135
114
43
120
117
126
110
121
120
102
85
102
100
140
155
32
127
80
136
107
136
95
102
62
95
107
142
129
124
47
126
81
191
94
91
59
112
176
78
102
121
113
121
99
97
109
179
131
70
129
130
89
62
192
118
79
170
123
115
30
159
85
111
96
101
132
77
90
106
84
158
147
165
82
131
134
115
82
126
119
110
76
87
119
139
64
86
89
166
208
59
70
76
134
206
61
95
93
75
95
114
122
180
71
50
65
73
92
113
127
78
124
82
87
85
181
127
124
167
44
61
124
148
148
145
48
97
124
93
71
103
95
75
91
54
71
130
53
139
94
173
103
41
91
70
175
32
62
79
146
144
109
99
175
102
132
167
138
123
42
34
115
81
130
129
65
132
73
177
57
88
132
72
95
104
105
88
234
98
89
118
100
120
70
58
56
107
87
123
98
79
87
109
75
83
144
95
64
135
71
56
122
114
157
99
66
79
91
114
117
139
75
103
159
63
90
162
133
167
79
87
71
98
96
76
65
88
85
81
116
93
72
140
104
61
74
124
60
119
60
68
155
178
118
86
65
161
129
170
68
32
67
176
173
99
140
113
60
163
93
102
64
144
125
214
127
97
170
64
87
83
126
196
92
86
69
134
67
74
60
136
131
91
82
100
109
53
123
58
72
83
139
170
159
102
264
90
129
107
123
105
72
127
68
66
94
95
93
117
72
88
123
103
80
127
59
129
122
115
148
105
143
85
63
98
68
99
128
60
123
88
194
114
83
162
99
77
101
124
68
108
94
125
94
64
93
97
130
136
173
165
83
143
170
95
53
142
75
46
83
80
75
114
214
115
76
154
89
157
127
45
107
135
105
88
97
112
204
74
95
113
49
149
91
64
84
71
60
121
63
50
64
69
66
126
72
106
69
131
112
106
137
107
128
138
95
106
35
78
56
175
75
42
78
138
142
141
152
87
99
114
135
113
113
96
63
52
170
159
154
47
56
83
114
112
53
71
49
110
90
53
111
52
166
100
94
94
111
84
50
84
103
68
74
69
158
57
37
88
44
129
65
108
94
79
94
116
95
117
122
87
130
270
132
82
211
121
35
148
36
134
86
50
91
50
154
93
80
71
81
236
122
102
119
148
120
86
182
98
161
97
137
159
138
170
102
103
144
153
154
95
73
103
120
101
135
80
56
127
75
145
117
102
70
65
115
121
100
158
95
115
47
71
154
103
89
84
124
87
143
106
114
112
109
91
101
69
75
55
141
112
89
125
142
145
111
86
63
144
133
126
129
85
119
104
93
103
133
78
77
61
69
79
73
138
81
103
177
117
82
89
121
124
154
80
104
106
88
32
130
160
130
148
44
124
122
94
186
157
108
53
163
113
126
134
123
106
73
74
107
133
52
134
94
112
95
99
57
210
91
184
166
95
107
121
64
196
65
150
94
41
95
62
129
115
164
121
118
84
68
127
47
103
66
89
82
131
81
86
71
96
121
193
130
86
118
52
115
156
188
124
95
81
68
150
111
33
139
87
162
60
115
160
65
144
87
110
104
103
63
87
70
97
64
39
74
170
63
122
72
30
105
131
107
94
123
143
103
54
55
163
123
74
180
123
111
157
128
87
100
127
103
114
49
49
45
136
147
47
113
97
163
121
127
206
99
155
108
167
96
70
54
157
59
165
142
94
55
143
78
99
105
123
170
146
83
91
73
74
164
62
83
121
179
150
61
72
212
63
151
99
113
112
203
107
128
120
100
77
95
126
85
159
133
98
105
61
59
57
130
70
77
133
72
91
79
93
94
137
102
144
125
153
112
58
52
72
157
126
89
110
85
91
79
139
62
113
60
138
106
76
50
113
101
90
169
127
59
49
66
119
151
101
145
84
181
55
82
85
98
114
99
54
108
101
101
89
66
95
44
96
118
103
78
118
135
95
58
95
121
105
182
122
109
49
138
103
97
152
88
101
49
100
164
131
73
119
118
72
126
64
118
53
45
119
121
88
71
156
90
142
137
130
85
163
83
90
150
121
155
119
81
168
162
93
70
115
127
132
67
80
107
78
155
83
131
93
132
121
97
145
84
95
143
114
61
106
125
141
123
83
134
86
99
84
115
201
142
157
67
119
86
27
124
128
216
98
113
204
239
86
121
120
53
97
46
69
112
68
88
116
53
103
135
66
124
121
107
142
75
127
82
140
47
158
134
66
109
162
147
100
100
129
121
64
128
61
124
66
108
184
151
53
114
69
66
122
86
88
92
122
107
146
119
139
63
187
74
67
101
71
134
105
164
99
156
112
171
172
270
163
50
89
98
103
128
117
67
158
109
89
151
131
63
107
121
65
141
86
114
112
175
104
42
61
54
73
73
72
127
30
167
68
141
95
79
237
87
91
97
123
167
72
188
112
178
158
120
109
45
125
40
94
122
130
62
262
72
106
65
78
113
117
173
84
83
99
55
116
119
129
122
95
113
52
100
105
102
158
122
70
113
65
75
73
185
180
78
187
61
112
124
63
114
133
89
125
165
103
150
112
49
109
175
80
88
112
201
113
60
129
72
157
158
123
87
96
68
75
66
82
71
85
61
80
84
100
115
88
120
144
106
113
72
92
90
109
106
39
130
113
50
63
105
70
173
76
81
134
147
127
120
103
79
81
95
73
122
91
97
182
73
109
187
97
101
71
57
89
81
79
73
132
150
93
100
135
74
156
27
125
139
103
71
110
67
92
97
53
64
81
89
128
112
97
55
92
102
102
138
130
128
105
144
118
129
135
111
125
71
80
81
112
44
106
140
153
86
74
116
63
101
50
82
95
123
168
105
88
98
76
97
69
79
42
167
96
102
119
84
121
60
110
106
88
105
93
56
162
166
164
139
48
127
158
85
70
130
144
63
121
136
86
66
128
77
101
96
126
118
135
117
82
84
58
142
55
76
143
107
105
96
89
87
187
97
103
114
96
66
81
71
102
109
82
110
94
63
79
117
97
76
113
101
82
78
121
79
120
115
102
81
52
81
53
123
52
56
127
69
96
67
63
100
356
55
99
87
154
49
111
83
65
128
95
93
202
149
30
61
90
65
63
102
103
117
54
142
194
44
130
67
152
125
88
137
112
104
143
101
45
113
67
70
68
138
98
112
70
237
115
118
72
141
40
111
101
93
96
107
80
78
113
216
130
56
91
125
86
84
66
81
136
75
63
52
129
139
162
83
74
83
156
72
106
77
194
58
125
164
176
50
171
72
129
144
83
95
140
142
93
122
112
61
104
115
132
97
102
68
123
168
126
41
50
43
152
45
102
54
114
111
115
82
94
118
94
77
89
141
194
91
80
139
62
74
92
63
87
86
189
115
50
62
99
114
136
118
169
110
113
111
138
59
93
92
88
103
79
142
68
150
148
138
46
131
156
73
114
86
103
80
70
94
109
93
64
105
92
160
207
119
133
71
71
80
97
77
89
146
94
101
116
123
103
77
74
136
100
142
75
80
82
144
186
60
112
38
90
68
100
93
102
121
109
112
83
80
162
67
99
86
104
44
42
78
56
38
86
130
56
98
90
114
47
56
159
59
134
161
72
69
56
140
135
194
109
210
66
93
105
73
68
69
183
52
112
175
106
89
114
93
87
80
109
39
102
182
64
110
57
103
114
56
107
156
126
91
62
93
160
96
90
68
68
100
107
72
142
90
94
70
43
117
93
118
106
131
102
96
80
106
123
82
110
104
194
86
82
86
120
78
97
101
89
34
59
74
115
81
78
109
119
117
149
86
140
89
119
109
90
52
103
151
88
136
120
145
92
91
187
125
89
198
82
122
148
76
110
134
130
73
138
133
135
68
90
155
57
86
133
113
60
171
83
139
76
70
118
88
177
114
89
78
134
127
100
109
94
118
102
119
62
77
249
112
75
161
105
112
212
88
89
78
120
61
116
70
68
103
115
106
129
148
117
94
148
97
74
80
58
92
205
131
125
101
113
66
126
106
112
81
80
95
94
88
77
119
43
123
97
87
109
97
224
96
78
130
56
123
57
118
98
114
83
150
130
118
80
144
117
90
142
128
69
105
61
119
117
112
99
108
71
134
97
163
62
64
94
59
161
125
89
144
107
139
107
73
119
105
185
182
82
58
109
111
119
86
62
106
57
101
90
113
105
42
112
57
171
61
94
85
122
114
89
49
45
145
90
168
106
61
49
91
40
114
97
185
68
79
94
167
69
76
72
81
96
121
147
87
79
36
91
102
55
63
77
107
85
120
119
113
149
122
69
141
101
127
76
60
91
117
104
65
115
83
100
47
99
130
82
255
107
86
63
131
75
75
71
58
243
45
138
90
230
42
99
112
185
137
86
137
167
111
158
131
80
56
131
92
117
139
76
160
157
92
218
96
76
134
104
112
114
200
117
117
103
160
36
132
63
136
236
96
121
97
104
96
72
136
100
101
43
95
81
155
74
79
67
116
103
126
87
43
195
77
59
117
50
140
63
94
223
117
178
130
64
99
83
72
85
91
135
193
103
93
106
121
49
79
126
117
83
89
92
71
56
75
47
201
69
92
143
97
97
80
123
93
149
77
165
55
99
105
170
125
79
96
161
61
60
58
160
97
118
124
115
136
68
243
115
73
106
58
129
79
90
78
30
107
40
61
134
99
95
80
82
86
112
86
77
182
109
96
159
79
55
74
99
98
177
91
117
116
71
142
131
59
85
90
158
109
68
79
151
40
98
188
58
139
93
184
162
89
100
109
116
80
114
67
149
95
78
155
57
166
51
147
79
123
113
119
131
62
29
95
127
121
103
129
120
85
115
141
89
116
113
71
135
89
127
94
63
73
159
127
84
108
114
73
77
133
69
77
93
123
124
79
99
155
133
131
117
91
91
124
109
78
128
145
161
145
153
88
90
135
87
62
82
95
96
152
121
144
98
37
88
144
166
70
77
125
110
105
52
97
178
107
91
93
138
143
143
139
31
82
126
118
131
109
189
176
112
100
122
55
152
124
69
91
115
100
48
80
101
102
117
42
97
134
66
215
154
119
105
137
70
196
40
77
114
78
95
64
113
165
133
89
138
44
141
112
41
170
77
141
102
77
57
103
129
113
86
76
125
105
72
93
96
54
94
89
55
99
69
126
131
62
87
96
80
119
90
141
105
169
66
95
143
50
102
74
81
166
80
127
74
97
136
43
128
75
101
117
128
122
142
89
105
74
137
135
105
114
82
160
170
217
126
113
105
142
131
142
134
99
97
76
111
128
160
73
185
162
82
81
127
116
120
76
53
152
117
102
114
84
54
127
117
88
66
168
87
109
87
88
96
96
53
87
187
134
129
67
59
69
124
78
104
79
58
142
117
82
94
114
91
114
78
97
147
158
74
92
95
237
98
89
134
99
96
72
89
53
68
207
140
103
132
146
83
147
108
141
126
99
75
92
91
76
114
93
76
127
63
126
48
158
64
233
126
122
92
101
148
80
83
100
107
104
92
183
76
75
134
61
90
36
67
138
99
165
79
75
79
57
75
128
110
81
62
62
155
107
116
94
141
95
104
63
89
101
183
121
129
79
83
85
91
112
85
132
91
152
118
95
72
147
59
155
120
106
70
104
71
105
58
167
65
124
88
132
124
164
120
48
131
84
130
87
221
137
135
140
117
68
164
72
97
52
132
69
86
63
64
133
75
55
151
100
76
59
53
58
118
126
95
119
180
100
80
88
53
87
68
85
92
164
79
103
104
94
83
88
77
108
75
131
92
58
63
150
59
59
113
88
82
123
116
80
106
107
88
121
131
109
104
100
83
146
116
151
149
76
138
148
123
114
88
116
109
154
40
63
70
96
152
122
75
83
160
96
150
102
132
113
130
54
122
144
107
104
80
144
118
72
72
61
84
83
73
68
145
156
49
70
103
124
88
74
71
132
125
98
89
150
78
97
107
68
99
111
92
63
99
123
65
80
57
101
63
70
83
89
106
119
103
122
230
168
78
89
129
82
105
79
106
129
71
181
90
162
98
55
131
55
100
74
142
66
61
115
161
165
60
115
112
145
74
70
53
75
95
80
56
84
160
210
48
109
74
62
78
141
53
115
85
190
87
106
97
182
91
58
97
72
174
143
30
140
67
129
167
82
102
89
90
125
97
99
93
116
119
144
90
86
95
62
73
75
101
107
115
72
64
112
100
92
200
70
95
118
119
102
120
103
145
50
63
120
100
68
120
98
67
123
150
90
131
159
110
80
189
204
77
139
99
74
124
70
109
175
71
88
86
177
92
155
116
100
82
122
65
130
79
108
120
82
138
113
128
110
50
45
67
142
99
119
116
157
104
132
105
85
83
120
103
114
101
108
152
63
164
142
77
62
99
53
62
88
99
120
45
119
98
45
158
129
78
92
150
73
115
141
134
93
90
86
65
76
82
109
73
111
94
64
101
73
146
102
165
106
78
135
127
84
134
44
100
49
81
82
91
133
80
87
138
133
66
106
98
123
207
92
122
175
122
97
104
92
154
120
90
120
85
146
121
91
124
198
168
79
40
76
84
116
83
144
138
161
69
152
116
106
107
89
149
131
70
114
68
71
109
75
84
149
164
100
105
52
65
85
97
136
123
59
73
160
117
90
119
97
114
130
123
123
108
156
105
168
69
97
134
86
84
67
78
101
131
78
142
183
72
111
60
94
124
150
153
79
99
158
91
45
112
158
130
54
83
43
93
89
126
102
95
94
25
87
77
61
95
166
102
51
171
147
130
73
150
116
116
126
78
52
152
89
133
80
131
92
162
116
114
121
153
151
39
88
115
52
112
91
128
68
99
198
126
144
100
69
68
224
66
126
205
61
136
118
83
89
63
92
101
78
60
95
119
86
80
105
112
101
107
147
54
44
90
202
56
105
109
160
120
104
71
57
132
152
122
138
104
87
61
118
114
147
115
102
48
73
125
147
194
62
101
136
112
54
121
126
144
90
153
82
125
43
116
135
109
133
146
172
121
149
82
142
89
81
92
105
79
52
120
113
68
67
72
80
129
88
53
114
82
150
105
124
81
77
145
72
132
67
88
69
60
73
109
100
67
85
61
131
167
93
105
107
100
36
97
166
123
103
38
139
87
78
99
138
97
116
90
189
84
112
72
115
199
130
135
90
53
117
118
91
116
175
118
81
75
136
195
131
107
87
81
105
111
74
60
105
137
82
83
142
96
158
137
84
179
29
141
46
136
115
70
95
77
82
96
85
73
138
55
89
131
45
77
109
153
64
58
122
127
115
92
78
123
40
110
94
96
100
74
101
123
58
84
77
111
71
103
153
64
83
93
78
95
73
76
102
94
93
82
57
109
118
129
99
65
98
63
67
106
55
137
90
135
205
58
61
102
97
143
57
90
95
63
73
114
77
115
113
154
124
78
100
92
126
106
111
131
92
125
128
30
103
109
158
89
94
92
140
84
130
53
117
153
108
113
99
117
102
105
61
95
109
112
59
128
181
86
156
57
152
143
181
85
57
51
145
150
100
148
116
106
62
115
155
144
95
208
92
64
115
131
109
100
160
186
94
135
76
126
92
84
135
80
84
114
157
51
53
122
117
61
129
76
60
130
109
93
103
104
114
111
68
117
55
95
60
56
63
180
113
50
118
73
119
116
97
95
116
108
118
114
121
60
126
51
88
91
48
156
145
93
125
123
72
145
78
80
117
103
182
101
260
113
60
38
149
91
146
121
149
55
80
140
171
111
95
104
94
60
108
105
101
122
117
140
80
144
76
85
139
123
155
219
178
116
97
99
184
95
55
54
163
130
131
166
156
74
90
155
94
100
80
69
139
77
124
101
122
63
140
108
121
54
108
71
66
84
133
69
73
118
90
272
156
100
51
120
46
145
52
108
104
119
138
187
81
72
116
65
189
165
77
167
135
69
113
96
90
157
43
152
179
156
142
88
103
76
92
168
86
65
58
122
57
130
30
85
95
128
154
119
160
171
60
161
74
124
83
186
43
185
87
71
65
192
57
130
124
86
38
142
135
119
83
87
154
101
131
52
94
124
129
219
195
109
166
81
56
110
103
160
150
61
117
59
136
73
156
147
68
66
98
108
108
171
127
63
37
76
126
71
120
105
122
121
170
76
87
122
106
103
94
126
128
60
90
152
68
97
87
121
178
86
75
87
122
57
68
88
152
98
160
112
114
84
83
144
104
137
47
119
63
130
107
74
53
135
107
135
131
65
123
136
64
103
100
111
91
184
102
113
147
68
213
64
77
97
130
91
79
87
85
69
147
84
100
107
184
89
64
46
62
57
108
131
132
81
100
104
144
92
104
128
78
186
91
67
106
96
131
103
68
163
132
128
154
103
110
94
135
146
57
42
53
65
63
126
60
128
230
68
105
128
150
130
100
94
144
173
99
92
68
135
76
105
75
85
122
103
148
112
153
139
89
103
79
60
106
99
80
168
105
100
79
129
130
113
96
119
116
135
102
50
158
156
137
137
77
101
85
114
108
200
86
65
41
102
204
83
96
169
188
69
114
123
99
41
193
119
226
113
140
73
122
95
65
113
67
161
135
80
50
95
70
146
108
94
76
138
93
124
105
214
100
88
183
128
94
140
72
50
112
234
99
68
101
92
98
128
91
119
104
102
118
116
44
64
46
161
85
76
106
73
117
63
118
56
94
99
99
110
85
125
168
137
139
32
100
106
144
124
85
56
196
75
83
146
63
144
63
157
160
105
54
147
130
104
133
108
152
161
93
119
54
141
71
98
77
141
72
63
107
98
83
38
119
92
84
191
104
80
124
128
88
91
58
94
90
74
123
117
95
55
90
126
127
75
76
93
48
146
82
102
117
88
140
102
66
141
104
80
122
69
167
70
103
164
193
94
87
86
111
64
100
125
62
106
160
83
89
48
83
94
122
81
76
120
101
103
106
46
92
99
84
114
130
115
154
106
163
84
116
96
72
110
84
75
90
72
63
82
84
72
153
145
124
121
120
165
78
134
81
114
102
136
72
125
67
66
91
118
57
103
105
50
99
167
64
51
128
71
100
66
148
153
85
82
111
60
163
180
121
76
142
82
49
163
116
125
106
54
102
55
127
181
106
139
68
142
107
84
145
53
119
116
66
101
41
101
54
109
34
165
127
52
82
280
54
126
141
146
88
85
113
137
102
134
81
111
175
112
128
165
109
98
100
144
80
164
88
97
87
111
81
116
196
92
84
191
96
64
150
177
92
57
54
103
39
116
139
46
106
85
92
177
46
97
69
78
85
69
97
107
88
96
105
121
118
97
124
130
124
73
117
90
61
88
167
64
129
111
121
54
151
70
139
124
32
101
58
64
119
148
151
73
107
105
69
74
62
118
109
78
134
140
155
135
163
112
93
91
70
93
103
111
117
120
104
72
144
155
145
84
95
172
121
65
177
86
189
102
168
76
134
102
67
185
98
60
77
53
130
148
157
119
138
74
59
162
117
171
57
59
69
116
94
153
210
149
113
104
86
93
94
93
116
151
166
51
93
139
72
106
114
65
128
165
127
100
126
106
149
126
134
96
106
170
56
103
186
186
126
76
127
62
87
74
100
82
95
135
116
168
100
105
134
68
53
98
57
95
103
87
150
141
83
124
47
88
96
141
172
192
111
77
154
132
73
93
81
107
48
101
101
115
153
94
89
93
105
103
48
78
90
74
85
89
98
98
134
159
147
36
112
91
59
196
63
134
70
77
82
98
262
43
136
66
163
168
134
88
124
83
115
111
122
67
79
133
136
76
95
124
82
237
139
129
104
82
190
96
120
115
52
86
110
140
219
95
153
209
94
71
69
103
70
72
129
142
73
126
137
91
73
97
154
100
175
126
84
222
64
93
95
205
122
108
124
160
98
81
160
132
148
59
109
50
124
91
96
131
97
107
96
137
126
113
127
117
83
95
94
91
89
73
108
144
65
108
100
137
113
92
108
73
131
51
117
108
74
165
107
131
96
68
154
91
120
69
186
146
106
92
79
72
95
124
133
107
99
109
56
80
86
61
141
64
53
150
85
83
197
74
79
81
82
73
91
80
101
107
48
157
129
91
143
125
49
117
115
130
194
125
157
112
145
60
97
24
67
125
126
75
94
54
117
391
143
81
48
111
77
144
77
149
86
87
137
180
83
109
119
100
165
161
113
77
62
99
114
118
61
123
168
70
146
54
81
110
118
97
115
84
87
70
236
180
99
62
78
174
112
113
92
200
238
193
195
69
97
93
136
96
46
168
190
75
98
134
81
155
105
80
209
85
56
76
77
99
52
100
71
126
88
145
89
77
180
190
89
122
142
119
123
79
104
50
81
144
126
115
115
121
179
111
120
121
102
97
131
177
171
89
40
91
100
104
106
100
51
141
85
181
118
123
56
111
126
93
87
167
77
101
92
155
156
101
99
97
131
180
31
78
124
98
143
91
72
106
103
144
89
134
117
63
126
115
80
77
114
70
167
62
119
103
65
113
50
121
95
87
90
106
91
76
114
37
113
157
66
130
123
84
128
112
127
104
151
248
122
135
42
94
151
91
96
124
76
127
48
103
72
133
112
112
104
110
82
87
111
56
116
116
124
62
121
53
130
80
105
55
106
79
80
103
100
73
75
123
71
110
139
95
120
84
148
72
82
94
188
109
116
162
73
50
117
87
126
100
92
233
159
118
112
127
113
59
41
183
183
135
89
69
101
104
104
143
121
167
138
69
188
102
86
90
142
71
146
101
105
82
44
126
134
44
124
97
125
99
63
66
75
131
78
111
106
152
144
129
80
319
72
81
81
210
67
119
129
77
75
78
150
114
116
121
104
111
90
67
92
65
76
64
106
161
114
107
153
92
87
140
67
86
76
125
87
89
96
86
61
126
118
67
76
140
71
105
137
115
55
158
178
47
109
130
132
178
121
73
122
69
163
48
164
78
67
125
151
121
114
52
32
150
119
104
45
81
77
71
75
93
98
114
78
131
148
88
54
135
111
61
86
159
122
71
55
77
61
101
176
118
116
109
128
92
194
105
118
81
112
155
131
62
51
73
134
91
82
102
71
144
146
43
76
105
118
47
160
122
139
82
186
48
103
89
60
41
106
135
138
142
136
112
182
69
115
104
130
104
63
126
61
170
141
175
85
157
55
70
207
159
153
72
99
125
117
85
81
31
74
115
138
90
70
87
206
109
85
102
103
74
77
94
114
122
117
100
145
78
70
100
67
131
204
66
84
68
181
137
77
76
91
56
158
185
166
61
112
175
211
129
130
90
138
155
101
159
62
97
85
127
115
158
74
159
78
179
102
59
200
134
112
108
62
64
149
112
91
141
97
145
119
102
115
153
109
78
126
105
113
105
101
107
69
79
115
90
81
73
136
122
143
177
121
153
151
165
111
110
65
130
92
67
85
160
157
102
161
39
173
120
111
107
244
123
56
131
201
76
134
87
122
57
120
106
76
120
176
100
177
86
135
71
71
120
115
61
89
112
99
75
132
123
94
107
53
167
86
73
79
86
62
167
96
47
123
138
91
156
79
127
132
238
161
57
151
168
179
172
176
120
52
131
94
70
102
132
37
152
63
92
85
69
123
64
124
124
117
35
105
67
122
111
125
155
93
78
118
74
77
114
67
84
155
73
167
127
111
107
175
47
86
102
169
64
74
118
142
135
172
68
151
116
38
95
102
93
111
112
85
122
103
158
70
79
221
154
108
123
136
83
93
76
168
98
158
92
61
86
133
96
135
143
133
62
124
120
125
89
160
101
105
76
118
121
85
107
144
153
67
41
110
86
110
153
67
78
43
174
113
128
61
53
71
91
143
105
83
127
66
185
69
67
136
110
138
107
67
109
139
85
80
39
74
99
110
96
48
128
100
125
158
99
144
82
102
97
94
95
130
67
132
84
34
75
90
124
101
76
123
132
111
54
144
57
65
127
54
163
68
72
108
94
99
76
79
95
100
123
124
89
121
156
82
101
148
72
71
111
152
95
118
99
140
60
67
98
140
147
126
234
121
114
91
125
84
97
76
112
94
124
153
164
115
39
96
101
104
114
110
88
52
121
65
90
64
53
134
85
132
190
155
96
59
135
70
173
91
116
64
95
45
156
129
111
78
116
55
65
121
84
67
111
44
132
113
93
93
102
103
119
127
108
72
86
45
76
183
50
82
147
185
112
100
121
62
121
120
108
82
101
114
159
108
153
115
81
100
156
73
148
132
112
107
85
93
82
137
130
62
127
83
101
114
96
125
74
98
86
128
95
109
92
85
68
112
60
120
60
133
102
131
48
134
158
78
102
94
39
60
138
91
104
137
114
75
139
106
76
114
97
141
208
103
82
114
53
68
96
99
105
87
84
91
90
83
82
163
65
130
64
177
103
116
69
80
106
132
63
127
65
81
170
102
52
56
98
129
116
43
71
80
92
144
160
110
119
107
71
126
109
50
94
164
99
78
129
141
62
105
92
46
151
184
93
94
49
121
97
84
132
48
87
48
114
118
95
117
59
122
78
91
79
131
45
54
157
146
117
139
127
196
68
146
97
123
126
94
106
131
51
70
113
115
126
136
59
122
96
44
77
129
77
61
54
191
81
85
133
147
131
131
168
111
80
282
135
128
65
58
115
48
195
133
132
54
133
102
115
129
223
92
160
100
68
201
64
200
55
179
136
47
49
52
79
134
78
102
121
131
95
81
167
55
97
106
118
104
103
138
123
103
114
184
107
64
103
121
72
116
53
202
135
43
68
148
114
133
97
125
116
78
100
62
115
192
110
80
112
113
92
75
122
95
99
60
224
127
67
46
101
53
108
170
107
170
79
75
104
124
76
66
105
96
191
141
102
80
102
87
141
200
74
109
58
139
141
52
97
126
134
187
81
100
67
86
70
123
103
60
112
144
68
74
172
109
132
66
99
192
157
76
87
88
78
118
117
153
100
85
66
135
116
129
110
150
61
105
105
85
43
109
121
82
108
110
69
114
111
93
101
113
90
108
90
122
171
90
116
53
117
143
156
143
94
110
130
65
52
137
59
146
35
141
108
120
111
104
65
141
153
154
108
81
84
140
70
102
55
152
120
81
94
119
171
98
154
168
62
131
147
77
207
82
94
141
56
87
136
175
159
102
164
84
147
66
68
133
105
149
96
121
176
83
121
121
134
38
75
109
96
149
61
145
31
53
105
156
55
137
76
87
80
77
55
93
108
67
98
103
84
192
98
58
86
61
132
91
102
65
157
89
92
101
66
180
121
129
112
131
57
70
76
121
120
79
113
93
179
149
122
155
145
107
130
76
36
113
125
65
149
77
100
109
180
192
101
92
118
142
92
86
91
146
129
115
81
166
126
155
139
74
126
68
55
111
96
170
96
202
95
102
187
195
114
87
77
156
97
101
104
163
63
44
138
169
142
77
39
88
85
95
64
67
82
99
79
47
66
110
98
88
140
78
152
106
121
110
146
122
68
90
90
113
146
98
133
97
233
126
172
82
120
150
101
77
133
93
134
113
250
83
82
116
101
161
86
117
98
74
119
70
151
132
212
168
138
72
99
107
94
77
118
101
72
94
82
118
120
109
86
136
116
107
150
151
110
114
137
58
129
176
178
145
84
112
80
142
117
73
94
100
99
157
63
78
62
123
113
89
145
70
91
94
147
114
105
106
118
145
121
163
106
149
97
106
93
87
121
116
143
165
114
119
169
92
96
137
78
126
104
107
93
98
88
70
105
104
61
123
115
92
71
80
88
134
46
64
98
125
119
82
130
81
78
75
104
140
96
73
92
89
83
112
114
228
100
98
128
36
103
123
110
176
77
160
102
142
81
110
149
91
122
59
99
93
75
187
98
104
94
46
186
61
127
124
60
94
130
67
102
115
83
129
80
137
143
108
112
116
77
174
108
41
159
116
50
116
70
130
87
91
87
75
86
100
69
107
125
65
69
109
138
98
122
80
96
39
102
51
73
111
165
84
110
65
72
94
64
116
112
136
33
102
121
100
75
52
209
125
108
165
41
112
131
78
69
155
141
60
77
71
69
59
109
197
138
169
111
98
120
30
103
79
117
99
104
128
196
35
116
91
93
103
121
209
81
92
117
86
103
80
60
54
136
93
61
103
104
115
156
87
100
91
144
95
116
116
109
203
47
98
151
88
76
111
76
83
124
44
156
103
128
111
152
66
97
101
69
144
54
59
63
163
92
94
85
72
72
166
99
173
100
49
156
73
78
56
128
55
124
95
177
93
110
156
84
81
111
103
85
105
78
130
172
116
80
48
82
122
124
89
122
80
84
167
65
133
135
115
119
110
110
61
120
102
121
81
48
105
123
121
95
90
138
142
81
60
99
127
69
106
88
100
71
57
42
90
129
59
73
109
121
68
185
110
155
162
78
70
120
71
116
90
94
69
58
60
115
109
101
129
84
93
101
82
101
80
137
61
40
129
91
70
72
105
89
76
126
82
134
162
67
50
76
91
47
61
91
119
104
133
115
58
112
78
41
154
122
93
88
174
148
133
75
135
145
75
55
91
84
73
97
112
121
106
140
97
111
57
136
79
58
59
48
144
107
93
91
81
146
64
51
40
44
53
148
82
141
84
149
90
176
78
65
142
59
172
119
102
100
97
126
159
83
108
91
157
152
143
208
61
186
58
50
194
106
112
120
130
185
112
100
106
120
129
112
87
53
83
143
118
120
103
116
88
85
110
128
148
81
81
121
127
57
82
76
134
81
47
76
118
84
76
165
129
96
59
116
208
57
99
86
105
282
82
120
64
119
110
52
61
79
83
58
69
106
90
119
58
150
111
76
94
119
150
72
127
96
125
129
84
93
133
207
62
111
68
105
141
164
158
94
95
115
51
133
34
36
102
42
44
140
93
123
149
126
161
106
81
119
113
108
75
81
73
104
45
72
90
115
125
126
98
178
53
121
150
100
64
193
92
151
74
122
127
48
92
106
139
90
144
136
87
125
91
57
72
77
121
80
138
120
88
89
108
105
91
92
105
69
56
74
67
102
95
123
122
98
127
121
164
58
109
110
90
101
58
123
163
142
144
109
170
113
78
72
77
124
107
114
141
112
133
102
108
88
67
70
89
124
56
135
152
57
73
126
169
75
100
161
101
98
124
62
67
46
125
137
170
63
79
92
105
97
177
68
173
65
114
88
178
119
131
147
128
259
170
146
102
137
188
99
108
65
88
95
90
154
111
95
134
109
124
118
79
85
45
134
102
81
122
122
70
151
114
98
113
175
62
60
44
123
92
198
146
66
105
113
178
118
105
79
54
64
127
128
130
142
87
71
78
62
249
55
96
91
59
85
108
73
113
92
126
47
65
153
200
88
55
132
111
80
114
111
60
93
151
122
97
120
199
121
101
101
88
86
131
111
96
129
95
104
164
88
174
119
60
126
117
87
93
66
105
80
93
141
69
152
69
36
156
83
161
50
108
141
152
94
100
131
67
136
59
105
96
83
69
84
145
116
93
90
88
85
91
100
106
74
62
93
109
153
158
182
174
137
167
100
70
80
82
85
87
82
145
85
119
105
122
80
76
110
120
75
91
89
60
126
136
57
104
115
98
119
72
204
97
81
73
80
154
87
118
196
126
109
84
90
103
133
88
75
54
53
75
144
33
78
56
104
87
84
103
184
78
113
128
61
90
54
115
175
58
65
111
109
175
102
81
116
162
81
122
86
79
207
185
95
104
61
146
133
79
112
148
84
100
158
99
104
160
94
154
108
127
71
73
123
98
135
72
59
59
117
139
126
116
69
134
105
124
90
118
110
35
79
110
35
189
47
115
85
119
90
110
136
113
62
136
93
130
135
126
108
78
144
129
153
62
71
59
96
162
117
77
95
86
98
91
178
150
85
137
64
145
88
66
86
83
97
55
74
88
167
128
115
119
98
65
92
45
126
112
75
94
131
99
56
177
97
66
137
83
80
85
148
63
130
92
85
80
98
138
123
87
115
47
118
124
66
82
131
96
151
190
180
127
157
116
37
73
130
55
72
169
127
105
112
125
94
93
71
113
110
132
131
156
144
122
116
99
70
137
121
101
130
143
60
109
94
85
95
112
135
89
112
106
103
61
84
138
58
125
66
117
127
151
156
89
125
157
75
72
117
126
134
147
105
82
148
36
195
105
69
122
97
129
83
60
95
48
112
96
91
105
101
94
165
111
90
87
107
105
127
66
91
40
101
89
70
197
160
74
136
220
162
107
128
129
168
161
144
124
180
55
111
96
146
96
35
140
80
101
48
98
89
203
90
156
80
94
147
66
55
161
103
190
98
58
128
102
97
72
84
105
58
106
96
58
169
118
102
136
122
112
117
120
45
152
102
182
139
131
115
227
105
88
92
163
49
123
149
96
101
74
122
70
192
81
101
157
139
81
82
23
123
81
98
145
114
112
92
94
84
132
121
80
89
132
120
145
177
150
108
110
91
105
73
99
224
193
103
147
104
130
81
142
68
86
100
109
88
151
34
67
102
122
110
136
129
64
110
40
114
66
57
177
87
125
80
110
82
104
104
65
140
107
86
92
162
103
127
69
96
107
90
130
52
94
101
115
134
123
51
73
104
90
124
82
103
100
215
63
149
78
111
68
117
104
115
138
110
152
87
172
66
130
100
88
93
128
69
89
117
140
88
82
74
196
122
96
95
98
75
100
117
70
76
89
100
125
317
108
124
140
100
63
118
111
140
130
68
125
119
128
130
91
108
64
58
113
62
74
63
128
102
139
85
63
81
128
139
68
94
113
108
157
46
147
148
116
100
102
53
49
70
145
125
106
137
100
151
89
154
107
81
51
118
93
177
186
102
110
86
53
119
93
105
184
115
37
79
118
65
154
139
75
134
179
103
74
97
141
127
85
114
133
177
167
90
178
103
114
189
131
117
72
79
76
90
104
88
150
112
121
101
126
117
194
142
69
81
120
73
105
84
101
44
124
50
53
95
92
123
165
107
157
90
83
125
79
74
101
66
103
153
83
116
76
136
120
192
174
109
96
119
92
81
125
108
178
140
111
87
79
113
142
98
39
107
123
150
225
140
91
52
145
49
133
168
58
115
93
124
109
93
94
87
91
70
114
83
108
103
121
48
124
33
85
64
56
48
75
134
100
121
85
94
118
103
110
114
120
165
146
139
86
131
123
120
64
145
109
114
91
69
101
126
114
99
81
187
112
78
105
181
58
77
116
153
83
113
104
94
88
139
100
95
74
68
139
142
57
120
74
51
38
199
108
145
112
140
42
16
83
47
113
85
91
117
121
122
106
93
171
132
183
116
111
55
93
86
117
113
57
120
93
129
114
57
123
180
73
102
132
54
66
164
101
64
104
95
137
138
138
101
96
177
128
171
149
58
129
128
132
122
171
39
86
152
46
137
131
44
90
147
46
66
92
71
71
88
114
62
60
199
122
143
64
95
82
67
103
77
112
128
95
153
87
59
64
199
85
94
120
99
168
28
92
130
83
68
131
127
88
135
126
78
73
126
76
79
121
71
102
121
83
78
127
86
147
59
132
101
111
113
119
78
114
167
83
154
82
59
101
106
140
47
71
115
106
46
101
178
122
104
62
129
145
81
68
131
114
62
121
98
173
63
132
131
148
108
77
66
104
137
52
151
96
73
59
63
58
33
106
85
81
64
86
72
113
47
99
116
128
111
103
89
156
160
208
85
108
81
113
87
131
113
113
70
112
65
95
73
105
132
146
60
85
59
128
148
108
87
65
152
122
94
215
125
58
65
62
141
66
136
116
96
103
104
138
120
99
73
77
73
76
105
81
123
116
92
154
117
60
97
99
184
159
81
120
97
128
160
118
114
62
127
84
158
74
96
98
113
71
139
169
155
65
94
118
52
92
70
80
96
118
113
71
128
85
106
84
92
127
48
149
115
107
98
106
90
73
177
94
106
93
92
99
134
98
130
148
90
133
59
103
58
103
41
160
125
70
112
167
94
137
84
150
162
97
93
156
103
78
96
229
148
49
116
99
129
134
119
122
202
90
65
106
103
83
111
116
91
132
97
142
85
76
132
62
143
154
168
124
132
70
124
118
97
133
86
70
83
55
85
98
106
148
165
81
159
105
92
69
75
65
121
118
116
137
114
173
104
124
141
80
119
92
170
103
81
117
153
56
71
144
55
135
93
79
119
55
49
143
88
98
62
117
53
159
96
57
41
74
121
164
108
65
57
127
85
88
75
84
118
71
73
52
97
138
147
47
70
82
94
144
119
85
127
138
120
87
70
121
78
103
71
138
132
90
150
117
102
89
83
92
122
165
94
79
83
83
80
101
92
82
63
70
162
92
75
91
83
185
130
75
132
164
103
109
148
127
102
94
140
98
145
85
59
135
65
63
70
170
179
99
80
67
78
159
120
149
125
143
121
111
82
83
131
111
63
59
95
138
79
131
97
86
53
44
147
113
141
146
54
95
64
107
72
62
75
92
111
129
97
72
89
98
126
77
52
161
151
73
89
107
80
86
56
74
121
141
122
98
148
163
105
137
116
116
137
84
130
93
140
93
94
101
62
133
124
71
74
131
125
88
107
129
80
71
75
106
114
110
175
138
88
72
152
59
99
115
63
79
126
93
62
102
159
85
110
113
131
107
63
171
156
82
124
78
115
139
53
145
79
151
51
82
96
105
124
173
132
92
194
186
106
105
72
114
66
88
147
129
130
89
60
68
62
161
92
78
102
111
157
105
80
90
103
160
106
132
70
128
92
67
72
126
118
125
88
71
126
121
127
78
62
69
62
81
75
95
145
57
122
103
78
49
104
114
140
104
96
141
88
68
110
70
96
180
87
66
139
105
66
108
124
117
131
124
95
72
129
99
82
128
99
60
125
147
115
102
117
66
83
125
80
94
113
87
132
66
77
100
76
161
84
111
81
57
109
100
102
117
142
107
74
153
140
121
90
111
78
134
114
109
124
69
125
108
139
78
126
157
103
81
99
50
124
89
122
85
122
143
84
135
91
167
82
91
87
76
70
105
84
122
70
61
171
134
79
132
114
116
180
92
87
143
114
157
87
120
112
150
103
42
41
170
108
72
158
67
204
133
164
128
87
46
109
109
77
96
83
70
86
171
124
115
122
138
76
91
143
35
72
131
128
63
158
89
38
84
86
58
68
113
157
113
137
163
119
133
58
77
86
103
74
110
79
54
50
121
74
128
138
240
78
118
59
114
76
146
122
258
77
125
130
77
82
126
167
97
82
129
132
123
34
207
100
112
0
89
73
95
186
144
108
85
150
114
80
137
99
113
109
243
104
64
179
67
116
125
133
99
171
96
120
72
80
159
135
84
86
136
81
81
119
52
113
165
86
117
113
136
114
135
73
85
87
106
143
95
79
111
143
47
116
110
102
104
72
127
170
103
80
120
159
112
95
91
60
121
114
79
118
111
126
51
85
138
92
70
130
112
74
100
118
128
198
72
59
147
103
65
125
70
73
162
110
104
156
129
211
89
90
121
111
175
136
120
96
84
146
115
91
82
108
75
129
119
72
85
151
92
177
113
102
122
129
95
119
95
63
162
75
100
162
66
88
83
117
96
82
85
69
144
86
118
112
57
95
124
82
79
69
51
132
90
81
117
64
77
78
73
112
51
148
69
120
78
103
112
160
114
36
106
96
164
137
167
84
112
135
98
106
93
94
133
109
65
114
74
109
71
45
148
102
90
109
114
123
139
89
75
128
130
70
98
125
109
90
60
43
85
86
170
125
103
104
128
104
98
91
208
85
74
83
103
104
132
212
148
90
115
67
90
172
58
79
151
61
120
115
186
75
59
133
102
83
55
151
88
58
103
148
62
56
116
130
129
142
89
101
87
68
123
95
113
89
96
125
101
54
130
62
72
95
82
97
99
67
107
92
115
162
115
75
122
186
70
94
179
188
68
115
173
58
53
78
78
62
129
105
105
89
145
98
98
129
98
94
121
190
193
61
129
113
169
65
47
93
121
136
57
79
61
128
100
145
61
83
53
94
140
55
105
154
110
72
128
48
78
51
40
78
59
92
103
152
147
98
126
107
117
77
96
126
107
95
95
167
149
57
122
86
157
176
87
62
49
129
126
77
45
113
149
128
67
77
101
113
151
55
118
158
129
128
125
94
81
160
86
64
195
75
128
98
62
161
136
92
68
250
114
72
106
63
42
83
68
107
134
102
140
130
206
144
123
94
108
123
90
55
148
156
63
143
117
101
101
152
196
38
102
132
160
95
143
93
70
83
75
140
148
122
71
83
60
72
237
79
82
170
73
125
110
117
40
70
76
98
97
99
199
100
90
48
111
73
75
148
140
122
96
101
102
104
114
76
69
131
181
74
95
192
141
75
73
77
121
112
141
97
92
105
67
68
137
168
127
130
82
140
77
169
49
91
80
133
123
122
90
93
135
80
90
73
97
102
64
109
55
79
181
127
83
119
93
61
103
126
88
76
124
74
101
146
93
73
56
117
83
155
84
100
71
67
131
42
67
65
121
88
115
162
56
60
44
88
111
68
134
52
70
106
94
84
114
65
89
96
73
96
117
62
99
91
109
128
141
122
70
116
93
47
100
73
125
165
79
104
72
158
94
78
103
94
95
99
89
81
154
49
140
87
46
171
67
100
97
152
82
135
128
53
163
124
154
174
128
145
127
129
156
120
125
257
73
158
168
98
90
98
111
151
99
125
81
78
82
118
90
94
60
98
171
63
108
92
110
117
76
107
234
143
133
133
106
100
161
95
68
161
122
72
62
105
77
139
85
71
120
80
118
104
70
91
128
91
131
50
68
125
127
79
121
109
139
50
87
116
165
71
83
38
106
77
92
109
79
89
86
112
90
126
77
184
81
94
161
89
127
133
145
97
163
110
215
57
103
138
53
140
104
63
126
129
83
135
50
50
75
66
115
88
36
103
78
82
92
104
67
115
77
72
149
50
134
112
105
77
142
104
70
43
130
135
134
82
124
116
53
40
120
88
79
161
65
50
58
80
134
17
111
144
109
96
89
156
75
99
104
117
109
86
66
134
85
76
101
90
152
91
77
80
110
99
115
74
90
158
124
103
30
63
157
69
121
118
155
149
137
144
129
149
95
81
69
147
114
60
78
75
66
88
151
156
107
117
125
33
94
98
138
136
69
127
63
123
102
88
65
73
56
83
149
139
94
70
128
66
106
115
95
86
41
106
59
128
117
77
72
119
67
110
116
161
62
73
114
88
149
119
82
108
140
120
134
63
98
108
119
65
119
116
42
90
159
81
88
136
101
173
110
153
80
144
83
103
120
70
140
110
134
98
56
109
133
58
119
109
127
100
147
159
72
66
69
102
35
95
171
119
110
95
75
136
182
199
120
102
76
120
123
109
94
73
142
129
81
118
237
111
95
40
101
85
45
68
125
84
181
165
105
107
181
122
136
71
97
155
171
125
122
86
141
175
78
125
124
168
109
65
210
106
96
189
145
94
151
82
157
69
96
133
172
157
78
151
148
80
117
117
58
79
109
63
160
103
68
122
88
102
69
107
116
163
132
115
130
89
71
89
72
117
90
70
130
115
87
177
110
100
79
55
151
140
142
93
133
130
93
73
112
88
123
128
83
71
84
96
153
128
96
59
64
133
130
54
68
117
110
42
101
121
111
62
85
89
131
205
178
133
108
149
97
140
96
101
119
188
130
52
126
51
136
82
120
114
152
83
102
56
104
106
95
70
33
94
110
172
93
91
133
133
33
118
98
77
147
121
116
136
101
88
76
108
52
75
161
135
103
88
80
61
131
113
111
99
84
100
106
34
35
107
113
76
100
74
168
61
100
211
126
123
126
79
175
149
73
101
78
42
88
54
149
98
109
131
103
103
76
100
109
80
134
102
121
83
93
49
80
98
115
185
209
87
79
206
46
126
160
139
78
35
148
74
47
109
134
129
136
171
56
91
39
62
135
115
67
77
96
91
82
51
67
73
71
113
88
115
106
133
109
110
192
26
117
88
79
111
66
68
114
128
80
115
85
118
77
85
114
96
90
106
120
122
119
128
109
96
100
97
122
123
136
63
151
55
123
97
95
71
102
91
72
74
93
56
45
85
121
171
77
109
142
82
119
84
126
81
59
146
59
115
41
170
71
134
155
53
91
108
137
144
82
138
42
72
99
98
109
114
135
99
105
72
147
205
114
88
119
83
196
192
150
81
90
192
162
109
54
77
143
122
65
85
145
80
118
65
171
180
141
88
112
109
89
78
194
74
127
102
211
146
86
56
192
54
63
147
77
91
120
88
102
81
65
62
124
63
157
160
89
117
172
163
77
77
100
131
115
97
104
107
92
100
75
155
74
145
105
89
108
42
155
62
69
141
84
138
155
63
107
122
98
91
98
84
47
154
79
146
61
138
132
161
143
76
146
146
88
151
116
202
83
75
89
123
79
162
30
72
108
109
143
105
177
124
66
157
117
111
148
112
92
86
86
138
71
122
130
85
109
54
62
73
113
153
145
70
105
119
124
166
125
111
56
116
128
58
97
238
97
61
161
116
153
94
164
113
108
88
124
100
87
193
93
150
110
73
156
91
117
115
75
96
111
80
123
102
96
87
85
119
49
84
103
48
134
172
156
129
51
229
113
116
84
132
96
74
81
145
128
133
83
144
105
115
169
159
76
160
132
77
99
104
123
64
123
93
137
74
67
65
168
114
88
136
145
214
144
80
134
75
114
121
79
95
90
126
72
115
160
109
130
50
187
109
131
185
148
173
76
84
167
154
93
161
147
134
121
88
169
44
69
79
40
45
69
164
106
129
171
62
92
26
126
127
107
95
70
137
92
109
85
73
94
71
94
86
81
144
142
144
74
94
52
127
130
211
92
91
86
68
50
122
94
123
145
129
67
93
143
63
73
91
158
48
68
98
115
96
72
85
90
117
182
54
126
72
108
90
61
51
83
66
200
102
62
160
51
108
95
109
134
73
190
86
154
36
116
104
64
118
99
107
73
54
113
82
118
75
80
101
58
90
87
164
136
165
137
100
107
104
94
92
81
103
58
57
90
44
92
73
123
178
93
59
69
50
88
145
210
70
139
108
80
132
190
79
97
49
74
86
63
159
136
75
148
117
168
123
114
155
91
92
74
199
124
153
91
193
126
153
75
131
91
106
159
119
56
220
111
115
87
96
51
177
106
188
154
71
101
103
127
171
50
126
63
170
86
115
190
86
146
143
101
114
120
94
125
113
38
111
28
143
116
128
176
139
160
69
150
116
115
100
83
105
73
62
126
35
95
53
94
73
83
61
80
124
86
136
166
134
110
103
89
155
109
75
86
141
89
203
88
128
131
105
96
124
70
127
70
160
163
116
54
85
47
139
127
89
236
101
75
93
134
147
106
86
80
64
60
97
90
26
88
89
120
146
73
75
144
164
58
76
98
85
61
65
109
91
66
213
162
56
170
108
60
131
96
105
65
76
117
68
69
159
143
74
156
107
168
71
79
63
145
98
96
48
119
54
70
53
78
101
157
90
69
96
119
136
159
87
137
176
68
121
117
137
41
74
102
77
118
122
118
71
82
71
71
39
91
109
133
155
91
131
108
112
72
117
102
53
100
123
117
50
111
77
105
130
109
131
156
179
73
181
84
92
50
106
110
117
124
122
140
122
93
153
138
121
83
53
86
94
65
85
126
63
47
132
126
154
166
165
134
126
127
114
61
114
114
101
118
109
76
83
133
222
84
111
93
140
163
100
185
94
108
104
105
137
107
146
140
105
78
95
62
91
128
123
183
129
59
207
76
228
46
108
75
119
64
105
30
78
153
127
71
124
123
113
95
34
62
82
78
124
164
88
150
93
107
133
88
77
128
110
48
58
117
105
112
141
88
70
89
121
67
129
107
54
144
43
118
150
133
148
105
78
90
152
178
82
152
93
152
126
148
113
67
172
78
82
133
127
77
123
94
115
71
152
109
112
79
125
135
49
125
150
151
104
133
68
64
171
148
92
96
79
127
95
38
59
64
57
152
69
125
94
92
79
87
93
105
130
168
115
118
152
99
130
98
103
144
119
95
209
71
119
57
45
87
124
95
106
76
127
134
58
87
151
43
142
54
94
50
51
95
131
89
90
113
146
36
99
69
95
103
66
54
73
158
62
140
87
106
92
96
118
105
127
106
108
114
124
58
75
60
122
81
114
198
84
144
88
125
45
201
74
73
95
111
77
82
78
97
75
121
57
98
132
112
96
90
72
145
93
126
61
102
145
60
184
74
138
60
140
97
83
73
105
91
67
71
115
103
145
83
142
120
76
82
94
139
150
87
71
67
98
124
94
111
118
111
64
80
97
38
77
128
75
113
93
53
141
167
68
203
76
80
135
93
104
80
141
78
137
123
150
65
61
59
84
67
93
135
153
59
76
132
78
68
86
198
90
83
129
112
69
113
141
76
38
87
119
76
85
156
97
137
96
104
98
132
117
81
152
164
134
13
113
98
67
144
126
55
46
118
114
96
92
83
146
104
42
153
71
41
62
74
74
112
117
127
110
49
179
96
71
111
102
41
113
67
48
152
71
104
142
144
81
86
242
72
144
63
91
90
86
157
52
112
87
63
88
44
92
124
133
50
90
77
98
90
79
53
127
73
187
106
120
96
61
122
136
113
52
41
76
48
89
86
170
132
83
117
86
146
114
174
82
46
85
115
95
129
66
65
69
115
79
118
96
45
154
92
39
127
200
82
102
116
88
99
113
158
164
71
66
153
196
131
84
59
127
56
118
121
103
88
144
89
83
94
40
87
100
118
75
93
210
107
163
131
86
102
108
63
73
106
224
111
136
104
108
141
75
92
69
38
88
88
121
133
150
80
206
164
57
130
72
52
179
86
149
109
59
121
78
67
66
95
85
64
102
114
71
116
71
118
112
101
77
69
126
238
137
53
75
110
122
140
111
112
81
115
101
73
60
96
88
48
70
114
163
78
102
164
202
163
77
83
170
64
144
89
99
110
57
122
135
176
68
76
94
99
75
76
99
138
140
151
133
173
104
96
127
110
74
114
142
219
88
149
68
116
124
144
123
61
68
87
169
128
99
79
143
64
134
101
166
136
80
132
86
106
110
88
33
147
48
142
40
156
86
54
59
98
80
119
147
42
108
126
178
127
77
34
84
87
108
109
79
43
86
144
95
108
99
102
155
154
62
128
88
105
112
79
102
124
119
89
54
88
66
134
41
84
131
132
84
66
97
145
75
81
217
130
91
78
71
97
98
108
196
99
119
92
74
79
132
199
65
145
125
134
127
127
142
133
116
109
166
86
172
172
62
160
117
61
107
62
75
82
100
93
73
126
89
109
189
99
195
83
74
94
108
73
128
83
150
82
100
109
93
132
89
98
55
171
124
72
134
56
119
55
68
102
127
145
62
88
139
150
105
80
108
68
158
110
33
35
120
55
197
133
98
130
70
101
168
202
51
95
52
67
109
142
31
123
66
114
141
61
106
77
92
68
52
106
47
95
126
60
84
84
71
159
86
78
190
171
52
58
159
67
76
99
119
148
188
119
124
61
181
105
93
175
78
32
101
90
98
89
90
106
125
74
65
90
104
119
117
93
120
117
96
137
68
174
41
91
143
58
92
106
113
75
155
127
105
120
76
90
81
144
81
110
144
88
93
97
147
99
102
101
123
102
111
63
90
101
136
188
83
84
120
126
84
152
93
46
112
102
104
107
104
109
94
125
72
87
77
178
109
51
99
77
56
51
101
141
112
172
172
58
50
183
161
38
94
112
113
131
115
146
87
85
108
145
164
76
65
128
209
159
128
111
70
74
78
83
95
59
164
70
145
134
71
87
142
94
137
120
135
34
177
95
135
157
91
140
81
91
101
103
96
45
107
131
61
100
137
116
118
152
54
38
109
139
68
101
58
72
92
62
97
113
74
69
55
200
84
100
32
90
142
74
125
133
119
145
59
76
60
60
130
64
122
125
45
35
84
100
146
103
141
86
130
101
76
152
144
109
155
117
205
61
175
91
129
124
113
89
115
154
77
90
173
71
119
93
49
128
187
35
76
143
144
82
125
147
81
92
172
62
65
75
97
44
71
129
84
116
113
53
61
71
181
146
125
111
168
178
57
68
42
70
48
53
115
116
154
63
71
87
76
189
96
166
114
95
131
46
101
209
41
127
105
48
94
50
97
144
70
117
141
105
89
106
169
91
121
69
111
79
66
118
78
103
88
113
176
149
70
69
67
95
103
130
141
105
162
94
106
61
123
103
118
100
180
97
82
53
110
91
104
45
187
85
133
128
155
93
104
41
79
85
158
106
174
133
129
172
110
131
102
108
80
147
137
84
156
75
125
134
83
235
146
63
89
82
114
65
100
55
75
85
151
156
130
47
155
150
101
128
86
75
171
107
132
123
54
76
52
161
138
167
108
162
86
107
109
129
89
156
75
97
164
95
114
67
100
122
72
86
59
96
144
75
80
52
132
40
59
103
109
92
79
76
78
66
116
85
93
129
180
106
113
139
202
89
113
72
134
87
99
66
57
42
72
90
111
154
100
76
78
66
139
56
90
113
58
86
93
97
90
59
77
47
45
100
157
129
118
142
97
95
75
130
107
136
78
102
74
56
128
75
124
111
60
88
76
118
126
97
114
198
98
99
110
137
135
98
110
91
83
167
70
188
153
89
126
55
135
90
87
79
162
103
115
74
49
150
61
118
165
91
131
88
106
82
60
69
87
128
95
72
126
67
120
196
95
57
109
128
138
102
85
166
69
61
100
102
83
54
86
132
51
94
139
133
134
191
97
116
98
106
59
90
82
62
93
92
106
77
71
102
94
123
151
105
140
77
155
109
71
129
145
92
148
75
72
133
174
121
121
57
58
115
161
141
124
125
77
72
68
132
99
84
134
128
116
129
182
88
161
128
132
72
80
83
156
104
106
111
93
75
82
57
119
142
97
87
93
80
112
55
171
118
222
122
92
144
83
49
64
117
46
94
58
72
130
54
166
143
152
48
108
132
47
66
128
72
115
63
149
68
85
87
90
204
75
134
138
67
186
140
175
113
111
122
86
59
94
99
120
97
109
140
96
151
95
73
98
171
50
116
93
128
155
179
93
108
88
61
63
104
68
87
84
140
74
167
54
50
181
102
135
119
114
129
115
81
100
78
67
114
212
135
72
41
62
134
139
61
123
50
145
75
72
101
96
65
82
138
189
80
53
68
104
154
79
168
148
110
93
118
138
126
134
134
97
90
58
140
132
52
73
97
113
70
143
132
87
43
92
45
148
122
83
83
127
106
64
99
112
88
148
132
94
99
36
102
155
53
98
100
139
165
103
116
203
52
109
102
165
130
89
39
159
185
80
112
75
197
128
94
147
79
72
114
152
55
155
78
136
121
124
88
42
149
69
162
98
87
28
172
143
134
57
96
170
105
113
101
75
84
112
86
94
31
102
115
129
134
135
114
74
165
80
76
154
60
108
149
98
79
135
80
157
116
129
86
96
92
89
79
85
96
46
68
132
114
67
164
72
120
148
236
64
75
54
57
49
97
98
88
107
79
76
130
65
151
116
142
138
91
69
75
55
73
130
100
65
128
66
61
113
150
63
137
93
104
181
175
207
110
146
128
129
111
88
52
131
116
135
121
106
123
193
111
172
153
145
140
66
106
85
102
82
104
58
49
135
103
64
117
102
112
117
125
92
80
93
63
133
62
100
76
87
62
88
93
88
65
95
29
103
118
107
108
170
141
68
132
186
75
76
86
76
89
143
153
77
94
70
114
107
62
153
99
73
92
89
78
66
54
144
87
89
100
106
186
249
180
120
110
123
118
51
163
98
128
85
172
87
67
103
111
159
84
89
113
76
127
99
95
111
138
137
99
85
133
133
110
102
159
78
85
140
107
125
133
67
132
82
132
85
97
139
63
65
53
197
68
179
74
123
142
101
124
142
182
226
94
113
65
156
182
52
114
93
85
124
129
159
109
137
110
131
132
40
163
128
98
41
104
103
127
74
183
94
102
144
149
84
79
84
108
107
71
74
138
83
82
122
130
157
102
116
94
140
83
66
107
150
79
103
115
66
58
129
125
176
107
111
80
66
149
73
135
116
100
149
195
142
48
91
172
100
129
82
108
138
121
71
191
121
74
120
96
159
108
60
66
73
89
113
127
96
106
74
112
145
197
167
94
142
85
155
72
104
107
83
68
122
110
82
80
91
121
105
201
120
124
93
118
67
35
182
188
78
67
112
64
155
68
151
109
97
106
108
78
109
99
82
200
177
94
116
158
111
77
121
76
91
82
61
103
60
178
76
158
91
59
85
78
100
91
85
136
114
148
154
71
92
80
137
126
97
35
168
104
202
145
86
90
105
137
53
85
87
89
82
93
76
189
110
120
101
62
104
60
83
54
154
68
128
82
98
77
155
119
93
97
102
117
137
84
211
140
143
158
98
261
185
111
35
83
66
103
133
133
66
64
78
116
141
134
114
176
71
62
63
47
40
108
53
158
135
87
116
114
89
175
119
64
167
112
86
80
111
86
104
122
76
135
145
85
130
182
88
117
211
102
122
157
105
171
92
92
84
39
66
81
87
89
36
72
123
112
114
133
97
111
145
85
77
90
72
99
106
109
118
98
86
91
145
83
110
120
87
118
84
41
79
72
87
74
105
61
81
125
74
132
83
202
95
99
138
125
108
76
105
113
113
127
125
75
112
100
61
104
74
77
96
181
56
99
167
235
111
148
94
84
197
84
92
202
211
186
85
113
107
107
119
51
139
119
164
120
109
82
110
200
69
133
67
164
105
89
71
114
164
83
132
69
191
95
120
123
81
69
120
74
113
84
58
138
146
40
133
117
139
98
95
70
90
118
113
74
163
81
85
100
98
149
81
149
96
84
31
94
84
124
142
94
60
87
128
63
71
165
69
131
71
135
73
193
116
142
300
68
160
188
170
60
100
91
60
63
77
165
117
87
130
93
98
107
57
146
76
173
45
93
163
101
137
77
54
156
60
122
118
103
159
55
115
106
109
88
61
123
102
60
181
66
76
120
76
83
66
60
50
185
87
51
50
105
107
148
95
56
76
116
129
98
84
72
91
117
124
81
105
113
189
148
64
104
68
65
35
65
76
189
106
86
194
113
102
107
92
102
88
145
111
112
132
182
136
89
53
235
70
129
85
73
108
149
61
72
67
132
69
141
108
115
81
64
69
135
80
91
51
111
148
74
101
74
128
128
74
71
149
112
96
130
66
33
125
74
123
79
195
112
142
113
56
95
86
94
104
101
105
55
133
98
99
80
112
143
118
116
127
137
91
109
145
100
138
279
137
126
92
68
90
88
191
165
120
129
126
87
114
119
115
156
139
45
92
66
112
92
119
94
128
121
118
87
81
129
172
70
70
128
90
128
97
68
119
98
56
92
168
64
86
177
138
71
184
123
87
275
91
40
77
131
88
166
67
88
124
111
216
92
77
184
150
102
76
80
127
156
107
109
128
98
171
107
65
149
88
100
91
141
56
98
69
60
66
59
73
195
102
159
44
91
91
112
95
121
68
109
76
70
209
85
61
36
81
178
125
89
223
49
72
150
103
103
113
43
69
54
96
120
96
81
132
88
114
171
91
115
125
34
90
97
65
121
69
79
88
145
75
168
103
143
100
91
55
76
49
79
155
72
112
79
103
47
95
100
177
77
69
63
109
129
69
108
51
126
105
105
80
69
133
102
92
56
108
162
82
111
214
146
97
89
79
68
131
98
186
107
106
109
84
93
58
64
118
106
105
64
77
80
83
55
129
189
123
92
123
124
141
55
202
67
146
122
39
119
177
115
102
144
74
158
91
65
94
109
46
100
123
120
143
146
56
62
119
135
112
126
68
143
84
160
186
95
122
136
110
76
167
92
100
137
96
71
78
161
104
76
77
106
75
105
95
76
64
120
99
71
141
83
72
91
80
75
112
35
88
95
87
151
89
149
112
148
52
126
116
71
89
120
99
157
76
45
49
142
84
100
138
116
152
68
122
137
51
53
87
80
109
110
103
79
63
99
175
138
91
90
101
115
111
138
72
121
148
38
62
140
74
72
149
77
120
123
131
134
94
54
132
186
64
121
38
137
155
74
106
64
85
90
126
52
141
111
93
120
139
68
60
112
137
135
143
84
126
152
149
150
76
173
74
46
107
44
54
92
184
189
89
82
72
78
75
100
134
233
72
112
60
65
110
103
78
144
82
101
76
96
94
98
163
73
113
53
182
132
73
95
61
115
124
120
166
82
123
130
118
62
109
95
49
123
95
96
108
39
209
124
96
173
117
113
69
48
104
80
129
57
148
174
162
156
90
114
60
179
47
141
134
102
77
110
157
96
101
124
130
75
104
43
81
71
173
86
140
129
113
92
37
53
120
121
178
109
113
163
109
108
118
169
92
95
137
62
89
143
141
148
100
200
78
125
101
110
159
126
101
90
74
89
102
100
149
137
84
113
119
114
95
138
70
50
170
100
48
48
100
175
50
145
72
132
104
37
67
116
73
127
128
90
131
134
120
105
127
58
97
137
51
101
140
104
93
101
128
150
137
116
147
130
98
84
141
49
103
154
80
80
48
181
138
134
103
144
85
104
93
63
107
64
110
56
115
65
112
79
54
61
97
95
128
86
70
103
53
75
128
70
86
65
176
155
139
162
207
141
94
121
66
96
151
136
70
71
108
82
108
124
126
83
113
54
67
92
83
101
80
88
124
77
198
89
109
91
175
33
179
139
75
118
98
61
94
117
130
127
50
87
115
25
85
56
93
146
155
122
53
65
156
119
71
137
140
133
51
148
94
99
53
110
70
190
137
51
142
74
218
67
159
175
136
135
84
66
129
125
72
96
64
126
70
131
137
152
126
81
56
90
74
128
71
77
103
88
109
86
67
116
106
65
91
116
88
67
151
110
83
83
143
120
124
117
73
95
102
98
85
115
114
108
131
146
90
117
235
126
54
113
108
108
92
93
141
136
89
43
107
81
121
116
97
146
144
124
118
154
66
126
83
88
91
70
84
175
112
63
149
117
98
153
71
110
119
108
142
70
106
90
78
73
120
117
163
90
111
65
67
129
126
100
96
84
92
101
144
101
61
150
227
58
107
108
62
65
125
103
68
42
276
159
72
171
58
80
44
67
86
91
155
78
48
129
108
103
91
114
99
109
88
109
125
283
36
144
79
94
140
95
82
93
135
118
95
76
121
134
104
69
132
71
162
108
86
83
78
106
121
81
94
103
124
153
107
42
134
82
142
123
127
92
184
43
145
84
61
102
86
194
85
81
94
120
108
165
64
65
147
115
150
111
108
114
108
88
188
71
97
133
192
67
63
61
107
41
123
114
138
170
142
129
58
89
87
112
111
65
70
71
104
96
80
122
136
126
60
84
89
114
117
71
131
54
95
121
61
78
97
64
185
115
132
118
94
69
116
40
193
84
108
114
79
80
135
113
73
101
72
97
125
46
45
86
109
120
101
118
116
99
48
86
137
109
104
113
107
79
120
121
119
41
32
72
120
190
144
176
46
145
114
106
155
85
163
134
81
124
126
54
64
78
50
77
110
92
112
116
97
130
57
114
75
141
132
57
146
54
85
123
127
101
127
148
124
99
97
117
55
43
145
138
159
99
57
174
78
57
95
116
123
63
97
111
81
119
61
50
129
130
52
133
49
176
85
112
87
143
137
133
72
162
135
83
112
124
92
96
134
95
112
66
133
134
75
115
131
88
118
76
91
52
49
104
87
132
134
129
94
134
131
99
91
88
127
110
126
86
89
133
102
107
72
86
100
105
68
62
103
99
98
118
102
107
116
118
71
123
93
111
100
142
72
91
86
164
88
41
85
110
138
91
128
131
84
66
148
101
67
139
108
134
56
103
53
171
138
48
151
82
105
129
93
107
60
55
69
112
103
90
53
61
110
144
101
156
85
75
112
62
101
131
114
106
85
84
120
48
153
90
32
183
52
46
41
70
72
83
138
114
80
116
138
150
130
89
115
195
119
101
101
81
94
153
111
139
67
57
59
137
136
97
159
95
124
137
54
118
31
96
102
73
62
67
108
91
98
112
93
90
89
67
106
99
53
68
80
68
126
99
153
60
79
79
93
115
130
60
44
103
113
117
152
122
116
86
125
73
105
118
75
91
78
144
130
109
118
106
34
121
121
108
85
86
154
123
133
67
60
61
116
101
129
134
197
73
116
129
92
140
89
119
113
189
53
100
80
94
74
96
135
105
100
89
240
140
115
142
99
67
134
66
103
173
110
79
91
104
101
95
45
49
74
82
106
83
120
85
102
55
57
112
195
85
74
108
117
169
101
79
118
82
82
57
131
130
106
50
106
37
50
77
48
82
128
85
126
84
63
119
164
118
146
91
133
63
61
95
157
67
136
145
80
138
92
112
189
91
108
35
144
117
56
130
142
165
103
129
133
57
204
120
74
106
86
63
46
96
93
80
121
137
163
54
152
95
126
61
111
130
83
132
149
73
122
103
134
91
192
155
99
157
134
118
109
74
87
96
82
80
128
93
84
56
77
136
45
91
105
101
77
78
90
37
88
212
128
111
61
116
89
137
108
86
95
68
67
77
62
62
157
131
282
133
115
128
99
45
94
76
108
85
111
57
104
160
187
99
126
103
84
43
83
104
59
79
90
116
134
130
87
126
113
41
102
59
125
52
69
90
70
138
96
113
75
104
113
105
144
116
105
106
189
105
87
80
80
115
73
87
121
76
57
121
128
111
68
179
86
99
86
84
67
221
86
149
100
100
243
156
82
68
55
58
119
123
85
134
145
123
96
74
133
91
73
155
165
120
130
101
130
115
37
154
102
154
48
72
219
184
68
101
73
91
137
79
88
75
129
37
116
128
139
82
104
111
124
64
168
185
92
78
139
58
126
113
184
67
151
87
162
91
102
59
135
51
156
75
121
165
77
46
105
119
108
47
117
109
132
79
85
63
123
99
112
91
54
90
108
111
103
73
120
80
167
122
163
99
147
74
72
103
93
72
84
138
69
39
54
123
100
120
153
148
86
68
100
86
144
126
177
105
111
160
139
133
61
108
151
66
65
68
102
97
64
124
123
87
90
102
59
124
124
140
150
70
117
74
39
114
130
86
169
126
107
92
74
146
107
122
164
154
138
125
164
101
94
66
32
133
65
122
153
143
114
95
202
160
99
149
97
118
102
76
122
85
122
88
169
105
83
128
87
80
109
109
76
148
104
49
102
110
322
88
112
73
69
119
184
158
131
168
40
94
77
154
69
87
114
94
59
101
75
59
94
143
116
95
71
141
146
177
88
81
197
154
200
159
160
111
132
81
65
98
96
114
140
129
104
122
127
74
69
183
86
59
106
110
87
101
153
127
81
88
64
84
81
55
72
54
153
97
86
57
64
117
119
80
81
94
103
120
97
93
100
82
106
87
114
196
129
88
153
101
102
91
64
70
170
110
148
101
72
112
124
85
134
95
125
132
94
93
151
134
53
140
109
178
151
124
113
100
83
80
147
89
109
100
149
122
113
166
125
92
96
110
68
115
127
131
92
150
55
84
101
97
113
105
145
136
102
145
80
120
88
139
52
106
90
88
84
127
86
67
113
72
159
113
81
68
129
174
184
86
73
127
112
87
92
130
141
152
67
67
74
97
217
144
73
174
76
74
82
86
81
97
99
86
106
98
64
150
73
152
113
84
154
88
147
65
56
95
57
132
43
155
144
80
99
94
83
91
94
133
128
66
132
191
132
121
135
67
109
16
88
129
129
105
99
200
93
132
81
120
110
143
110
181
76
99
183
82
129
82
97
97
70
103
161
89
101
65
104
84
67
40
106
92
72
89
69
69
109
64
208
122
109
69
155
71
86
73
34
184
106
166
66
119
103
102
159
104
175
102
98
188
113
55
114
92
170
57
67
141
87
95
85
149
134
173
135
123
131
86
106
219
105
138
74
73
61
102
211
98
100
152
123
74
100
74
84
109
101
118
91
149
166
160
76
152
75
73
114
128
176
106
115
167
101
73
116
88
105
72
56
67
142
114
106
103
102
90
81
147
96
37
175
92
106
112
94
106
144
95
155
77
93
139
89
102
66
85
99
102
90
52
110
91
84
107
123
88
92
127
127
153
92
132
94
82
47
88
106
78
70
103
88
82
110
78
93
122
74
93
84
81
112
96
108
69
137
120
105
103
129
139
170
43
128
108
56
119
146
76
123
88
122
188
106
77
93
104
114
76
123
119
96
130
91
105
142
122
166
122
140
116
133
57
74
92
79
69
114
103
94
72
50
153
71
75
97
86
79
116
175
134
78
128
77
66
108
109
94
119
99
70
79
129
79
92
85
60
72
153
143
148
97
138
81
125
64
124
111
150
83
66
95
151
96
78
63
44
107
93
111
136
104
140
66
57
109
133
206
184
104
85
77
97
93
149
102
155
148
46
75
110
68
105
96
80
84
79
132
86
45
149
100
76
86
129
135
93
49
129
129
111
108
187
112
110
108
96
72
135
100
122
177
136
65
36
75
198
61
77
41
127
120
161
114
135
67
102
143
166
76
64
83
170
95
109
111
94
82
79
140
123
100
78
171
119
125
109
92
87
54
79
89
81
98
131
73
166
91
84
148
61
124
91
104
62
98
122
127
118
63
132
148
83
42
86
102
133
113
76
119
120
105
60
82
70
63
48
76
156
147
114
85
112
74
89
93
89
96
64
112
69
141
65
67
89
151
65
83
85
67
70
115
125
219
139
133
88
66
140
98
112
30
95
79
48
58
99
94
136
96
91
89
112
77
136
93
107
119
110
145
82
82
105
146
132
82
65
125
102
106
123
110
101
73
103
171
164
150
106
51
70
119
71
166
98
135
90
135
52
82
128
111
105
133
130
127
145
112
207
124
65
66
141
93
73
62
70
69
62
112
101
188
107
195
87
43
65
84
55
124
157
127
154
143
94
72
89
75
128
83
88
79
127
60
142
90
99
126
56
108
134
57
138
87
97
146
104
71
87
141
73
93
182
112
54
133
125
84
84
57
162
100
105
35
132
133
89
147
50
166
89
93
129
110
69
116
93
106
109
70
133
120
63
199
89
70
140
53
111
94
83
104
69
149
76
91
158
187
64
108
174
104
43
154
133
93
95
61
168
66
154
188
64
67
86
63
67
185
114
82
58
70
155
142
34
133
82
123
131
77
64
164
103
138
57
54
110
141
109
66
156
80
124
163
110
101
116
46
86
59
51
107
89
125
54
84
89
57
136
166
148
68
125
150
52
118
127
155
113
104
119
121
82
110
116
69
72
80
83
115
54
50
86
112
78
105
129
102
68
112
93
158
134
53
155
175
85
156
75
104
110
97
69
117
105
81
116
126
127
103
105
143
76
179
60
175
70
125
113
126
93
56
133
82
124
138
108
108
155
98
63
82
97
124
102
106
163
58
118
61
79
223
85
120
166
86
85
226
145
72
99
122
127
124
93
84
134
203
106
59
125
137
56
75
74
103
181
108
37
101
84
126
118
122
88
131
145
133
62
67
80
121
100
188
82
46
98
92
160
80
119
89
115
126
75
129
150
144
129
61
121
109
90
126
53
132
87
84
155
158
64
94
81
60
108
88
116
67
114
88
137
79
88
109
91
80
168
135
105
189
84
117
117
86
89
113
54
156
83
104
80
92
114
135
170
156
155
171
94
50
143
118
71
115
101
126
93
119
124
87
70
53
108
50
82
63
77
100
79
136
100
118
96
70
143
166
82
89
141
83
106
65
129
100
55
92
99
104
106
72
89
87
85
67
135
91
73
83
108
44
68
143
102
97
154
116
61
167
135
85
152
91
105
118
127
114
140
64
64
87
76
75
121
193
98
73
111
48
94
132
84
108
154
95
157
76
79
137
78
91
91
123
78
65
101
105
78
82
109
64
50
47
111
110
141
146
132
60
88
87
141
98
96
72
119
72
97
68
122
140
76
173
168
89
87
130
92
109
73
130
24
61
116
93
74
115
136
97
63
145
83
111
161
92
131
123
106
132
84
88
66
58
144
44
97
65
181
117
132
90
138
95
166
76
79
158
62
140
56
90
107
125
82
53
120
50
109
75
95
139
90
134
118
45
62
199
127
105
98
146
35
101
105
142
140
104
114
109
82
133
130
77
49
70
102
94
98
175
55
127
78
90
153
54
80
96
112
93
107
142
139
121
54
97
95
130
80
94
123
179
108
128
87
199
103
132
93
86
96
207
81
127
59
156
114
118
95
89
127
79
107
67
72
58
142
72
51
102
139
111
55
123
122
73
98
109
71
112
71
141
207
88
56
96
95
149
139
141
147
182
129
82
91
122
73
83
63
99
47
80
3
131
99
162
102
167
76
150
94
84
157
98
104
76
149
101
48
149
117
170
54
105
84
127
101
86
99
81
131
94
262
75
90
154
135
147
136
129
156
75
64
75
102
113
122
54
122
133
86
103
152
142
127
111
133
82
56
104
101
137
74
66
75
216
112
135
74
85
92
145
80
88
128
190
85
130
147
162
73
69
129
58
180
131
76
94
210
83
64
45
128
91
177
149
39
88
158
91
96
115
107
110
110
85
121
118
124
84
100
57
114
80
107
119
127
175
82
81
66
87
80
91
211
136
77
137
86
120
117
170
125
223
88
125
117
119
121
123
93
69
51
106
167
65
104
126
147
131
148
37
86
72
121
88
111
74
103
138
139
156
124
105
101
147
181
60
118
119
96
137
112
92
111
90
77
94
150
100
71
92
116
90
74
107
120
77
121
104
243
86
172
135
109
98
30
119
86
143
88
92
105
68
74
78
57
121
80
154
107
108
51
79
131
51
94
119
164
103
139
76
50
109
117
124
110
142
94
118
153
72
108
166
223
82
126
133
127
57
109
102
91
49
156
114
123
77
190
166
134
125
70
98
95
96
105
68
39
154
82
89
93
72
85
188
147
73
193
96
112
86
104
61
110
166
76
111
143
77
63
181
113
114
135
126
63
117
166
69
112
51
139
149
130
141
70
41
117
218
127
94
110
185
78
88
100
48
50
188
38
196
155
115
70
136
95
121
82
101
49
205
71
136
70
118
110
169
59
181
66
111
127
90
121
76
61
85
94
103
50
144
118
121
112
58
108
89
81
72
92
93
126
90
126
79
119
59
141
124
70
87
120
117
156
53
66
119
112
149
115
101
196
145
160
83
117
107
92
77
162
111
134
57
147
130
71
99
78
142
124
61
73
83
219
93
123
108
91
99
56
71
86
121
92
81
48
169
142
126
104
94
84
77
80
168
83
121
85
135
97
101
100
164
136
150
142
129
57
67
96
105
91
84
67
130
94
158
73
61
131
86
64
85
141
46
70
131
94
136
130
120
162
105
177
70
197
58
110
100
118
118
86
108
159
59
48
89
95
177
123
119
159
44
127
47
42
64
88
109
153
141
147
64
78
89
85
64
139
73
122
97
128
84
93
194
182
50
147
117
92
119
153
141
63
114
83
55
107
75
156
148
61
53
76
144
252
106
72
98
94
87
148
90
101
91
99
101
161
108
128
166
90
141
104
132
144
151
69
53
177
115
118
84
85
114
43
110
72
95
107
131
83
67
113
88
55
124
107
117
161
96
105
109
123
63
76
156
174
144
85
152
98
119
79
55
58
79
143
101
103
146
78
95
112
139
102
109
57
127
87
136
57
115
54
111
95
75
90
93
45
87
80
153
163
75
146
102
70
149
86
130
100
128
94
128
87
138
78
50
121
67
120
111
96
111
93
109
75
139
74
137
107
111
68
102
84
68
99
121
129
141
45
71
231
109
159
98
136
130
119
124
115
132
67
52
147
134
57
121
90
84
170
125
89
71
142
126
101
108
153
105
56
53
84
106
60
80
168
141
110
140
74
128
132
127
93
73
78
109
137
97
103
153
108
51
180
92
142
166
92
121
103
71
170
84
138
88
50
92
143
110
45
125
104
93
132
156
95
114
86
54
84
112
76
140
203
173
132
82
93
93
47
129
126
79
165
117
171
114
99
37
72
126
117
79
139
202
110
162
164
118
74
124
59
126
92
59
79
144
71
209
89
71
85
69
115
156
45
53
151
228
145
217
152
114
91
128
89
125
120
140
115
46
99
107
188
56
103
118
132
102
104
96
89
89
124
124
85
54
123
102
176
53
81
127
219
126
44
16
120
91
102
112
42
134
84
139
94
160
127
111
75
146
49
111
134
62
118
152
162
73
42
129
135
68
126
84
107
114
106
134
214
119
72
99
93
72
109
85
151
96
124
128
109
72
151
115
92
104
70
145
156
105
102
86
43
116
65
126
109
80
91
92
31
123
139
53
81
184
100
73
44
91
57
116
38
124
72
154
46
72
141
75
100
66
101
159
43
110
115
134
69
72
47
156
123
100
155
81
60
85
157
171
120
141
51
74
99
97
61
160
119
119
65
113
142
96
75
98
78
70
97
101
170
73
107
95
122
175
71
134
80
72
187
153
91
74
141
95
101
132
150
163
125
114
140
122
118
157
80
148
133
82
128
108
123
57
38
99
106
87
185
69
162
117
144
95
246
104
119
116
120
80
147
108
128
74
76
151
170
63
112
187
107
101
168
138
90
143
180
90
84
74
56
64
51
101
86
107
75
104
80
112
130
71
52
155
71
120
140
101
100
162
118
98
40
115
39
97
97
105
102
139
90
94
55
61
94
102
83
50
105
127
88
122
78
86
128
76
84
151
68
68
47
153
73
145
118
93
91
59
117
121
79
105
220
139
103
116
71
74
89
146
69
134
251
132
71
89
69
97
62
77
78
72
122
164
88
71
106
110
80
134
122
75
188
58
147
98
124
77
110
56
100
140
65
92
60
86
122
110
164
165
113
104
77
135
106
112
65
64
126
134
63
168
103
128
130
149
168
93
81
75
101
50
141
93
111
103
99
88
116
107
139
93
75
56
79
108
78
152
137
117
128
89
87
117
119
66
84
179
86
121
133
88
127
113
35
129
124
198
103
101
52
128
74
144
148
161
112
124
92
154
30
124
116
78
77
68
131
100
100
187
142
156
82
106
57
92
114
98
141
90
61
129
69
87
121
145
138
88
105
115
59
141
79
39
138
49
139
88
65
71
59
128
135
181
113
92
113
62
112
127
117
132
120
102
88
100
91
55
103
103
76
77
113
97
169
136
107
128
83
187
193
64
64
117
76
39
98
112
131
116
129
90
104
115
142
107
120
148
88
127
146
149
122
110
105
115
95
135
61
67
107
122
57
69
40
101
98
90
74
80
141
110
136
118
136
109
120
180
123
141
89
166
83
130
139
115
67
130
82
84
122
86
100
161
97
117
95
33
46
121
97
114
44
76
146
49
47
93
56
103
94
120
128
89
80
82
100
98
107
82
85
91
48
136
74
56
117
58
63
99
78
268
87
85
80
93
120
107
139
123
93
106
156
122
120
97
95
48
106
143
54
146
103
64
68
109
67
99
165
73
88
65
107
142
32
113
147
118
105
100
74
83
78
182
132
115
116
99
147
174
121
97
74
97
97
117
53
43
109
92
135
169
123
149
72
60
133
86
137
89
151
85
99
77
83
107
118
127
103
129
79
167
87
70
128
196
49
67
74
71
98
99
121
121
146
145
83
118
77
85
130
95
97
82
28
92
96
93
108
99
67
78
100
115
131
65
120
125
39
95
112
122
93
68
57
64
155
109
112
121
126
157
114
90
66
72
110
69
88
87
116
111
65
66
70
96
59
69
135
71
126
123
97
188
64
99
106
96
82
88
91
108
116
96
96
46
86
85
92
125
79
123
34
78
132
139
121
129
90
184
54
103
121
130
102
167
219
60
157
113
105
79
187
105
138
82
90
71
102
65
125
124
104
30
174
40
125
81
129
130
61
55
134
114
74
109
72
79
81
132
148
139
49
61
110
134
51
132
78
68
181
55
115
97
76
169
106
106
132
104
96
193
95
132
68
158
98
49
135
93
71
196
64
74
124
107
156
45
145
49
112
155
147
119
54
94
69
144
181
176
179
170
85
73
82
139
57
112
177
70
86
135
111
107
49
171
75
130
139
100
50
112
112
123
85
53
99
97
120
108
142
81
112
103
96
131
106
138
120
157
150
80
89
114
114
108
138
123
210
116
101
141
143
94
119
147
62
87
75
61
137
129
62
146
91
147
107
45
71
57
82
129
80
167
56
118
91
64
103
103
171
129
68
115
90
89
71
93
124
106
63
96
87
73
78
100
66
120
72
74
93
165
245
90
184
139
98
124
105
81
94
87
67
112
172
85
131
119
97
126
152
131
145
62
167
78
105
128
111
81
81
125
92
74
124
154
63
52
125
82
128
146
92
140
86
95
98
67
85
98
103
65
153
107
106
152
100
107
60
163
73
62
45
138
112
79
87
60
100
88
106
172
216
120
31
103
83
248
79
148
90
223
80
109
95
80
58
117
124
134
66
84
72
146
111
93
96
146
138
105
63
158
51
99
194
64
95
66
141
59
180
134
121
105
124
124
107
61
125
99
104
184
112
187
97
93
117
72
108
95
101
136
106
136
94
133
92
82
80
131
81
157
77
80
169
101
214
110
161
125
126
86
106
122
172
80
124
89
105
147
111
144
155
108
63
82
47
137
200
106
91
46
178
134
80
69
112
83
118
137
108
141
73
110
107
79
74
109
55
61
50
152
106
104
77
167
101
133
107
119
120
93
99
113
134
56
56
169
110
125
89
147
68
123
90
120
74
74
129
74
118
188
167
124
104
91
88
123
91
72
119
120
139
112
110
137
111
38
108
70
66
42
79
86
76
88
135
83
145
79
116
83
69
53
68
119
46
139
89
114
71
134
146
61
178
129
135
122
84
37
102
136
62
155
130
149
93
139
158
92
183
141
134
103
104
75
277
60
105
154
44
64
83
121
122
78
58
146
109
142
118
60
113
102
101
50
65
92
101
149
60
227
120
87
120
81
124
50
83
157
66
128
105
116
39
41
127
70
130
136
108
96
123
90
89
129
79
111
72
58
129
105
139
255
134
94
136
87
118
83
133
141
81
152
113
137
144
139
71
165
59
170
112
78
141
53
36
77
122
103
166
90
78
143
182
162
110
55
157
138
48
135
121
82
107
128
51
88
167
77
36
114
78
74
126
124
108
71
55
63
79
146
139
54
73
120
162
65
176
67
119
122
62
65
57
84
95
77
73
134
124
130
93
50
118
81
73
59
106
45
75
130
106
38
140
131
131
37
100
102
98
97
95
160
173
74
88
58
130
125
107
71
73
103
150
126
102
84
98
89
87
163
60
90
89
69
117
227
71
173
78
63
101
136
151
132
124
130
65
66
125
139
140
99
136
205
79
97
123
78
38
60
62
104
110
123
263
92
63
140
105
158
120
76
73
118
171
101
71
54
70
128
40
167
145
69
83
177
143
143
62
76
84
145
113
128
113
102
91
118
87
113
78
101
108
91
84
88
152
43
119
103
159
87
156
69
117
118
118
129
103
174
122
107
98
56
117
82
165
68
41
109
148
90
107
83
136
133
72
130
85
117
81
64
165
61
137
112
91
90
145
107
181
116
67
129
126
127
77
129
129
107
93
167
190
60
61
111
159
69
107
184
137
149
154
101
75
107
137
165
96
139
99
63
62
113
118
101
79
66
96
119
131
107
161
173
69
100
102
160
46
88
88
98
93
66
47
76
124
124
116
136
161
161
126
84
117
169
27
136
133
149
72
130
127
107
37
98
108
90
167
118
165
84
147
167
86
87
113
84
95
116
92
113
75
101
72
103
87
71
60
63
152
63
100
44
174
172
90
100
120
157
127
89
62
60
84
164
171
122
143
101
83
73
88
148
46
87
128
103
138
116
132
82
100
121
81
197
98
115
102
129
92
143
173
35
104
160
117
90
118
82
96
59
58
78
171
124
104
108
105
86
77
83
223
95
123
158
120
127
44
135
63
88
172
128
85
127
123
126
107
106
119
177
63
62
140
122
116
152
126
141
99
110
71
64
95
129
104
181
158
62
72
68
92
151
74
115
138
121
103
55
84
207
113
106
68
153
178
67
61
199
128
67
193
56
80
225
120
74
197
128
71
65
82
71
168
52
208
78
70
74
59
147
118
146
137
57
110
196
202
62
64
124
46
56
89
119
91
52
70
64
73
127
135
126
128
86
34
120
114
109
194
93
135
92
166
90
82
80
67
53
55
135
81
97
79
151
119
100
151
111
140
106
141
102
113
99
109
97
98
119
101
115
115
103
102
112
122
161
69
90
96
113
61
105
79
140
108
60
59
91
95
95
170
103
81
85
88
111
115
121
63
114
116
70
88
65
102
84
106
139
139
72
131
132
194
115
147
95
88
139
147
58
121
76
101
84
112
155
82
74
70
79
121
97
99
56
56
124
90
101
77
150
96
112
112
76
147
141
91
126
115
96
82
138
133
77
81
75
167
126
161
147
41
87
107
145
124
157
108
75
70
139
170
100
111
111
102
137
96
154
56
88
80
72
86
79
98
48
81
140
68
66
114
85
155
171
102
90
39
81
102
115
136
115
125
81
117
48
73
89
67
147
83
46
124
53
82
109
93
201
141
82
55
95
57
97
83
138
79
118
60
103
66
106
138
74
73
93
89
93
108
111
171
179
127
97
120
124
127
136
157
93
98
151
87
97
109
120
61
108
103
145
84
145
137
68
91
138
49
79
89
132
92
136
87
117
98
72
126
103
124
126
97
163
113
114
94
153
52
109
114
61
112
64
114
87
184
132
85
88
122
73
55
178
55
123
131
52
104
76
117
96
99
87
153
73
130
177
99
182
217
112
104
82
83
49
113
39
119
125
129
77
92
168
117
104
68
145
143
73
131
115
109
124
93
151
158
133
127
114
96
90
128
130
93
70
111
77
99
74
174
97
102
85
63
115
174
121
94
84
97
73
130
95
61
72
83
122
119
57
132
70
51
66
93
119
72
67
82
62
116
138
73
88
108
106
105
139
158
141
112
107
116
110
122
93
82
95
98
60
144
101
134
103
70
150
79
93
110
129
165
152
157
102
122
71
123
37
141
103
144
101
134
131
110
64
41
80
76
103
124
69
119
50
135
132
40
108
103
73
94
104
85
77
140
103
164
78
104
167
96
116
54
45
194
115
83
49
70
66
196
88
112
74
39
132
124
115
129
74
49
119
106
123
120
139
90
133
85
65
78
108
183
170
141
135
95
128
143
71
110
125
73
87
70
98
96
120
158
91
84
108
81
125
117
135
102
167
98
119
119
67
90
90
155
206
81
143
109
100
124
142
132
84
62
110
43
82
145
99
167
80
92
62
45
137
57
125
140
61
132
138
108
109
145
147
116
65
59
122
81
119
61
69
68
76
170
80
100
87
79
97
121
126
165
98
183
123
96
73
76
82
156
188
112
94
148
78
97
73
155
99
157
116
137
99
46
172
110
38
94
150
102
112
165
163
256
83
214
54
113
79
150
146
92
148
112
81
129
138
59
104
104
163
101
173
48
159
132
152
61
57
110
94
145
88
116
87
76
132
92
110
130
60
128
145
91
87
90
122
91
52
63
77
182
95
72
151
150
163
87
133
96
130
115
123
79
68
110
51
122
141
86
103
122
96
82
140
65
58
165
150
124
78
119
85
179
30
69
154
124
181
92
54
99
90
69
90
209
214
65
51
72
121
102
150
76
193
93
102
160
159
113
83
74
58
88
83
49
127
117
98
156
61
120
48
103
126
100
116
167
138
93
165
101
143
56
119
116
102
70
91
108
102
144
47
59
92
65
125
62
113
82
136
59
130
187
182
106
60
110
103
93
56
172
122
98
111
50
87
157
127
67
92
148
87
64
109
85
73
144
59
156
49
83
45
149
98
108
181
133
123
148
81
64
63
115
100
127
112
153
141
83
69
155
125
171
130
133
128
153
101
67
69
223
170
134
137
149
48
37
110
86
91
68
100
109
78
61
114
132
87
64
114
165
54
75
132
51
139
79
121
79
128
94
80
154
103
56
110
107
116
51
124
168
96
95
66
124
98
122
103
92
168
88
94
121
121
73
85
88
84
75
107
136
98
188
124
102
85
118
122
107
102
101
99
148
126
120
177
136
113
115
85
116
80
127
114
129
82
40
59
78
142
135
63
96
133
106
74
124
106
43
89
161
49
71
119
84
122
70
144
130
129
74
160
114
66
108
121
132
106
112
92
159
46
60
112
96
201
100
138
108
44
63
108
73
107
82
123
168
153
139
121
128
143
38
97
143
74
79
62
91
83
155
71
57
148
100
127
112
94
105
73
71
95
95
51
90
37
128
105
63
78
129
98
47
62
72
75
129
116
75
128
106
56
50
215
57
93
135
158
141
131
105
55
72
134
121
64
149
119
69
49
85
122
55
97
104
68
90
72
41
85
76
119
56
130
88
64
50
89
88
71
106
80
93
124
94
199
150
163
47
94
59
70
186
87
83
89
211
88
111
174
170
98
79
86
60
80
78
130
45
112
172
182
112
79
126
64
81
114
122
78
91
86
93
80
70
98
216
142
126
169
122
100
72
49
67
83
81
114
90
89
170
147
66
82
30
160
108
87
90
105
122
71
95
85
157
86
142
104
98
117
115
129
109
65
198
195
58
105
66
59
135
116
46
76
57
69
179
182
61
171
79
87
141
247
92
107
93
85
120
122
85
121
99
111
131
129
86
58
93
112
64
59
183
172
192
139
119
67
103
90
71
69
114
81
115
195
95
62
189
113
87
87
127
59
152
103
134
128
84
122
132
126
77
74
49
47
149
64
100
75
113
149
176
103
102
87
94
88
103
54
74
28
63
77
114
90
121
166
66
118
91
105
138
83
121
55
116
110
136
141
89
42
102
81
114
114
94
60
90
146
155
194
105
82
126
93
129
106
79
83
121
101
108
121
78
91
97
147
164
43
94
122
113
121
157
105
108
41
119
108
117
53
144
42
117
140
135
147
78
243
64
118
142
83
67
142
180
141
90
191
107
110
74
135
58
153
145
149
94
112
83
149
72
103
88
60
119
81
87
121
103
47
169
64
185
117
166
77
90
176
38
103
134
131
106
121
112
98
62
77
135
146
146
122
180
187
156
92
65
55
107
151
68
85
147
118
116
130
66
40
68
122
78
41
79
200
77
67
117
142
68
92
175
161
54
134
122
92
97
132
136
87
89
147
120
77
144
44
125
48
92
69
90
163
112
128
113
84
156
184
90
113
132
60
100
55
49
74
138
150
81
110
123
130
104
114
162
171
88
112
88
56
155
88
100
87
142
98
85
112
221
90
139
100
192
69
85
144
144
73
112
100
77
64
60
118
133
113
70
56
70
166
164
150
135
99
109
79
102
158
96
83
88
202
86
66
75
220
196
168
91
180
132
123
66
48
91
71
111
97
86
63
71
118
76
145
90
89
44
189
108
49
104
111
158
102
85
200
77
72
137
62
85
135
108
123
95
118
93
64
162
131
107
145
111
91
173
137
91
64
72
54
81
144
126
71
140
146
62
126
119
127
90
125
88
114
50
77
137
164
90
103
171
84
99
139
85
94
90
96
150
88
101
130
81
55
88
157
70
116
148
112
188
73
94
48
136
71
96
151
56
75
70
67
103
76
92
190
102
120
174
116
90
153
71
139
113
36
102
101
153
99
87
96
96
128
143
86
84
36
130
115
78
78
107
95
108
117
83
158
109
107
56
66
91
124
79
113
141
96
76
42
87
212
92
135
94
82
57
63
60
81
107
130
66
132
132
164
63
156
112
58
157
140
81
105
73
50
143
103
108
91
67
104
165
103
65
161
76
120
63
115
91
173
168
99
64
102
58
131
191
144
129
43
117
89
98
83
131
93
53
138
142
144
138
138
95
62
176
51
72
62
167
87
130
141
112
154
111
136
38
57
101
182
97
111
70
116
65
109
75
62
66
92
47
140
150
203
122
159
106
86
100
114
60
154
176
105
83
72
81
70
72
116
62
144
41
81
73
109
77
105
173
86
84
71
95
105
73
81
108
173
100
175
65
124
157
104
121
158
174
125
146
84
144
68
98
114
122
82
43
101
90
159
151
175
81
93
78
107
111
184
151
50
128
134
122
103
160
111
40
40
127
169
76
144
70
90
63
164
56
134
75
78
98
77
150
152
57
104
118
83
67
123
117
43
165
99
97
77
76
93
86
114
65
143
93
137
104
207
109
64
155
79
131
43
113
119
167
100
135
98
109
120
69
89
143
110
129
73
117
96
72
130
106
53
124
73
58
78
147
183
66
55
146
49
85
104
173
161
120
107
122
49
115
135
102
80
75
47
113
125
113
111
150
51
136
92
126
100
76
71
87
108
109
43
118
76
122
72
137
108
74
81
127
87
144
118
136
96
129
128
101
45
73
124
268
68
155
44
111
117
73
121
117
100
110
66
58
123
109
75
100
105
156
91
145
119
129
79
196
41
136
62
109
98
48
120
99
112
46
68
94
133
60
46
45
126
114
99
54
75
164
69
127
94
138
162
56
94
123
123
115
134
149
143
34
76
122
117
73
126
75
61
142
133
81
99
83
140
196
87
102
153
100
103
78
114
159
96
131
142
107
123
119
114
100
106
189
120
98
116
96
161
64
120
46
63
157
106
71
164
133
52
98
148
70
112
95
155
128
114
85
75
50
116
112
81
96
65
113
92
78
139
83
94
68
114
66
219
80
97
153
115
55
85
92
126
137
151
80
112
80
48
101
147
82
95
75
74
140
88
70
60
176
111
91
127
163
192
135
87
49
92
104
112
178
85
70
106
121
92
110
189
79
154
108
88
66
72
57
95
120
123
160
148
62
124
60
196
57
125
53
93
127
130
93
76
57
95
111
97
68
62
102
108
82
118
120
83
87
114
144
82
97
105
124
63
76
104
73
80
90
40
74
150
96
145
105
86
87
88
143
97
100
154
48
84
106
75
119
84
69
95
150
62
92
90
180
88
87
45
128
142
120
136
68
105
148
137
155
134
38
109
166
136
58
87
102
118
150
107
59
182
129
129
45
74
73
170
124
76
70
83
135
67
111
72
139
86
64
128
162
75
71
104
67
117
113
84
105
120
67
95
59
145
66
79
97
96
102
61
104
108
110
135
96
34
130
165
102
65
114
97
96
94
113
79
127
92
125
55
121
82
127
69
62
144
88
92
101
120
184
40
105
85
133
102
140
96
60
76
125
87
82
75
78
81
93
131
162
87
165
189
116
41
74
109
98
126
197
124
111
114
153
78
164
95
71
95
58
89
95
66
160
75
95
63
133
86
137
109
55
47
82
100
141
91
168
120
109
49
111
134
74
123
67
105
38
137
100
146
113
135
88
100
48
97
98
132
93
107
52
144
187
82
84
96
75
130
90
74
48
72
114
108
103
104
120
101
147
50
104
137
99
92
160
78
109
101
85
148
76
111
89
113
93
165
86
128
87
160
71
106
87
261
109
83
120
86
98
93
139
77
189
96
77
82
106
119
109
97
137
76
152
161
82
48
74
126
115
86
60
142
104
104
116
172
84
161
157
84
118
104
132
61
103
119
94
125
72
85
132
171
118
88
54
157
84
45
95
147
101
58
144
115
63
101
108
141
130
108
136
72
117
108
152
135
58
54
54
71
116
135
60
86
92
140
84
54
65
96
104
80
150
59
132
121
111
136
221
37
61
57
44
107
88
114
115
105
88
72
114
196
110
97
128
74
86
44
61
214
64
93
60
103
60
169
128
114
48
71
111
126
121
87
59
109
109
145
135
66
97
66
69
102
94
102
171
147
88
104
118
109
76
40
147
108
97
88
140
130
104
204
90
103
130
88
151
109
59
138
104
99
123
112
127
129
125
137
135
148
75
89
61
81
87
86
106
130
85
47
83
90
90
49
154
117
128
107
67
120
197
94
174
97
150
157
80
83
80
99
117
127
54
121
144
180
61
112
84
170
51
69
143
71
116
150
162
76
67
79
104
112
147
146
56
104
119
149
98
92
175
123
211
48
101
109
95
93
116
75
109
105
65
70
44
125
186
115
120
154
39
95
81
72
164
134
57
87
90
185
129
103
136
119
123
74
122
117
114
132
83
47
112
104
124
53
103
146
110
156
73
167
169
50
167
113
93
40
92
105
102
62
88
111
91
121
98
106
117
145
45
72
150
125
84
93
45
115
140
87
150
97
119
100
112
64
87
100
54
99
194
97
106
132
92
124
102
120
61
75
112
145
100
109
58
80
93
82
61
118
70
47
74
154
40
116
156
103
84
92
196
74
116
85
127
120
64
75
69
106
89
73
181
61
106
116
134
162
68
105
98
51
49
134
125
101
68
85
87
86
141
113
106
67
61
68
115
110
144
130
64
160
95
54
85
104
158
89
66
138
150
151
88
185
58
79
121
46
127
90
168
92
129
101
75
108
161
65
95
92
173
80
118
31
108
146
96
134
88
71
75
82
179
133
95
74
97
60
153
88
118
115
84
62
63
86
99
98
82
96
95
133
75
156
52
156
146
109
119
74
106
87
170
69
70
118
76
131
128
118
135
114
119
87
119
101
54
115
110
205
78
112
114
109
131
103
158
103
95
68
94
106
98
118
90
148
79
132
38
110
126
107
99
100
113
79
78
139
115
89
97
149
55
143
85
123
78
102
78
109
82
128
100
119
103
119
142
76
107
179
85
67
102
77
83
142
88
92
85
105
58
80
138
101
110
100
147
248
143
90
57
153
77
106
111
117
97
152
177
85
123
113
99
104
150
83
122
99
57
112
82
99
85
131
139
100
147
41
142
71
150
80
125
102
90
76
196
105
121
74
118
75
161
91
132
41
150
90
103
66
102
90
149
84
126
116
106
80
101
63
57
147
82
91
118
147
130
64
96
106
139
110
121
211
68
69
84
78
84
77
124
83
195
70
139
104
93
72
94
41
99
131
187
63
66
152
27
75
60
137
97
120
39
96
103
184
137
136
133
69
71
98
121
113
89
72
129
78
61
112
141
144
85
52
66
107
106
62
96
98
154
152
147
109
99
66
88
122
78
136
90
59
78
156
154
73
98
154
74
68
67
117
287
134
115
118
94
95
62
77
114
98
74
135
70
128
104
80
57
95
86
130
64
106
106
94
99
136
68
44
78
123
96
133
88
81
116
113
93
108
124
63
106
47
117
182
100
86
112
132
63
138
156
102
145
87
117
124
151
114
176
95
127
161
180
113
224
103
58
111
135
113
181
161
99
177
105
240
54
198
55
162
122
144
108
83
76
96
80
142
106
115
84
118
219
80
61
95
95
55
112
62
68
191
91
158
122
144
118
66
96
85
83
82
57
77
152
133
110
78
193
79
73
106
112
94
42
142
139
103
118
139
91
110
59
135
125
138
97
64
106
194
71
99
124
133
72
118
73
126
136
35
84
108
90
134
211
138
196
104
99
158
122
134
126
131
69
81
83
85
50
103
102
69
62
53
160
74
130
31
44
123
95
85
142
99
87
93
96
129
165
182
101
76
125
140
89
112
65
94
114
114
103
79
149
79
139
54
104
75
49
88
88
71
175
142
103
98
146
70
136
90
54
67
120
76
54
62
138
104
132
92
54
43
148
129
68
127
112
84
107
111
91
68
138
62
60
90
100
102
147
128
103
85
181
79
80
79
126
86
113
59
97
84
127
76
129
66
117
102
63
125
80
96
109
173
158
85
157
127
90
114
104
94
60
144
96
64
83
106
151
90
96
138
112
57
120
95
127
84
135
104
95
98
97
111
92
72
76
66
90
133
104
103
83
133
68
110
94
98
76
108
102
155
99
68
149
80
88
149
131
101
132
102
53
131
154
97
106
91
213
99
107
96
136
152
40
85
79
210
83
186
46
73
105
136
95
153
106
79
137
84
75
69
93
96
100
186
153
59
57
104
52
60
90
119
142
72
158
121
108
60
126
159
131
79
149
143
94
74
133
80
101
147
53
94
87
89
192
116
60
79
113
125
84
86
127
125
78
164
112
132
60
90
129
78
137
139
85
145
98
94
84
142
162
62
156
85
126
120
145
73
183
58
81
130
120
84
84
92
55
147
101
132
57
115
117
114
141
111
79
152
93
113
123
81
117
76
111
86
119
74
64
81
103
111
122
112
104
105
93
138
99
87
75
88
105
133
129
182
120
72
188
153
57
118
94
77
76
106
86
104
180
172
126
107
154
95
66
100
137
190
127
108
99
59
127
106
77
149
150
127
84
118
98
125
54
122
70
75
72
69
165
116
133
68
163
88
85
132
134
93
65
110
82
114
80
125
71
81
130
109
73
93
58
111
124
193
59
85
167
99
138
118
124
163
143
163
49
106
76
147
95
67
90
77
94
82
123
105
50
102
123
224
68
195
59
100
125
89
125
177
47
128
87
91
67
114
69
73
90
125
96
77
207
174
152
126
100
82
84
115
73
140
134
112
140
142
74
93
157
107
162
158
95
129
121
75
170
126
153
99
121
84
94
79
65
102
205
103
108
191
124
99
133
116
77
123
89
155
108
64
104
186
69
145
75
159
56
111
84
91
136
196
81
88
97
94
72
110
113
134
111
102
78
75
72
89
164
131
140
66
104
101
76
156
85
157
81
97
79
149
100
92
137
159
90
134
135
112
146
107
69
97
91
77
61
63
160
55
119
61
81
78
134
126
161
115
99
102
169
85
89
80
170
84
36
77
145
141
112
54
138
119
59
99
114
116
144
135
131
119
131
138
71
52
99
135
116
145
136
149
68
90
35
109
102
114
70
79
79
62
134
193
105
105
70
97
66
123
83
135
63
73
119
109
90
85
97
114
111
166
101
146
66
87
124
89
80
122
200
90
109
67
52
97
119
138
96
109
160
121
205
121
201
135
107
160
172
115
26
131
126
150
70
111
110
99
115
112
95
126
39
146
106
67
129
151
78
122
129
47
82
86
136
88
71
106
101
50
98
147
109
171
53
125
61
123
124
182
59
74
88
101
60
69
106
123
126
85
45
135
131
153
52
54
75
94
131
60
112
17
155
135
228
88
55
137
119
89
112
114
147
83
79
141
168
35
129
125
132
104
163
54
92
191
75
116
48
100
125
89
149
138
83
98
165
104
67
97
90
100
67
105
98
118
114
109
47
129
118
151
91
101
136
131
116
89
184
44
133
83
78
150
110
133
80
76
63
108
114
44
167
141
76
132
95
70
144
72
58
225
129
36
52
107
73
138
74
98
117
161
67
87
157
158
82
138
129
93
108
115
98
42
131
126
127
90
74
134
107
104
82
165
125
120
153
89
100
66
124
100
93
133
90
98
185
88
135
53
58
125
115
143
107
71
103
101
124
103
107
77
113
90
80
111
69
166
162
142
81
162
99
164
133
170
108
69
62
158
110
119
177
77
150
140
79
106
116
103
54
141
76
121
154
95
113
95
133
95
112
136
95
57
103
50
86
136
113
110
80
148
139
62
84
99
124
62
67
88
116
90
107
159
128
72
127
81
155
124
116
68
143
69
130
102
114
132
109
99
87
167
124
170
101
97
87
66
107
117
102
88
75
81
118
61
137
196
115
107
93
76
59
119
127
103
151
98
117
126
74
76
114
130
106
110
40
111
143
167
143
162
112
123
95
152
66
81
145
102
99
87
106
82
94
143
96
115
70
151
108
145
157
158
102
65
125
203
91
106
78
124
49
92
85
134
74
136
72
84
140
126
84
128
131
135
143
96
91
70
116
106
98
70
74
80
106
100
174
88
88
102
112
108
107
112
72
145
122
110
47
293
112
135
61
60
155
82
104
185
162
70
115
145
96
107
181
105
116
105
115
109
109
115
80
110
104
119
68
69
85
71
69
104
91
123
159
102
114
180
137
43
173
81
62
74
106
89
101
144
80
140
106
87
65
56
151
106
81
94
96
50
77
104
170
116
162
97
96
150
166
198
73
82
129
150
63
135
100
69
133
56
54
75
79
107
79
129
128
134
112
53
68
46
74
119
104
105
99
132
148
138
127
147
82
105
65
86
70
121
148
71
140
164
69
110
132
144
41
75
94
124
73
122
42
71
83
83
122
63
105
122
51
178
79
108
64
65
183
184
161
118
102
43
129
87
90
44
81
142
94
133
96
104
85
149
86
144
174
99
103
76
105
81
129
94
72
98
118
63
188
54
137
148
109
70
89
139
52
63
139
214
143
97
81
85
86
163
106
80
78
112
95
137
61
169
148
66
126
84
59
80
119
71
96
192
111
119
80
96
89
134
202
132
73
81
53
118
97
83
167
136
68
93
78
178
214
133
66
60
150
161
60
125
52
103
129
76
111
136
78
77
55
51
109
120
118
147
72
174
103
83
124
137
91
58
64
116
123
162
113
123
86
96
90
94
108
117
132
98
69
113
110
95
59
73
116
116
104
82
64
175
80
162
66
165
121
62
109
83
146
121
55
79
55
60
95
76
85
55
81
197
43
108
41
115
112
78
168
72
71
64
122
172
173
78
77
129
87
118
102
94
29
127
67
125
70
78
120
166
131
134
71
208
112
86
134
157
60
93
83
118
129
91
73
177
83
144
156
104
61
156
106
133
52
144
41
142
31
112
55
107
100
85
154
93
51
116
74
140
128
101
103
116
59
104
84
38
133
95
35
59
143
95
128
51
142
122
45
141
156
99
39
94
141
92
64
144
119
153
84
92
75
103
152
150
158
43
115
100
61
48
99
68
52
136
128
112
61
54
115
175
131
122
161
69
89
87
107
125
70
61
73
109
159
73
52
100
131
125
102
119
79
88
97
135
121
89
119
117
108
199
130
86
126
150
164
56
86
78
52
77
85
125
68
135
140
101
135
82
111
114
60
93
95
63
110
133
120
69
168
101
153
83
241
134
87
97
183
161
121
99
52
90
146
188
94
48
118
53
74
98
63
75
166
48
134
156
162
90
110
130
117
87
59
120
158
234
143
184
121
58
177
117
145
139
100
61
99
84
130
131
110
116
137
127
112
80
77
98
67
108
166
114
189
68
123
111
234
168
60
58
114
118
128
81
118
85
135
134
124
154
90
111
68
143
121
105
157
70
140
76
173
116
90
168
64
105
63
52
60
43
132
125
90
63
146
117
66
122
165
158
86
95
68
159
94
131
46
167
52
57
57
143
188
152
191
115
110
149
69
61
96
93
104
88
147
133
89
96
111
159
84
69
98
178
70
53
43
86
133
156
68
74
149
100
74
126
132
102
88
114
75
136
152
120
117
54
122
75
99
96
62
129
100
96
111
138
138
84
94
148
91
182
166
90
72
73
199
117
125
72
126
91
148
149
67
107
73
100
165
77
182
126
175
99
106
127
106
73
129
73
107
51
109
60
64
76
89
40
95
56
92
97
108
68
109
71
108
84
114
107
48
138
80
170
134
76
164
77
104
94
99
105
108
98
87
159
201
92
65
100
75
46
109
116
177
89
138
74
123
119
110
84
113
89
79
170
128
120
90
211
144
132
70
147
115
73
69
126
94
97
102
76
74
112
64
126
159
142
134
66
62
98
54
106
190
90
61
130
121
128
136
83
102
101
111
132
112
133
108
96
91
121
145
137
230
128
126
62
73
80
133
89
77
51
93
45
110
150
89
119
99
75
67
81
135
140
89
60
74
125
94
83
76
65
65
84
82
118
55
123
98
117
233
52
111
65
63
104
35
137
60
81
147
156
115
78
70
86
132
87
89
43
133
174
162
143
63
137
64
99
165
66
91
119
104
92
140
56
146
74
101
161
112
73
86
79
111
77
189
99
154
55
110
129
70
109
73
103
63
173
57
81
123
60
145
119
60
95
60
76
44
107
96
97
50
140
79
55
64
106
120
95
100
30
107
106
79
240
70
49
129
91
112
93
114
53
66
74
123
101
68
104
136
55
114
59
52
73
86
104
118
73
154
129
66
71
147
94
85
93
177
107
74
124
51
104
67
106
126
96
112
166
19
184
39
122
91
52
131
85
87
75
130
72
165
90
53
83
89
84
103
182
146
116
61
75
126
98
127
71
75
116
91
64
93
154
92
114
131
90
129
158
54
63
108
132
123
120
103
126
96
93
181
78
98
128
99
114
94
97
52
193
74
82
141
88
124
117
100
121
83
116
91
167
106
108
70
124
83
88
31
146
102
146
126
135
106
67
155
145
42
87
54
109
166
109
125
101
80
64
122
71
74
115
169
80
126
123
100
185
133
99
147
117
108
119
88
131
53
67
101
126
81
117
118
109
112
97
90
145
97
76
61
136
146
97
112
53
95
76
83
126
220
97
83
108
152
171
118
134
67
88
78
72
80
157
95
60
107
102
61
152
95
117
90
70
129
175
56
85
123
111
77
111
120
80
72
57
157
202
120
133
110
174
100
96
119
84
96
70
174
152
58
123
73
160
114
152
48
94
89
127
132
69
77
120
132
109
71
94
146
79
113
120
104
143
80
88
105
117
193
177
192
42
69
91
97
99
85
81
68
108
176
98
74
31
61
118
111
104
88
100
135
78
119
89
63
100
94
87
40
149
93
84
109
108
145
56
207
127
55
133
86
104
165
97
84
151
104
86
87
238
76
125
93
87
122
44
93
141
126
126
176
124
74
40
114
152
71
79
99
108
38
85
70
111
130
84
163
251
154
121
79
80
61
113
81
117
115
78
33
62
184
69
120
107
86
65
181
122
148
49
47
106
120
89
145
95
58
238
81
80
82
124
110
128
63
134
68
160
165
75
76
122
78
110
52
62
88
158
52
94
160
94
87
123
66
117
92
48
65
161
75
196
117
76
184
115
165
69
122
82
173
118
134
88
204
103
165
140
131
109
108
125
97
190
99
102
69
83
113
127
58
153
165
100
58
153
63
146
52
79
70
102
92
213
100
109
126
77
110
74
104
83
63
138
152
86
135
65
113
78
88
98
66
70
133
64
152
127
94
72
97
61
72
104
115
149
116
94
161
133
93
157
124
109
107
96
173
143
96
129
96
99
202
120
129
83
55
71
166
112
149
84
86
120
101
91
109
55
91
152
109
37
69
122
98
117
94
85
74
172
80
64
92
65
99
138
49
79
140
121
125
111
113
134
53
119
132
256
84
117
88
134
55
108
128
76
57
120
111
84
81
61
180
90
94
73
129
97
87
122
150
158
131
131
92
94
66
94
105
161
82
110
69
116
75
104
117
160
102
168
66
56
70
156
86
97
112
118
77
56
111
100
182
65
75
70
65
170
137
105
63
173
98
51
137
109
68
126
98
123
126
118
65
103
48
144
136
41
57
108
127
65
145
52
110
110
107
134
124
98
106
111
87
93
95
106
72
117
158
84
164
99
78
109
80
169
107
125
123
89
123
84
116
93
107
64
108
104
86
147
164
72
75
49
100
75
83
83
50
149
124
93
54
168
131
98
112
174
154
114
128
70
136
159
78
36
64
139
124
99
150
184
132
152
99
161
198
112
149
136
81
220
54
143
90
41
57
135
149
67
68
105
142
43
30
65
46
167
95
171
33
166
72
170
61
145
174
97
105
49
94
125
65
108
44
141
51
113
69
120
123
177
59
96
54
107
50
125
99
176
211
146
69
128
173
159
105
132
61
75
109
101
101
89
49
122
197
145
102
98
134
126
83
233
112
110
114
45
105
121
142
69
153
55
66
41
145
66
82
69
120
127
102
100
119
104
47
75
108
119
163
50
106
129
174
62
91
109
159
90
47
88
132
75
83
58
114
68
103
87
108
110
56
183
111
94
110
138
96
51
184
71
156
102
89
99
94
142
82
159
96
80
58
26
86
60
112
73
84
168
104
73
100
108
54
86
146
61
219
82
155
83
118
66
116
122
103
130
146
81
112
95
146
73
191
90
94
107
159
220
75
74
95
155
107
164
116
69
102
115
56
49
125
66
72
77
71
220
174
130
93
106
90
162
107
117
61
139
162
66
102
65
91
153
129
145
83
135
111
199
87
187
97
117
98
138
117
45
66
86
117
81
109
128
122
102
154
100
128
78
86
58
102
313
100
154
79
97
77
111
101
70
77
137
103
91
163
86
83
93
73
82
115
206
66
136
63
77
80
107
58
57
41
37
88
65
84
85
131
100
79
48
134
176
159
58
108
72
222
63
85
84
66
73
78
195
99
99
126
95
111
86
155
102
137
58
95
39
108
107
61
108
143
94
104
96
80
126
128
82
75
135
201
111
85
66
105
148
90
110
90
42
142
56
136
130
71
26
60
70
167
121
64
82
136
147
80
59
78
157
133
137
102
111
74
68
100
79
123
100
87
228
103
160
67
144
75
111
104
159
86
127
70
91
79
84
133
75
117
213
122
125
144
135
112
81
116
57
60
98
76
67
91
81
89
112
135
171
113
138
105
118
137
137
101
66
160
39
97
126
117
105
99
72
106
44
133
151
67
46
117
91
86
108
70
74
70
164
112
52
167
88
102
79
116
85
115
97
173
148
110
72
63
126
135
96
82
37
111
101
130
83
87
29
88
72
92
105
95
83
100
65
165
98
109
141
102
142
132
133
63
79
159
79
209
128
78
88
61
109
171
101
56
117
77
108
60
137
118
124
66
156
105
164
93
125
157
112
87
193
95
63
72
121
137
68
135
132
92
154
52
147
135
86
77
114
195
74
145
78
141
135
80
174
67
57
106
142
102
59
58
73
89
71
84
111
75
120
82
58
129
151
114
51
109
105
201
154
150
148
134
124
125
131
125
187
54
73
87
54
128
96
89
131
108
126
112
161
116
130
124
82
95
100
85
121
238
90
103
100
128
75
75
78
127
89
56
67
107
67
103
67
124
93
69
123
80
136
44
98
83
46
160
140
103
88
114
93
64
43
46
113
73
118
129
76
133
70
80
134
80
117
44
98
125
186
120
137
112
134
107
105
104
107
107
78
93
152
88
77
214
109
184
160
176
113
152
93
131
97
44
84
78
40
154
162
135
67
135
94
71
119
222
117
90
74
132
86
120
132
102
80
93
180
71
115
49
89
53
175
92
137
148
191
111
134
160
112
133
98
124
107
172
120
76
118
157
198
87
54
171
76
93
145
62
89
59
98
114
80
151
76
84
65
72
101
189
151
78
62
127
55
153
120
96
121
129
131
89
100
177
160
63
87
95
108
92
76
182
42
164
60
70
105
133
98
146
111
117
91
113
61
90
173
107
69
143
177
169
124
98
88
111
148
78
126
86
112
174
124
154
128
146
117
71
92
113
114
88
124
80
72
87
125
137
124
50
91
106
79
88
104
97
117
102
63
62
130
87
97
106
146
69
206
111
118
92
106
96
52
156
63
49
116
168
87
71
55
138
116
135
29
45
88
160
200
110
151
124
99
163
178
122
168
95
96
134
103
93
121
91
99
128
121
70
115
125
80
133
102
73
118
66
103
74
115
50
152
146
115
118
82
85
76
88
90
112
93
75
53
165
111
211
144
112
108
142
83
92
153
156
83
72
92
124
182
120
118
189
73
171
128
62
128
177
87
69
79
86
66
101
96
70
58
116
96
140
97
84
115
123
84
90
100
109
57
120
41
96
84
57
90
117
168
63
116
55
68
97
254
156
119
139
182
126
138
154
128
60
109
183
77
96
112
160
122
58
121
89
86
151
80
86
68
155
70
89
174
57
84
134
61
138
170
144
95
91
117
130
57
163
151
138
115
104
50
155
179
79
117
43
128
76
109
116
118
69
158
35
150
157
45
71
86
59
123
91
98
103
88
68
120
101
105
68
115
101
117
185
143
103
123
102
141
86
119
84
72
77
35
55
115
153
89
76
128
101
102
47
59
165
193
167
85
77
159
117
131
73
91
117
179
124
47
115
73
56
108
62
49
107
70
135
135
58
118
69
110
74
191
66
97
29
97
129
176
58
77
176
81
58
186
112
78
125
118
130
149
105
91
193
159
67
62
96
95
112
114
67
58
85
113
114
159
64
117
109
211
103
185
184
127
128
80
123
179
86
80
53
157
37
199
154
103
138
100
121
103
148
76
62
73
170
124
146
72
124
122
149
118
97
84
142
70
121
98
71
137
64
132
35
86
96
169
113
132
55
163
86
146
102
82
95
80
46
87
114
134
121
92
120
103
77
103
117
83
117
120
180
130
82
177
118
116
89
115
124
155
41
70
85
195
119
91
131
51
78
76
102
136
130
113
123
156
108
135
101
135
115
168
128
121
245
82
59
113
111
42
119
105
117
114
85
74
38
131
103
92
93
81
96
92
116
97
98
96
129
71
142
142
53
105
109
43
171
37
152
125
79
106
62
49
63
78
92
99
153
139
68
168
210
130
110
66
174
95
141
101
124
121
140
88
83
111
95
193
69
103
115
101
127
91
141
176
127
197
125
60
173
75
108
131
74
95
100
89
74
97
107
145
157
80
43
129
121
107
85
65
212
73
69
63
80
215
134
114
79
161
157
107
64
121
85
85
116
127
138
90
128
69
172
83
77
117
87
118
93
74
99
128
108
85
71
97
121
127
103
62
91
136
66
66
176
108
84
96
118
100
128
94
87
60
107
79
71
149
64
69
199
47
119
133
78
51
108
102
145
45
80
155
131
83
198
131
106
52
200
155
84
69
119
128
61
70
53
76
55
90
55
140
106
99
83
54
97
117
66
119
121
96
96
99
104
80
127
115
76
123
79
120
102
82
55
113
98
35
104
84
214
68
145
74
107
97
81
113
107
90
88
108
83
97
52
39
95
39
166
90
124
93
133
122
102
127
177
110
87
170
143
176
65
61
60
67
108
141
142
136
70
91
41
95
66
64
71
70
112
159
102
81
176
93
147
154
67
103
164
81
139
86
221
119
122
52
100
116
103
81
68
130
74
81
245
106
80
89
65
67
95
60
87
105
154
75
69
172
63
57
78
90
125
122
122
67
41
100
160
125
71
59
66
109
90
100
129
92
117
100
82
183
96
68
171
64
80
124
34
158
69
125
105
103
139
139
74
141
142
150
140
90
73
72
150
111
91
70
107
160
75
86
102
56
65
106
84
107
100
88
144
61
87
107
79
117
131
113
68
112
66
141
49
90
83
78
137
89
100
74
113
84
70
121
84
106
94
111
140
84
166
106
89
168
167
44
79
62
56
142
142
142
156
167
95
102
182
116
74
130
77
79
58
79
128
117
122
125
71
119
95
72
185
117
73
117
84
161
140
122
153
126
88
130
64
88
79
57
112
195
232
114
90
98
237
115
96
112
48
73
68
75
82
208
91
137
85
49
124
75
126
139
44
89
75
105
126
125
126
68
136
99
107
121
94
55
104
126
156
166
72
105
70
113
75
47
129
84
159
177
129
120
103
87
80
82
90
119
59
59
89
129
158
121
60
86
136
102
141
203
75
131
77
65
131
104
128
170
44
79
78
77
138
70
104
33
98
83
125
103
146
71
131
125
114
47
42
158
94
70
119
97
92
121
143
83
126
95
109
137
139
128
48
98
119
109
82
88
43
89
84
59
64
113
89
72
102
37
70
124
94
39
64
58
86
121
69
64
134
160
54
150
105
96
113
163
80
160
221
161
57
77
66
114
109
187
78
129
146
60
132
100
56
63
108
96
91
97
135
112
71
85
108
137
78
134
164
123
108
43
82
118
78
109
73
60
119
84
95
102
108
58
51
135
59
60
110
108
188
64
207
157
73
92
153
34
124
115
113
127
90
98
82
86
89
70
73
42
68
52
140
116
70
126
132
86
66
61
122
78
61
172
103
145
154
166
44
82
121
173
137
121
144
96
28
52
28
163
106
58
49
78
161
91
118
90
128
120
127
153
77
68
60
116
35
192
103
127
50
78
65
99
106
91
113
67
144
63
85
63
77
102
103
156
144
81
103
91
98
176
146
225
84
71
97
124
129
66
68
122
55
121
134
114
164
149
77
128
113
77
115
128
148
108
76
108
133
93
80
167
105
54
202
42
56
116
189
179
88
150
96
100
80
75
113
111
26
191
99
146
170
100
96
111
42
85
80
73
173
45
89
89
72
135
171
96
82
96
122
85
156
130
107
108
114
130
29
181
118
121
130
120
138
113
62
80
46
146
89
108
71
191
89
90
85
66
60
97
135
111
103
132
55
215
118
150
63
82
89
107
126
78
95
100
148
51
105
90
123
60
91
127
52
105
74
123
75
98
102
93
141
89
76
106
94
130
98
166
125
115
234
149
122
119
103
137
92
118
71
83
89
108
91
119
108
135
109
148
101
165
95
83
148
145
132
101
183
93
127
59
149
166
99
89
97
87
103
130
55
93
72
111
62
60
187
94
80
98
107
59
81
64
88
34
79
80
128
56
77
84
83
73
135
129
177
99
178
80
90
105
158
87
141
165
173
102
108
77
92
93
93
120
65
123
194
55
38
106
91
131
94
137
128
116
135
78
76
72
44
108
96
129
163
71
72
69
63
106
83
119
168
139
54
99
65
56
112
90
112
64
81
68
168
138
61
131
85
86
130
51
177
118
110
124
67
100
107
84
77
128
165
77
122
78
84
162
76
52
161
113
102
140
75
40
35
97
108
118
40
83
128
229
85
78
159
148
94
115
50
103
139
38
110
153
125
183
112
130
153
106
95
68
34
91
110
151
129
95
154
139
78
120
125
97
93
146
147
141
133
129
107
127
89
78
67
88
91
97
142
136
120
115
161
129
158
132
71
117
108
66
175
90
65
65
246
97
62
82
90
107
130
98
111
68
127
110
136
119
57
67
119
153
84
110
96
98
115
62
132
77
79
198
58
140
120
72
55
116
143
115
190
59
116
142
100
71
83
118
59
70
99
53
49
140
84
106
102
51
43
80
82
107
125
134
70
184
73
73
67
62
95
164
108
99
149
121
113
89
136
91
117
96
146
106
139
109
81
125
77
85
68
88
91
72
118
122
65
88
133
66
102
83
120
91
89
93
139
61
142
117
68
80
85
110
49
124
55
66
241
78
88
130
99
147
113
95
135
120
37
144
158
166
106
104
113
139
152
114
105
150
132
146
93
123
79
72
114
62
53
80
111
63
68
121
113
79
173
139
110
63
136
76
91
96
111
76
76
107
113
93
74
57
86
98
87
59
68
119
103
135
37
103
89
124
122
81
130
79
93
146
100
128
121
174
138
67
145
88
110
109
73
92
86
136
140
111
193
74
75
130
93
99
132
79
91
96
61
173
88
90
115
103
60
155
63
64
85
133
144
107
89
187
51
146
49
115
101
82
110
139
191
93
106
126
62
99
117
137
123
99
125
154
48
77
107
97
138
228
74
111
54
129
85
118
96
87
110
62
111
65
145
109
53
152
111
69
105
77
110
171
108
121
112
189
146
90
97
83
57
109
76
94
120
149
152
134
138
46
71
75
64
76
89
108
113
111
132
65
189
90
75
79
60
120
135
113
111
123
146
104
110
158
92
104
167
110
57
111
85
110
78
166
103
102
95
121
42
135
86
115
108
84
156
126
67
74
104
118
125
61
120
124
119
80
103
87
75
152
164
123
112
76
150
132
104
134
88
129
37
58
82
128
150
116
63
92
101
108
59
92
101
87
105
121
67
58
151
167
132
94
107
58
118
111
87
87
146
47
121
166
85
119
144
151
140
92
176
152
108
170
106
96
43
111
69
84
105
133
144
104
150
84
121
81
146
102
132
69
123
86
151
85
134
75
69
55
85
157
109
164
85
78
72
98
51
164
64
90
126
126
106
124
168
191
125
139
108
146
87
63
111
76
124
86
97
122
93
158
58
84
143
216
94
169
101
113
92
75
209
111
97
67
134
142
109
80
130
118
62
74
146
117
136
76
135
110
53
161
127
116
111
133
51
89
89
87
89
128
156
141
97
50
89
106
118
135
103
168
120
129
122
85
102
67
95
104
78
135
101
148
171
61
111
57
100
107
144
156
120
170
124
72
67
147
126
137
129
52
52
135
39
86
73
267
160
140
83
59
130
93
71
164
115
126
80
88
51
127
55
81
102
165
70
121
128
107
195
72
95
102
110
173
109
120
157
62
74
61
141
79
110
118
128
134
137
67
145
96
111
149
132
166
119
56
127
124
124
97
90
95
146
129
94
93
81
140
112
123
91
78
53
52
86
86
89
111
68
134
121
109
87
159
208
99
91
81
149
147
116
125
56
81
85
52
123
101
86
133
119
130
88
134
100
101
175
107
50
78
151
160
215
116
78
78
78
116
143
158
48
36
55
78
126
124
160
42
70
48
96
136
93
122
109
70
59
101
121
104
86
114
86
167
76
91
110
100
127
106
69
80
148
100
182
91
169
99
115
112
162
118
74
101
142
77
117
144
97
51
87
171
102
129
198
57
96
71
82
104
154
91
88
113
182
139
135
116
148
106
94
103
99
87
152
70
152
75
83
127
140
150
93
34
85
115
125
147
83
69
92
127
87
103
88
74
77
110
111
75
110
99
95
116
102
120
99
97
98
142
63
60
95
78
109
152
142
108
68
103
88
186
160
137
91
146
99
137
119
64
59
110
60
117
154
68
135
152
145
122
102
133
112
53
122
62
93
77
106
74
85
70
85
76
140
115
209
46
87
101
162
71
73
109
135
191
124
54
132
154
155
184
150
71
99
142
120
144
206
100
53
115
117
74
129
41
148
89
138
111
100
97
126
59
150
90
71
132
126
125
125
79
68
72
111
226
153
101
168
126
149
78
132
108
107
81
127
75
86
88
102
55
129
132
82
88
115
108
111
76
128
207
84
85
90
87
88
100
64
77
101
146
251
97
107
121
84
140
146
72
129
98
102
80
116
132
121
70
124
136
142
132
109
74
57
102
63
123
56
145
97
79
92
72
83
95
97
120
74
131
124
82
167
56
152
118
134
213
80
99
103
53
75
160
98
132
126
120
124
50
50
154
91
65
117
152
124
85
94
113
131
57
71
147
126
78
125
110
47
79
119
172
101
120
99
149
115
146
146
137
111
64
61
171
93
66
75
111
136
73
107
156
219
124
178
84
74
157
165
58
104
108
56
196
80
60
116
69
78
40
108
69
111
99
87
108
60
128
42
67
120
70
175
96
149
75
115
63
135
170
169
84
241
155
78
165
62
67
179
108
104
93
91
162
172
110
93
141
87
156
225
93
100
106
103
112
168
72
87
96
114
152
50
132
117
95
70
146
94
117
168
82
68
128
82
102
66
84
55
95
189
122
229
123
83
137
110
50
134
141
118
135
91
44
124
154
51
75
156
79
89
85
132
85
135
217
79
114
123
98
87
141
171
106
122
70
47
63
106
84
98
89
168
148
123
35
159
50
92
107
129
66
90
42
102
59
85
93
69
183
127
89
153
62
86
161
92
124
81
103
121
58
68
139
124
106
92
105
26
92
61
130
71
62
89
73
73
84
142
81
83
112
81
83
136
135
120
66
96
108
154
55
87
104
108
86
73
154
96
40
134
106
172
102
119
51
88
110
105
113
107
97
73
80
96
79
82
55
123
66
125
122
59
42
102
98
89
111
72
152
131
198
90
99
114
116
123
130
91
115
98
118
176
140
133
60
125
66
88
79
113
59
176
50
57
72
166
87
63
57
114
88
89
115
85
118
107
130
97
72
119
136
108
78
136
195
100
95
78
100
109
195
114
158
113
118
92
49
124
92
114
92
101
124
66
109
101
66
91
93
103
129
60
175
115
117
72
92
81
93
106
81
162
166
45
146
108
91
102
112
120
62
47
148
64
151
130
103
118
109
128
106
90
162
65
81
99
123
126
135
107
101
173
120
111
96
68
84
186
74
76
88
134
52
168
88
139
69
79
118
101
118
154
81
112
101
68
63
151
113
60
126
131
98
131
87
112
121
116
95
56
87
139
75
139
164
57
107
97
106
70
112
47
68
174
95
80
96
123
71
162
163
73
165
134
136
103
117
64
110
154
98
110
121
113
140
65
63
96
86
81
119
160
93
87
111
101
88
148
108
159
61
166
68
138
117
97
95
92
85
88
132
117
94
150
161
78
106
99
203
190
133
53
94
36
131
67
80
78
114
99
104
113
86
121
144
52
107
127
148
89
113
58
84
145
163
102
126
189
124
101
93
197
99
130
42
172
72
105
65
167
86
67
119
92
118
39
109
48
90
134
221
195
115
140
127
94
102
48
105
66
90
93
89
76
146
176
129
104
231
254
49
71
125
284
105
84
131
84
95
115
105
79
31
48
124
111
111
126
122
100
58
115
44
123
114
87
91
115
109
79
95
54
92
91
138
181
130
103
74
95
68
136
101
94
48
140
41
152
66
76
54
62
163
82
126
81
110
61
100
182
86
97
109
77
94
97
75
177
194
64
168
156
107
136
101
127
126
129
150
101
93
157
170
106
134
115
102
76
83
94
103
109
66
82
164
201
90
158
115
62
170
41
106
126
104
91
156
93
103
106
96
135
230
124
169
102
128
89
71
55
86
79
101
148
88
32
83
117
107
140
101
131
125
160
112
109
83
221
128
81
95
91
54
134
183
115
127
110
124
141
163
153
138
116
53
222
113
104
128
143
104
63
68
70
59
69
102
56
115
76
70
114
100
109
89
69
98
78
104
63
74
77
147
109
131
73
93
80
122
136
35
74
66
87
52
175
93
136
113
157
138
115
115
101
141
136
43
143
86
120
91
135
85
98
121
51
122
126
46
121
76
53
106
67
70
121
131
138
78
97
169
131
78
127
100
108
79
100
86
129
140
112
41
109
106
99
73
106
90
132
144
87
81
143
76
138
159
51
87
73
102
107
70
119
94
74
41
88
100
107
127
100
118
99
84
177
119
112
163
104
120
56
134
91
73
111
95
84
78
118
129
76
51
96
109
125
87
104
70
91
130
157
65
97
58
85
86
83
48
80
92
130
222
107
115
92
94
165
50
122
104
103
169
49
70
132
60
70
88
115
164
124
128
102
224
66
86
104
85
60
48
161
62
197
93
96
162
170
142
107
99
55
78
69
72
31
91
126
132
115
53
86
116
71
68
40
143
108
56
49
123
93
106
67
55
68
155
130
91
95
85
71
108
176
78
69
173
105
162
89
109
160
70
85
72
89
96
106
115
165
86
98
82
84
105
87
210
101
158
107
104
121
73
114
137
104
140
129
120
92
134
68
215
88
86
155
93
107
129
78
107
118
102
119
71
111
110
201
146
152
179
138
75
111
78
71
86
119
162
96
72
87
70
159
90
79
120
59
100
165
102
199
48
112
78
135
72
62
133
122
125
89
138
60
161
150
99
114
106
91
72
125
53
122
112
149
91
95
83
104
55
101
134
91
45
143
207
107
64
119
91
111
108
107
134
60
119
53
48
182
137
131
132
63
88
59
76
204
112
137
146
98
97
70
46
126
197
81
55
77
101
57
167
149
60
69
93
115
101
88
96
124
52
84
92
128
103
148
96
69
95
79
93
106
87
130
93
140
104
58
66
97
160
131
147
58
129
82
167
129
171
108
115
115
93
33
83
105
182
125
101
87
103
145
123
114
92
140
109
84
93
101
96
168
71
115
108
109
166
118
105
61
88
97
182
182
116
147
137
52
104
84
105
97
58
111
94
66
124
115
104
94
145
79
147
46
62
103
88
84
108
163
109
91
91
107
158
119
41
106
157
38
133
185
147
62
133
80
92
142
119
103
58
167
94
73
106
136
62
60
152
107
90
134
90
65
85
74
74
71
69
131
119
71
79
119
189
142
153
101
105
116
103
46
105
119
87
117
96
113
75
96
142
103
91
81
64
72
101
127
68
71
79
131
86
106
103
100
97
160
116
108
84
114
61
113
117
55
48
92
83
61
77
130
79
92
89
104
187
125
96
95
120
93
94
64
125
88
195
58
153
131
71
43
112
95
67
106
163
119
93
49
94
105
91
63
112
83
79
98
98
131
199
80
86
117
70
124
111
107
82
115
68
121
148
90
88
94
94
64
144
94
71
182
56
113
63
218
72
77
101
74
124
153
94
94
78
150
127
88
48
100
91
61
82
116
107
158
56
119
112
116
78
140
138
153
64
115
82
101
52
158
78
147
85
105
110
93
74
149
108
78
182
88
123
90
179
108
71
129
119
140
54
130
178
70
111
81
117
86
120
179
107
152
93
94
94
106
89
84
76
68
109
132
82
97
125
34
57
105
95
135
91
113
41
89
91
75
54
150
161
114
157
98
117
114
101
105
128
97
157
105
68
97
126
242
106
65
97
70
59
210
36
116
103
109
86
167
99
123
100
133
83
74
92
81
129
134
103
140
162
77
134
99
78
122
158
115
67
194
153
112
68
118
77
85
81
141
109
124
73
123
145
98
106
56
67
86
91
115
82
85
51
115
110
108
124
99
110
99
120
94
105
93
50
96
88
142
50
56
92
88
160
71
70
128
93
113
196
92
69
33
176
125
98
108
79
49
93
101
65
93
157
80
63
132
128
113
65
134
88
45
103
133
103
114
158
71
85
131
91
65
59
113
84
66
125
101
98
74
67
132
204
104
246
96
109
103
78
120
36
101
93
103
115
59
59
70
143
111
53
126
81
128
135
171
64
115
95
88
156
72
120
112
47
162
90
94
146
99
205
227
104
98
94
77
83
74
121
134
129
65
161
138
149
79
64
163
77
134
89
81
83
37
61
108
140
98
136
151
144
127
98
70
72
43
103
72
106
98
136
105
60
115
173
100
99
62
94
143
96
116
82
113
71
126
129
121
127
65
78
51
104
93
86
73
137
126
62
96
69
143
43
74
195
107
120
51
98
129
46
92
123
82
144
100
101
146
100
138
95
100
97
63
95
84
85
111
198
142
115
117
158
134
64
159
90
117
104
128
155
129
106
55
121
84
73
106
146
165
171
43
97
99
154
95
156
92
138
58
131
38
90
120
120
81
87
90
130
85
46
192
43
117
114
133
129
75
102
112
97
64
112
150
222
118
128
98
184
139
105
93
50
90
125
103
109
53
47
104
42
88
139
81
100
96
72
97
60
158
64
136
130
41
92
29
138
60
149
74
108
73
57
77
102
88
228
121
97
144
171
62
134
169
128
64
62
127
172
64
134
68
75
47
79
74
159
107
113
120
170
90
97
140
151
70
172
101
97
136
104
167
160
131
87
172
86
141
102
145
215
63
70
120
173
81
145
123
153
109
105
106
56
90
164
100
89
95
127
170
135
123
128
56
110
119
92
60
64
115
115
97
111
110
112
121
57
150
101
82
88
86
82
59
187
189
126
49
118
104
129
104
151
134
79
127
133
143
79
86
145
132
74
224
103
152
152
187
94
150
90
57
163
73
195
102
72
82
88
48
125
47
84
56
128
68
114
122
59
95
109
136
197
91
93
57
90
108
135
120
112
146
144
162
168
68
153
99
130
104
43
128
79
140
81
87
180
140
142
60
102
49
80
95
125
126
122
98
91
207
77
51
91
125
38
58
85
185
82
99
77
120
56
85
110
104
106
97
52
109
100
163
142
115
115
131
135
138
81
68
77
71
99
119
145
100
56
115
94
179
57
123
92
100
104
49
65
56
73
147
145
52
158
138
89
158
155
127
127
129
171
130
83
94
87
78
94
125
136
86
98
121
43
69
75
90
158
74
145
94
118
49
101
84
84
159
110
74
112
177
58
106
129
67
136
105
127
80
85
129
103
79
149
82
114
70
72
59
121
59
134
66
65
102
74
93
109
115
56
164
142
65
56
56
78
33
117
130
70
75
130
99
80
113
51
130
133
162
156
130
104
96
58
95
129
121
94
142
34
74
49
98
164
119
149
95
134
132
133
159
87
96
103
154
93
139
52
194
157
128
134
76
85
70
129
85
105
91
120
99
91
133
105
83
124
85
132
191
154
68
145
95
51
90
156
99
123
107
117
88
51
65
142
81
129
113
133
72
136
185
80
135
78
87
98
112
140
108
116
101
44
200
121
48
122
134
108
66
83
90
105
90
109
48
113
114
43
64
55
93
76
67
102
92
75
60
84
118
216
69
41
76
76
73
74
71
126
75
104
144
63
89
90
101
127
89
100
58
172
204
74
105
152
127
109
134
66
115
165
139
66
140
105
86
109
90
90
84
37
123
144
107
106
77
168
104
36
117
99
44
81
135
119
118
132
136
160
109
144
71
64
99
61
127
160
109
76
110
91
163
50
131
81
74
53
131
69
99
152
115
93
89
67
127
101
105
162
185
136
90
76
139
35
50
123
89
78
136
112
172
94
43
141
130
102
83
124
148
173
70
60
136
117
78
81
135
152
93
44
97
163
32
129
76
84
99
115
88
82
165
114
102
106
58
167
84
100
83
60
112
141
48
100
119
69
83
74
165
128
36
160
100
120
69
96
133
150
139
135
73
81
80
112
198
56
73
104
63
125
111
69
91
43
184
126
109
153
124
132
152
159
100
84
52
112
78
117
97
66
59
87
130
128
141
225
106
82
82
132
72
54
163
55
151
77
82
94
79
116
75
87
141
85
84
71
81
84
117
110
143
127
83
91
87
67
66
82
109
91
74
80
112
203
64
146
51
73
124
132
119
144
147
94
118
83
83
126
225
167
81
143
90
159
97
140
109
117
103
171
118
97
85
112
146
102
57
56
74
110
127
73
82
86
132
104
92
118
74
189
66
98
87
95
152
142
95
96
92
88
71
210
75
65
161
73
61
69
195
99
85
63
74
85
41
52
121
100
96
98
56
87
84
168
101
119
148
133
109
62
128
238
58
155
69
84
177
152
91
94
116
70
130
78
111
93
180
139
86
84
86
68
70
93
104
86
90
128
131
112
138
157
97
84
72
151
81
115
61
156
90
95
155
52
142
92
81
103
130
118
113
124
70
107
186
96
143
166
91
48
158
119
155
81
121
99
147
85
44
95
107
77
38
110
140
83
96
69
119
91
99
141
130
77
149
61
115
67
72
89
75
136
80
159
118
84
101
120
126
148
111
67
87
47
75
84
67
67
133
69
99
196
95
74
82
121
99
98
97
114
82
128
60
63
45
50
113
140
180
74
147
62
110
123
104
72
108
87
110
32
96
78
111
67
199
52
80
67
113
90
153
119
132
114
57
148
110
129
136
88
112
85
83
98
132
66
120
49
66
60
141
74
97
69
156
124
50
92
173
78
47
132
63
67
176
100
125
51
100
89
78
68
137
155
124
86
210
117
65
116
114
159
179
40
109
130
107
80
79
181
111
114
125
95
115
95
85
115
128
107
80
135
160
40
116
68
100
97
102
87
48
123
84
84
91
118
131
112
51
105
137
106
45
120
86
90
182
111
76
44
151
77
95
121
144
126
75
111
110
78
101
141
121
27
73
150
101
100
137
126
114
53
99
94
121
153
148
60
131
97
85
99
83
136
117
129
63
151
96
80
113
96
147
144
134
116
50
47
134
105
183
139
101
76
118
113
149
159
149
107
56
84
166
133
82
142
100
111
81
87
98
102
84
150
88
130
92
94
82
82
77
116
123
71
221
192
103
125
138
103
78
102
100
121
172
117
75
112
127
80
97
126
179
95
83
147
130
89
89
71
105
199
122
83
78
47
136
155
151
117
115
57
131
156
166
179
100
92
153
128
136
100
50
98
142
68
143
91
151
72
76
99
95
130
116
158
127
92
92
194
88
77
79
116
165
126
126
35
92
164
89
179
88
189
165
159
83
122
125
175
80
147
182
104
62
119
62
56
75
98
162
81
159
170
114
153
133
116
77
123
54
163
63
52
58
48
165
96
82
62
104
54
61
93
97
87
202
57
139
119
75
106
93
203
179
68
56
150
147
76
170
139
120
51
37
84
101
104
72
114
190
49
143
53
125
145
114
40
67
115
131
181
51
116
144
83
90
108
87
63
59
127
65
91
170
121
109
124
87
149
133
79
132
121
68
96
83
74
74
54
118
61
120
141
89
185
80
113
81
33
135
80
71
106
71
212
112
108
73
149
95
112
85
95
145
120
89
54
91
107
107
115
143
138
113
111
117
91
100
123
80
73
140
153
136
105
109
88
155
105
146
125
143
89
136
33
97
59
81
96
70
116
48
101
60
89
81
83
75
45
62
143
106
80
172
118
79
64
49
94
72
188
39
87
164
119
94
98
118
36
116
101
116
52
82
224
99
86
122
94
100
69
75
65
93
148
128
126
94
72
105
157
111
108
92
106
130
115
92
85
107
91
159
91
111
133
89
114
109
80
65
132
78
91
129
259
113
81
138
75
133
86
105
139
166
59
129
88
88
74
47
46
88
97
153
83
59
89
98
95
165
175
189
67
120
64
106
102
50
122
91
71
144
93
199
128
79
126
171
111
122
56
94
187
87
99
50
111
131
149
57
122
117
90
74
122
157
63
149
65
57
75
80
44
140
162
39
105
141
121
71
185
184
68
73
62
111
109
99
127
94
165
81
198
94
117
131
96
79
118
101
65
49
63
64
94
135
107
73
143
170
105
115
75
29
80
84
85
117
82
186
56
75
66
90
96
80
90
100
87
58
77
122
184
111
123
73
86
85
124
88
115
99
85
93
89
65
122
131
102
66
163
110
48
135
147
126
103
137
95
130
76
91
67
93
61
123
72
121
42
164
208
219
124
94
139
83
70
121
65
139
158
41
105
58
116
160
128
150
54
147
75
85
79
44
63
95
216
146
65
139
139
87
68
118
107
59
136
139
46
77
103
98
96
57
84
131
192
191
76
73
95
104
146
139
177
118
111
66
83
47
92
69
87
180
89
70
60
93
117
118
105
91
118
143
55
121
146
108
79
92
52
152
125
108
88
94
149
106
131
61
96
123
74
186
108
133
147
113
95
100
101
124
153
108
149
87
129
77
140
60
127
135
91
144
113
96
71
142
43
86
71
118
149
89
153
89
129
154
119
83
55
110
109
107
141
98
63
83
103
99
124
67
93
58
81
122
164
88
63
105
99
123
67
92
100
110
72
89
75
94
145
55
81
84
107
71
138
84
75
93
184
107
133
75
168
89
41
91
98
92
100
86
72
85
97
61
130
85
126
96
104
96
147
173
113
189
105
124
99
73
117
62
107
64
104
90
171
115
152
133
105
59
155
105
93
40
120
70
39
109
103
96
108
82
117
78
164
112
180
74
118
60
70
89
101
121
110
79
116
96
94
143
101
47
133
157
95
70
100
138
56
72
91
36
121
92
142
66
92
59
93
122
115
61
117
135
87
138
34
162
81
87
86
47
135
79
108
111
145
60
75
50
187
150
89
86
148
133
129
150
66
48
335
215
122
121
108
80
54
93
127
123
107
129
78
44
126
109
73
126
48
68
110
148
120
99
117
74
91
53
93
199
183
85
108
121
112
85
81
109
73
66
89
91
94
117
95
110
118
86
56
98
106
137
52
69
36
89
106
117
92
101
120
99
105
91
68
135
101
118
81
76
93
132
110
136
114
108
87
137
191
104
121
69
89
86
227
67
104
74
56
84
210
99
119
112
88
120
90
94
139
136
87
78
187
73
138
106
126
272
151
117
105
147
142
44
130
135
143
138
126
135
147
84
155
120
145
69
108
63
84
154
112
102
98
119
81
70
156
176
112
39
46
91
111
79
116
74
88
94
119
114
67
116
79
88
133
69
68
130
89
124
111
98
138
87
99
140
124
56
85
94
108
111
178
97
150
65
74
80
70
152
103
133
101
97
73
100
108
54
105
101
82
104
163
94
64
80
85
83
94
79
200
148
124
204
91
140
75
117
110
102
100
104
99
158
136
92
123
79
33
137
86
63
109
146
120
54
68
82
72
55
106
95
91
109
217
128
56
56
134
112
266
153
59
77
146
107
63
76
79
122
55
153
172
102
150
177
106
80
82
84
174
46
112
88
46
200
122
87
52
80
152
103
170
140
77
43
94
126
102
94
45
118
131
64
80
105
114
84
60
112
108
316
159
142
76
22
125
75
142
115
56
156
100
47
89
77
157
111
171
125
54
193
184
127
57
111
134
122
90
153
92
103
64
75
190
120
132
126
103
81
75
75
126
97
125
133
101
136
80
148
129
110
92
65
73
113
152
129
149
106
78
62
151
72
113
91
94
128
121
82
93
94
107
135
45
88
106
71
160
68
81
111
73
102
128
88
134
122
77
128
69
110
74
144
206
191
74
69
67
96
64
144
97
59
84
113
186
147
121
71
132
163
86
114
99
79
77
117
77
67
153
120
80
80
72
96
116
253
125
182
105
123
102
131
179
85
85
122
153
101
55
143
108
90
95
153
84
94
85
42
66
92
166
75
117
67
66
120
68
130
159
111
154
42
116
162
158
125
168
103
135
79
135
190
48
96
161
229
82
104
104
86
154
49
104
100
39
107
143
108
82
106
112
79
113
88
146
121
72
75
64
108
81
143
189
82
78
152
53
63
77
50
75
96
56
113
46
85
78
120
127
80
134
75
106
44
81
69
47
70
93
135
100
124
125
160
110
90
49
102
74
51
184
100
179
148
110
138
145
82
71
76
126
47
120
162
127
82
109
75
112
138
61
31
235
55
70
80
174
79
94
114
80
112
65
89
106
165
127
81
164
137
86
116
61
79
121
100
153
89
143
141
127
64
74
61
159
70
202
216
135
155
162
115
66
87
60
83
109
151
135
74
120
86
121
64
96
164
112
71
100
100
98
53
50
140
109
148
104
117
66
87
105
75
98
97
153
187
120
129
95
88
153
112
132
96
79
121
67
159
91
103
92
140
97
102
104
81
108
89
116
79
103
65
58
45
106
125
122
96
191
108
149
120
89
133
117
175
139
80
75
74
168
152
168
162
120
89
51
78
111
155
54
130
50
45
183
108
113
76
133
135
115
67
131
97
92
174
76
102
132
135
117
190
149
98
62
103
194
122
60
35
124
130
75
121
203
71
133
137
116
181
113
99
137
196
115
129
108
95
73
135
219
33
111
108
128
58
189
113
94
119
162
111
121
156
181
144
88
125
92
76
144
73
82
60
122
84
47
105
82
106
102
96
48
36
111
68
60
81
60
150
83
100
88
96
119
135
93
109
67
59
76
70
87
62
135
106
68
66
90
81
48
49
113
92
115
72
113
33
96
120
166
93
177
121
62
79
148
136
74
106
83
142
181
63
92
149
126
105
62
96
87
178
73
156
80
153
62
71
118
110
90
66
241
80
113
146
106
157
107
129
109
53
131
138
125
117
148
102
105
64
65
59
175
101
71
147
133
112
133
102
65
93
121
82
159
62
55
65
131
125
123
104
79
165
75
97
107
164
114
125
101
45
150
98
149
72
70
147
49
45
76
157
134
212
85
105
124
59
126
106
109
57
119
102
133
162
91
86
117
128
81
145
99
116
100
166
142
87
57
59
121
151
121
76
169
146
93
105
211
140
81
217
90
104
121
126
122
145
121
28
61
89
183
120
65
167
61
110
149
130
100
119
122
134
99
86
157
79
180
154
89
129
84
53
131
180
87
209
82
155
225
61
183
89
70
133
143
76
68
154
90
121
138
65
95
100
89
106
124
68
50
120
111
151
108
132
114
106
57
134
170
84
87
58
52
126
68
116
103
128
140
100
128
69
115
59
142
86
98
98
81
144
156
153
83
144
38
63
58
58
204
135
111
186
89
73
85
136
137
177
77
91
107
138
138
115
140
118
121
94
88
107
149
158
150
160
81
110
106
149
80
216
121
116
67
136
124
102
92
50
93
122
117
60
183
110
121
156
87
65
109
94
156
71
174
142
87
86
105
73
126
49
125
121
97
134
135
72
79
130
91
92
149
156
147
149
178
77
53
131
55
108
77
132
73
95
113
90
111
138
130
116
100
116
56
152
95
122
124
73
91
123
85
71
70
107
173
85
101
51
119
120
81
180
134
117
141
170
85
137
100
101
162
93
133
55
93
95
70
85
114
92
110
75
130
65
56
106
79
173
84
57
76
147
125
68
175
161
191
90
57
116
155
73
111
121
90
99
163
98
73
89
155
107
131
237
105
134
145
135
106
84
72
109
53
108
107
152
67
99
76
85
95
139
92
61
116
79
82
130
97
185
103
90
167
99
125
132
119
119
167
47
88
122
100
130
77
144
54
46
125
115
134
73
67
58
109
106
45
107
93
143
75
80
168
143
74
90
69
235
67
122
142
122
65
141
144
80
96
49
215
180
78
61
83
110
122
76
58
81
115
87
64
143
102
63
204
84
209
99
81
77
161
78
108
113
75
106
109
173
92
57
114
56
53
75
160
83
67
158
120
66
69
75
141
60
91
78
97
72
151
55
80
103
46
110
109
90
127
98
113
91
143
149
89
107
89
128
109
195
147
72
90
116
141
55
100
144
103
131
197
83
138
86
148
94
48
87
96
81
112
96
131
117
186
122
79
63
136
69
89
77
94
154
80
85
106
52
116
110
93
62
84
106
98
182
130
95
112
96
99
76
69
38
111
66
99
69
95
69
96
57
83
81
211
196
96
86
126
178
139
42
91
44
51
50
61
76
92
56
137
101
128
217
63
69
199
51
132
77
124
96
170
68
83
71
146
61
114
154
117
122
87
112
66
179
97
90
118
65
150
105
110
132
69
143
55
72
71
186
57
163
93
114
119
99
71
130
76
99
125
129
115
115
130
107
55
73
102
49
143
45
189
91
94
102
96
125
93
103
116
102
68
62
167
78
69
131
56
90
78
121
102
139
98
78
99
80
206
73
146
119
139
90
101
116
48
168
129
149
191
127
106
101
132
85
55
71
129
80
154
181
106
70
105
121
90
79
56
133
126
87
71
67
112
64
93
196
136
114
108
140
86
143
54
77
103
133
99
135
92
117
114
122
69
110
92
75
56
144
42
109
153
94
143
71
54
95
142
83
102
69
149
90
66
130
115
89
160
119
118
176
72
129
138
86
105
187
65
117
92
119
158
85
103
103
106
57
94
74
120
87
116
86
80
58
46
118
105
151
63
59
105
180
161
80
129
84
64
108
119
134
103
134
116
151
57
92
225
92
149
77
139
134
152
136
122
150
120
97
53
146
90
86
120
93
120
129
171
210
86
109
93
46
145
94
58
76
92
69
70
115
130
94
80
78
94
138
76
143
85
95
145
73
83
110
104
89
67
103
88
58
79
43
99
89
54
182
171
94
119
140
113
87
62
91
126
112
112
76
83
89
127
85
38
162
72
110
53
76
106
83
134
132
147
121
54
89
99
33
83
157
181
38
97
129
79
110
86
97
115
62
93
133
55
66
154
105
105
81
126
181
95
50
74
120
136
82
92
48
104
51
113
102
94
189
159
104
60
87
124
169
118
67
86
139
96
141
47
86
162
126
109
95
151
99
180
104
83
84
157
104
126
165
57
75
158
127
174
99
106
85
106
236
221
86
86
136
80
76
116
116
73
57
66
120
137
118
62
55
117
265
85
99
103
94
156
136
118
90
89
140
126
183
65
140
101
65
98
102
190
63
123
185
73
105
77
115
184
136
133
63
96
76
120
124
140
55
138
125
84
156
72
133
53
97
139
79
100
46
149
96
163
44
108
95
97
70
108
103
110
92
156
143
89
93
98
159
141
79
140
99
126
86
75
159
99
123
93
103
33
126
106
107
88
131
82
81
64
126
89
66
94
72
156
143
57
120
152
108
110
83
143
111
75
119
83
189
116
195
182
138
107
85
108
120
96
59
41
69
108
168
189
86
58
76
100
115
127
96
139
90
151
104
69
112
164
81
106
123
101
105
144
80
91
159
106
155
160
68
119
100
184
125
99
100
140
62
127
89
132
85
40
56
85
139
221
116
115
81
112
171
78
103
114
91
94
29
92
56
147
121
65
77
139
57
121
84
105
118
143
79
193
106
119
79
117
54
100
115
134
92
105
93
52
126
172
80
84
198
160
158
123
102
37
156
135
117
100
175
88
43
182
142
129
68
129
172
42
127
50
107
63
148
34
147
100
89
52
54
105
161
59
147
99
114
78
173
147
143
106
159
75
118
123
79
154
222
69
97
60
76
85
95
95
69
85
84
73
42
50
101
86
142
60
86
101
75
67
88
102
127
110
155
176
111
91
148
105
67
84
137
122
207
125
128
144
158
91
62
144
134
102
78
84
67
122
74
114
72
50
108
116
97
59
68
54
104
111
126
66
99
75
185
83
122
85
152
85
91
73
152
103
69
154
89
112
186
75
143
170
71
88
94
66
119
110
67
153
70
99
113
103
70
63
85
84
164
91
88
98
118
87
56
138
102
59
162
81
105
97
122
66
139
144
89
72
37
115
56
149
132
127
122
152
104
108
68
89
81
81
75
95
83
48
140
127
91
112
51
175
97
100
103
107
82
158
133
137
62
82
158
51
133
153
113
158
119
141
103
109
93
96
72
90
106
97
48
131
89
152
123
83
138
166
99
63
107
76
99
110
120
101
72
99
101
92
179
117
73
93
94
96
115
141
102
62
111
201
116
122
181
89
105
117
105
102
192
139
66
69
74
155
140
93
118
107
75
120
71
54
77
92
85
117
165
100
45
119
108
108
116
110
97
141
95
117
97
65
108
147
113
156
123
76
108
110
90
45
86
105
51
201
165
97
153
104
129
150
144
179
94
93
68
82
82
180
61
75
66
96
161
125
59
76
65
79
74
122
56
140
101
131
78
115
77
198
131
135
117
64
157
146
43
74
70
62
147
77
106
115
190
146
140
112
118
106
93
109
105
97
127
139
130
77
132
101
136
118
128
115
62
118
137
113
70
55
94
138
148
104
128
91
31
100
60
160
123
117
89
128
85
68
78
81
75
77
154
97
132
95
83
64
95
137
44
99
112
153
56
48
173
67
86
81
97
108
104
80
105
196
135
131
207
152
84
152
83
121
243
79
121
110
109
123
118
55
87
68
75
69
113
156
120
66
42
68
122
145
122
70
185
85
85
160
119
142
73
100
51
93
75
103
75
137
113
103
223
92
119
106
148
123
78
122
96
139
171
105
126
165
125
116
174
111
73
174
96
84
89
68
86
117
130
176
137
51
186
37
113
136
117
142
42
70
90
122
161
150
135
67
139
93
99
81
97
237
86
85
102
201
88
116
86
85
141
77
121
145
39
100
144
153
75
84
53
122
161
160
79
115
80
127
129
105
87
103
139
132
120
107
98
137
74
123
102
55
77
144
117
115
104
114
84
92
83
115
87
50
182
73
102
107
71
78
78
98
139
203
96
132
124
122
99
115
114
102
152
87
111
83
81
94
52
195
53
87
55
119
138
87
107
157
106
97
146
81
84
67
175
69
140
74
84
184
95
83
97
127
92
146
91
36
100
96
172
115
81
146
93
113
91
77
160
106
69
77
76
55
59
96
173
111
91
70
70
153
68
57
43
178
75
64
115
155
76
138
101
109
99
97
145
63
131
62
78
166
68
75
99
69
156
72
60
65
119
46
90
52
100
59
136
116
84
109
53
95
66
58
58
110
115
81
107
112
76
102
76
123
129
160
160
105
208
102
187
133
90
93
101
99
35
106
76
84
86
83
149
79
76
112
87
107
117
114
85
83
185
86
129
128
88
156
108
119
129
72
102
77
150
130
111
87
68
100
100
60
102
135
88
146
101
107
74
122
67
184
108
165
89
156
169
104
94
112
57
143
98
71
96
150
113
34
77
186
176
92
129
96
87
74
63
70
151
139
117
72
70
115
95
135
72
123
179
116
75
124
131
75
96
143
99
77
164
77
159
92
165
91
99
133
54
100
52
101
88
135
156
144
262
144
77
107
99
86
102
117
72
107
117
54
128
53
84
32
119
60
96
152
164
143
156
115
72
90
80
128
57
181
73
45
93
91
125
89
133
93
60
189
82
117
97
104
92
80
96
83
134
104
105
85
178
40
58
100
34
180
160
144
71
124
161
72
79
117
111
64
141
106
147
154
89
61
62
95
106
110
92
105
53
79
118
95
90
217
114
45
121
30
62
66
79
93
135
99
181
55
151
80
92
216
75
185
61
52
114
71
141
110
97
48
116
116
84
101
106
76
76
70
103
90
130
68
105
40
173
91
185
127
75
174
56
108
71
101
61
109
146
85
107
96
56
62
107
115
151
142
117
165
140
164
155
90
60
160
121
127
126
117
113
115
139
54
81
103
107
69
88
96
152
81
160
165
102
51
72
140
85
126
114
84
77
184
148
125
115
103
99
61
73
140
83
93
78
199
195
60
72
94
192
108
73
98
154
94
114
46
100
65
64
97
201
63
226
156
130
170
150
171
89
108
84
128
91
110
96
103
85
76
77
43
105
141
77
87
142
162
54
69
144
39
195
142
94
64
65
124
130
72
185
124
91
118
102
45
113
145
149
119
146
76
127
94
145
59
119
73
99
93
176
90
176
79
25
58
98
113
90
101
178
129
126
117
111
112
170
123
117
181
70
86
210
109
152
134
115
125
77
84
153
108
96
98
60
120
109
79
86
173
133
104
115
149
52
148
85
54
135
71
94
48
101
86
199
74
90
81
71
209
119
206
170
111
101
93
93
38
72
84
127
136
140
139
131
96
99
82
141
119
147
197
137
109
66
58
112
137
35
136
111
149
71
110
97
124
93
117
95
117
48
52
139
119
43
67
107
117
56
188
82
56
83
98
145
96
56
151
63
127
133
119
108
184
103
110
78
103
114
101
120
156
91
75
91
100
129
100
112
144
54
70
94
95
87
41
109
160
79
99
145
59
186
142
175
59
117
110
50
111
115
79
75
120
75
131
155
53
65
91
98
136
185
85
67
109
59
80
124
172
187
50
123
87
103
84
133
84
63
109
190
68
66
88
62
65
85
127
107
72
143
101
148
77
125
94
115
75
60
148
77
120
94
134
66
108
47
168
52
125
138
92
120
91
71
44
60
86
126
134
34
143
110
143
88
177
66
109
116
69
116
113
115
40
113
116
173
89
73
141
144
74
138
91
81
106
79
130
97
66
142
39
134
146
110
74
150
111
61
129
135
238
75
86
183
162
114
126
152
147
118
95
88
82
111
97
125
72
93
156
83
95
115
95
147
152
77
56
59
78
124
126
81
84
128
104
68
85
63
112
111
135
141
145
160
89
218
111
87
85
87
102
140
107
130
134
104
34
215
166
87
126
131
101
78
223
107
109
171
142
115
158
80
95
134
50
114
57
110
126
95
110
108
143
64
72
91
74
161
141
95
120
161
124
112
65
72
139
101
143
51
162
109
109
133
138
147
73
179
127
90
152
196
77
87
102
114
46
105
123
160
151
82
70
105
98
90
52
116
166
89
96
62
48
84
39
65
153
114
138
59
75
81
101
97
89
143
54
107
107
144
41
83
134
47
125
88
46
64
97
74
105
111
70
45
66
91
83
107
85
93
110
86
44
81
150
156
148
127
74
57
126
91
108
148
128
171
120
141
77
66
68
119
175
56
62
122
102
69
139
120
42
40
123
98
163
80
62
87
144
64
119
127
61
47
118
115
94
102
100
83
65
125
105
163
167
78
87
112
128
93
113
203
118
129
53
157
197
166
66
67
120
99
147
61
108
92
110
138
59
186
103
117
213
130
52
68
114
77
130
95
71
132
108
75
106
69
70
106
150
86
167
123
101
137
45
138
78
106
161
78
88
99
87
71
196
37
152
126
85
154
66
88
108
135
100
159
96
89
154
129
147
117
80
64
72
118
104
71
61
103
168
100
157
93
139
198
129
69
131
63
81
38
82
92
114
104
90
95
148
104
111
95
86
104
92
100
113
37
96
69
65
161
64
144
122
114
141
110
87
85
110
111
59
84
150
105
107
93
174
144
73
94
85
106
100
222
53
108
104
94
82
103
107
137
140
81
75
128
116
72
112
76
125
66
94
114
66
65
57
114
79
133
176
56
59
113
71
79
130
108
135
90
153
51
151
198
72
78
88
121
138
92
92
118
142
180
87
161
90
59
157
61
76
41
157
129
111
114
109
62
163
108
110
48
125
124
121
80
132
113
195
78
80
78
149
82
85
130
172
68
179
125
152
114
95
58
93
186
77
122
63
100
155
150
98
54
54
99
145
141
78
64
97
103
224
90
146
62
170
80
117
112
74
98
112
127
168
74
99
130
121
127
86
109
232
37
85
45
161
117
75
75
105
101
97
76
65
172
92
160
104
85
151
90
97
129
114
101
150
125
181
96
112
71
131
148
163
123
57
126
84
170
71
103
68
104
153
68
66
94
129
44
25
124
66
49
188
93
86
114
120
107
62
84
132
129
78
93
116
95
82
165
54
97
39
153
78
125
99
106
175
191
98
133
40
66
159
93
87
63
100
133
164
76
118
60
78
59
75
136
76
116
103
153
56
70
122
90
100
104
111
113
77
103
106
105
121
116
92
89
189
93
134
69
49
60
101
120
65
68
81
137
64
116
118
150
61
121
110
105
95
213
92
66
132
98
130
109
70
82
57
106
83
177
109
92
147
141
66
118
47
74
114
143
134
139
96
119
53
68
84
108
172
143
159
185
56
112
151
91
136
85
104
122
153
124
193
183
175
115
62
100
127
104
76
83
79
83
68
95
100
86
152
77
76
75
90
66
108
133
99
166
131
98
118
73
85
115
122
139
144
64
44
62
166
104
123
112
82
111
91
82
49
111
130
36
57
140
92
122
86
71
129
107
102
111
173
107
90
49
158
119
41
52
41
100
124
121
63
80
81
69
98
68
129
85
125
109
154
132
107
66
82
61
50
127
165
226
74
153
133
100
133
113
153
64
62
158
159
86
144
164
87
38
63
65
140
61
92
88
77
106
50
230
96
107
92
96
158
129
158
132
213
89
72
98
87
115
61
102
60
111
115
121
136
82
142
100
48
76
130
111
90
82
120
86
77
91
139
142
139
57
131
77
85
63
169
68
133
103
152
132
89
62
120
130
192
127
83
146
132
82
72
100
76
111
143
79
103
100
137
131
149
126
146
60
119
102
89
91
86
106
83
113
60
62
126
133
101
102
83
117
108
106
116
84
159
64
127
74
225
86
127
202
118
109
97
130
89
110
103
73
197
60
150
124
124
159
136
80
89
104
147
51
114
68
69
40
79
75
230
119
75
43
155
90
137
81
106
99
178
99
96
80
63
83
71
126
99
108
154
120
126
165
120
133
91
136
145
98
74
113
166
122
73
107
163
108
148
145
134
136
96
120
123
43
156
100
152
99
106
42
71
75
108
118
208
110
73
174
81
82
148
53
88
77
71
157
80
71
103
72
95
130
97
108
74
36
84
92
177
95
101
89
105
80
75
125
97
68
166
113
101
66
58
40
108
100
58
94
83
131
60
104
126
171
123
52
134
123
169
96
98
89
149
126
117
78
121
84
82
73
76
100
77
62
166
148
102
162
72
109
88
175
164
57
84
107
111
91
96
126
125
59
44
133
121
186
81
86
181
81
102
124
86
147
153
72
104
27
118
160
264
118
89
129
66
115
75
101
108
127
62
59
111
113
93
105
77
106
100
59
99
28
115
136
93
44
142
167
132
92
127
77
154
57
123
77
69
53
62
153
78
69
133
41
92
174
119
52
119
119
154
94
193
95
55
88
94
65
157
126
84
151
107
78
165
80
79
182
80
101
130
80
97
133
77
104
64
64
115
85
157
97
88
71
134
86
135
70
35
113
86
100
75
57
40
122
194
39
79
58
80
117
70
75
70
86
99
123
63
138
73
98
172
134
86
109
100
119
82
154
131
292
105
97
104
96
125
119
81
103
90
71
181
113
115
145
94
126
146
96
81
74
68
120
41
33
84
91
78
109
78
74
136
113
90
175
164
101
100
165
62
123
108
85
93
163
60
92
132
133
88
65
177
149
76
109
76
102
160
119
65
111
55
83
133
47
123
94
86
60
124
62
111
199
83
139
123
100
206
106
48
56
138
106
96
109
105
90
144
96
70
77
200
115
144
110
147
119
102
77
98
136
112
110
72
90
87
218
115
91
215
151
85
59
101
170
110
109
111
84
78
144
43
92
59
132
85
142
127
57
160
72
121
71
145
82
92
77
85
93
44
127
60
103
53
74
80
91
127
82
113
142
77
88
71
86
129
99
72
79
124
121
126
156
143
41
99
151
70
130
190
94
122
130
82
30
89
155
56
128
73
164
147
60
61
78
86
104
55
101
95
112
60
68
72
182
65
150
116
138
86
141
153
87
99
55
96
86
107
70
128
86
81
79
49
114
127
82
31
79
137
87
82
63
80
139
108
121
90
155
80
125
99
66
148
84
128
105
108
111
61
115
66
32
73
72
30
95
141
86
115
37
69
111
91
72
144
79
93
163
148
103
137
88
198
133
98
56
131
99
249
55
74
68
97
72
85
64
84
111
66
42
100
89
124
193
112
133
76
93
77
105
66
96
136
185
164
66
65
79
87
64
131
114
75
65
75
88
121
148
61
62
210
115
35
90
105
93
187
94
67
92
195
95
134
103
152
125
92
149
160
138
127
83
83
95
78
64
170
114
141
100
113
79
120
67
143
99
155
93
40
73
105
132
46
117
66
70
146
142
91
94
126
103
159
156
79
65
137
226
104
119
55
182
94
124
104
91
107
79
91
132
150
96
50
156
92
141
105
100
90
81
85
57
86
108
77
164
120
79
96
132
92
57
83
115
123
113
65
96
48
81
106
106
121
144
38
90
102
59
179
128
160
112
61
121
77
116
101
61
129
83
96
55
86
71
131
80
100
103
115
123
139
113
63
110
71
94
119
113
75
80
123
86
181
52
106
113
80
34
125
127
247
49
76
95
74
161
78
195
104
113
81
105
121
139
77
107
146
50
104
68
116
83
131
156
70
46
86
118
74
102
73
97
148
73
75
165
148
121
113
91
87
49
79
79
123
127
62
61
82
123
64
74
109
49
70
57
94
104
120
137
123
118
66
106
127
201
98
59
32
131
144
58
51
121
190
111
53
51
144
90
42
82
104
165
113
95
155
117
53
97
67
187
130
105
131
139
62
113
79
74
120
98
78
93
91
153
110
66
167
141
109
71
76
80
87
151
163
33
57
113
123
149
90
117
97
91
48
158
178
138
85
130
114
90
53
113
49
61
128
105
64
60
66
62
159
57
84
106
110
78
98
155
135
110
95
96
171
70
77
86
72
65
143
130
157
153
115
114
132
164
159
123
218
94
100
140
76
104
84
127
179
96
97
86
100
56
164
126
141
114
140
116
128
89
145
54
123
208
95
143
87
65
107
92
131
101
118
54
93
120
76
91
225
69
77
110
83
96
90
146
95
80
128
151
65
143
71
115
86
119
102
134
142
115
124
56
95
62
35
80
111
79
141
170
71
109
129
85
81
59
88
43
84
91
143
70
78
65
89
92
153
96
170
56
73
94
101
167
99
109
140
119
91
79
78
120
110
71
110
123
107
124
108
75
42
64
153
95
139
71
216
186
86
51
176
65
60
133
67
102
109
66
67
133
58
84
94
119
134
65
111
145
78
78
183
86
112
67
132
93
66
126
218
82
127
61
61
93
122
81
83
105
143
77
104
133
179
135
128
64
80
108
159
103
85
112
93
68
45
120
191
102
78
111
157
52
129
148
71
89
85
105
95
51
99
117
138
52
122
138
57
93
64
114
107
155
91
245
150
129
167
85
75
39
252
65
149
107
92
129
80
87
56
115
150
56
167
109
100
85
97
120
80
149
87
51
102
113
89
93
138
113
85
162
71
85
106
61
78
71
106
92
130
132
88
193
161
53
71
90
94
89
58
159
74
167
45
80
161
138
87
108
121
78
125
110
105
96
71
130
85
109
94
71
86
134
77
84
154
101
55
94
65
128
77
97
58
158
139
178
59
107
106
117
173
100
78
84
81
85
144
135
158
81
58
133
128
122
77
117
103
98
146
78
120
103
138
117
86
85
85
110
213
136
87
89
69
85
111
61
187
92
187
93
74
115
79
43
137
113
84
98
63
96
49
170
123
72
75
94
129
173
156
76
81
43
159
104
144
113
131
76
125
112
85
109
130
139
162
92
116
133
78
129
88
113
109
79
82
117
101
80
175
137
154
104
165
111
58
97
112
113
117
64
123
113
66
135
109
93
98
139
169
138
64
67
86
83
95
89
101
100
90
143
162
161
112
94
130
165
90
81
142
67
87
128
99
105
55
82
83
84
161
88
73
188
84
125
116
68
181
112
122
71
103
112
154
86
72
92
88
77
70
119
98
103
51
173
137
86
134
100
140
143
141
73
71
104
168
92
193
86
52
142
83
120
83
71
112
190
79
98
143
102
93
113
134
81
176
154
98
59
116
168
55
152
112
169
178
135
146
102
170
140
131
145
108
101
86
58
81
118
80
136
107
86
78
170
69
79
133
92
147
141
95
84
59
101
101
63
111
76
103
227
123
138
104
76
175
132
88
77
89
92
108
40
121
117
72
83
103
103
85
63
66
120
86
149
88
161
154
127
113
107
128
84
119
88
90
89
76
153
73
115
120
81
93
111
40
88
67
64
93
100
63
110
127
77
60
96
136
88
142
109
81
155
135
17
171
98
106
204
118
61
75
137
194
169
113
83
120
100
137
116
70
166
87
94
97
125
117
147
222
194
44
34
127
84
88
183
156
94
72
84
131
114
90
73
105
88
142
47
24
159
101
114
62
143
84
136
100
99
157
139
128
171
78
198
59
200
154
164
110
187
153
139
62
83
106
92
136
81
148
131
107
93
77
122
84
72
231
240
175
109
192
115
146
132
93
150
88
157
165
135
65
91
109
120
158
114
126
51
82
60
83
79
61
105
57
195
74
100
155
127
60
118
112
74
94
125
143
195
116
131
67
56
129
108
114
95
92
100
73
174
115
62
69
106
77
145
80
220
81
137
56
136
78
126
81
111
78
114
112
77
143
155
134
103
106
120
184
111
212
68
133
110
135
181
105
92
84
117
112
106
97
124
158
99
59
66
68
61
132
67
237
88
127
105
171
82
99
91
102
71
167
163
112
97
195
148
126
133
120
119
99
161
75
96
116
112
160
104
130
105
101
57
51
120
96
48
61
64
55
89
94
69
100
56
147
98
89
124
168
87
152
116
83
106
252
138
99
106
90
183
39
153
111
139
60
102
123
147
106
82
82
152
127
153
70
123
113
122
117
84
120
128
162
149
61
214
107
97
98
74
93
83
126
58
94
128
116
37
53
149
104
155
93
46
81
140
105
77
66
99
105
138
126
37
127
111
61
147
107
76
112
82
90
71
117
102
116
72
148
136
140
131
168
173
120
136
71
176
54
148
152
152
87
62
118
109
85
65
66
169
49
99
100
47
117
70
175
96
156
89
64
97
58
100
150
55
194
95
129
117
110
92
72
65
78
134
42
141
101
131
75
182
95
115
85
119
95
125
71
55
93
133
70
131
146
74
155
67
85
96
129
63
99
76
87
109
80
100
121
131
137
113
141
154
139
130
69
93
85
93
147
88
197
89
98
101
143
61
82
104
170
105
148
80
97
81
56
143
95
135
166
96
83
139
211
90
138
148
116
175
133
29
145
133
49
160
105
78
91
149
62
95
32
100
162
110
140
65
126
191
116
99
140
125
105
115
120
133
136
62
91
159
90
68
79
108
61
133
123
109
98
115
137
140
120
102
66
171
97
147
106
76
84
119
91
90
77
88
50
114
112
137
104
163
139
122
122
140
121
95
53
96
65
167
192
97
161
67
58
86
113
90
62
95
142
100
78
169
113
99
124
69
94
70
163
122
93
161
127
103
51
74
73
117
99
49
130
175
136
105
148
114
104
160
148
56
176
90
147
192
132
108
88
109
92
128
91
114
80
74
147
100
44
153
54
51
114
50
133
126
151
61
108
92
65
122
77
83
97
109
85
218
245
62
55
121
164
100
80
99
111
116
177
107
143
217
176
122
181
57
53
88
104
168
82
115
67
92
84
99
66
149
105
73
101
164
89
113
114
101
112
84
52
132
107
90
107
126
95
110
116
41
87
208
78
170
99
73
77
117
114
159
91
107
95
150
123
111
74
79
182
144
38
73
117
91
168
79
111
193
53
79
228
133
106
135
99
122
134
134
110
76
70
148
72
101
81
145
117
90
212
88
108
106
76
77
53
122
92
76
116
61
101
137
75
110
70
37
127
284
69
118
139
125
112
149
100
117
102
97
105
73
123
110
95
78
65
74
70
107
79
76
148
138
145
208
170
92
161
75
88
50
87
214
89
106
120
117
43
104
71
82
202
75
81
37
180
66
166
84
99
99
59
81
123
98
85
100
127
127
162
128
155
118
142
79
111
62
68
84
66
88
139
152
52
170
147
84
126
56
100
64
119
79
90
132
122
80
83
72
59
101
103
90
93
76
125
99
57
73
91
116
150
92
65
131
96
93
131
167
54
87
73
145
93
61
78
104
79
90
85
145
84
105
98
59
125
65
67
111
96
159
81
42
117
69
107
91
156
68
112
77
90
97
121
114
118
162
97
62
57
147
122
108
81
100
134
64
88
77
107
128
95
71
65
61
122
66
147
85
53
121
97
47
122
124
72
117
122
43
68
131
118
88
73
163
119
59
59
124
56
87
129
87
95
109
73
62
136
70
122
82
110
68
66
51
98
99
111
86
83
104
96
81
90
138
129
78
158
88
88
102
145
130
82
95
58
113
117
53
117
137
305
54
118
100
138
149
146
94
91
99
140
104
111
166
72
117
98
81
87
71
79
110
177
131
92
96
87
104
124
108
87
104
149
119
201
104
125
96
123
89
167
107
45
92
124
116
109
78
98
109
72
89
121
111
163
73
128
108
121
70
54
90
91
68
146
140
82
120
58
60
129
91
97
59
81
144
108
97
141
88
78
47
88
130
122
103
85
179
164
87
76
102
102
104
61
44
138
53
131
128
150
94
51
121
119
114
87
116
105
95
64
101
109
176
167
153
107
129
99
121
113
121
90
60
160
167
54
166
141
121
101
111
163
151
173
154
120
142
110
118
128
110
146
136
205
144
108
129
121
152
197
105
151
70
97
86
177
111
112
159
105
74
64
186
93
129
143
50
180
87
74
89
111
126
54
119
109
150
130
157
86
116
72
93
91
75
104
42
117
65
114
82
77
131
100
64
73
95
78
90
136
136
107
83
93
118
83
68
166
89
121
106
95
145
140
111
160
124
165
97
138
67
96
55
102
125
125
125
169
73
180
167
182
57
74
153
93
109
43
125
81
103
78
137
214
100
133
62
99
21
199
127
65
65
68
121
52
60
133
43
119
84
89
145
68
144
135
179
129
98
79
85
83
143
119
84
146
146
54
105
54
97
71
172
100
133
121
60
100
79
206
154
68
97
71
71
115
99
53
114
151
66
74
261
56
118
154
129
69
69
197
46
101
96
147
79
107
83
75
92
121
111
86
89
96
103
94
66
87
110
129
114
74
102
168
130
77
106
118
89
84
122
52
152
103
136
211
57
149
158
49
86
101
144
57
118
130
125
86
78
140
80
158
85
92
130
156
99
205
48
72
101
126
105
80
91
99
86
79
77
72
107
225
150
136
111
163
119
116
42
127
71
151
183
111
232
71
87
86
129
68
94
114
82
75
165
91
86
85
58
106
131
82
108
60
87
74
108
120
152
71
93
180
153
116
111
51
91
63
69
110
58
98
96
72
111
156
95
106
135
119
141
107
116
148
158
130
128
132
69
98
108
44
119
82
144
124
77
54
82
80
157
99
76
110
72
125
74
97
137
107
71
171
262
103
51
46
79
104
76
104
125
114
85
57
137
85
78
168
142
65
192
106
160
105
118
89
187
126
151
113
168
106
134
87
129
60
97
101
56
81
90
136
140
86
97
95
65
87
109
45
69
91
195
95
154
125
134
129
79
137
42
66
116
53
170
118
137
130
76
166
131
106
106
95
63
70
136
104
211
100
109
120
99
99
76
64
109
96
122
116
106
102
161
84
109
57
186
87
82
132
157
169
149
90
144
157
68
123
55
45
146
132
109
89
86
106
158
102
147
62
109
113
140
182
100
98
146
129
123
77
88
88
208
119
106
132
85
92
148
94
123
126
116
62
118
144
65
101
68
102
83
165
141
125
107
114
131
65
102
71
108
54
120
144
105
207
69
75
128
150
151
81
115
92
98
115
108
146
138
57
86
178
163
83
169
114
64
180
92
123
68
117
93
140
127
132
124
159
106
87
84
60
106
126
107
107
109
79
99
154
104
132
111
123
60
95
60
106
112
72
113
189
88
110
134
182
132
109
57
97
51
80
80
94
44
88
95
158
169
63
69
85
116
123
121
102
65
85
154
139
134
95
79
98
134
96
67
52
64
90
64
63
121
121
107
121
63
32
156
68
52
165
80
98
88
115
83
100
99
87
94
108
129
97
150
68
80
86
118
101
76
109
159
107
49
87
100
47
102
110
132
58
115
57
112
113
80
61
55
103
63
91
112
122
212
169
50
76
110
117
103
70
56
56
73
103
215
110
227
109
132
90
114
75
42
86
192
114
63
92
97
105
34
106
73
137
92
127
107
67
160
117
104
136
74
68
52
116
126
102
104
89
143
115
56
169
79
102
120
134
69
46
78
86
59
161
159
81
130
76
79
235
76
122
93
101
131
127
122
104
61
77
95
179
67
142
138
131
28
105
116
87
88
54
64
143
152
94
106
48
94
141
85
87
80
53
146
55
120
86
50
69
117
69
88
112
84
64
143
76
42
107
124
152
70
146
127
42
231
190
70
87
133
93
113
78
83
86
81
97
138
58
58
94
78
68
52
56
67
133
69
115
114
75
134
107
95
132
124
152
109
93
42
113
76
64
131
64
71
110
62
138
61
209
134
89
160
160
96
62
137
123
122
117
85
82
119
69
83
122
45
149
99
86
100
105
138
68
171
129
60
91
115
86
101
182
79
112
107
59
75
148
100
142
43
74
91
89
128
46
98
125
69
66
105
109
105
79
77
32
105
85
124
70
162
115
151
99
103
135
94
71
83
216
58
107
86
220
78
95
100
87
67
270
138
89
43
148
105
66
89
74
64
83
109
121
108
131
169
37
115
108
118
74
79
103
107
68
125
116
95
159
78
60
76
134
114
99
90
61
103
122
153
58
53
99
145
135
124
68
79
43
92
60
115
57
95
159
100
132
97
163
130
185
132
92
88
38
44
117
108
129
85
74
178
57
105
77
131
95
103
127
87
207
114
63
139
111
191
137
173
107
103
198
86
124
83
134
74
106
71
84
85
90
68
172
73
149
80
91
127
121
130
78
104
130
79
107
105
70
73
119
146
181
122
64
127
82
66
104
61
94
144
49
93
130
128
77
79
75
58
148
141
162
84
182
148
105
158
92
120
90
122
100
133
163
145
101
69
152
104
139
72
137
62
105
129
49
98
161
52
82
165
70
83
38
124
99
142
45
168
114
109
84
77
59
125
46
59
55
93
70
54
143
122
57
130
198
104
77
78
145
46
105
96
101
94
109
128
123
96
114
118
148
74
96
94
69
83
67
83
87
152
87
66
96
92
96
164
152
68
184
169
137
90
89
81
53
80
124
94
145
168
126
86
85
129
77
172
47
97
66
82
127
115
37
116
67
118
93
105
66
50
52
71
124
120
147
46
64
104
104
168
146
140
80
119
117
56
45
125
76
136
110
58
89
87
120
162
60
109
145
94
167
110
124
123
99
110
94
124
177
185
58
52
148
183
103
123
122
115
95
57
81
152
69
66
122
120
46
88
82
63
94
75
79
52
72
82
106
123
122
106
77
71
117
94
102
35
81
103
43
84
62
89
48
135
145
80
118
127
113
56
72
119
126
74
123
76
149
80
90
55
97
139
114
76
142
126
83
144
124
115
107
104
54
80
45
116
89
139
103
132
105
142
130
85
85
70
161
110
97
97
93
57
105
89
88
86
175
103
119
71
97
132
89
83
109
110
125
59
169
61
146
82
114
120
84
128
131
70
106
57
70
125
101
79
66
109
69
144
193
146
124
97
139
102
56
79
49
140
101
78
84
74
112
94
115
99
76
126
210
73
97
101
120
81
77
100
109
156
210
123
187
66
79
107
160
81
40
58
76
70
94
147
113
81
119
64
64
98
154
90
97
92
53
111
44
113
135
92
75
69
85
126
121
69
62
158
79
126
115
167
66
122
104
81
47
73
64
100
76
87
73
35
95
111
69
82
110
125
152
65
100
92
132
137
63
150
91
162
123
133
103
106
113
77
156
122
55
142
94
137
178
103
63
92
109
118
86
73
130
128
100
101
108
115
126
141
89
141
127
105
75
108
106
84
103
136
86
78
97
137
133
141
98
58
75
72
89
93
162
50
77
97
71
119
106
97
90
75
107
128
179
70
49
35
90
101
54
101
190
67
134
106
144
141
137
148
136
78
87
107
69
94
59
120
108
180
84
101
127
85
102
60
103
64
72
158
149
69
58
81
175
99
49
155
126
100
66
96
157
135
44
122
99
92
92
107
142
76
110
46
236
152
90
78
140
161
62
64
107
102
97
121
120
89
88
85
118
120
95
130
146
157
61
101
30
196
89
89
119
80
91
107
131
93
124
140
140
128
60
128
118
73
77
63
156
165
138
121
72
101
113
88
75
130
85
120
73
78
91
119
152
86
78
71
82
105
119
155
162
75
114
39
80
71
87
53
75
87
101
65
81
185
162
132
121
120
104
157
136
87
75
136
143
114
84
49
92
83
68
113
80
122
99
79
104
112
97
71
75
66
59
133
82
109
141
172
96
56
153
99
99
121
105
138
140
155
88
174
64
62
71
131
103
126
68
70
193
72
91
119
126
56
149
114
55
140
134
78
81
94
182
112
135
222
134
37
61
82
94
62
88
82
92
156
98
107
114
136
137
72
84
118
82
115
116
67
109
126
42
40
84
156
118
135
88
142
134
153
89
148
138
103
108
138
89
203
62
148
60
118
55
151
117
131
63
127
71
92
77
43
92
56
99
100
29
75
93
60
149
89
98
101
116
113
132
92
60
100
62
104
123
169
155
72
167
53
71
77
84
89
80
139
122
158
160
70
121
100
95
118
150
65
91
118
121
78
188
74
98
135
126
72
133
99
93
45
71
105
77
110
142
45
61
114
123
101
130
139
141
143
72
143
117
143
94
168
45
87
114
116
71
85
131
150
57
95
98
119
104
117
177
57
108
56
114
96
107
64
153
196
76
148
76
118
117
78
46
105
36
132
93
103
124
54
127
81
107
124
163
84
65
103
139
73
136
201
117
102
76
169
127
135
115
111
77
125
195
82
133
108
95
156
86
134
124
118
75
94
95
98
85
94
169
177
133
82
112
171
72
119
81
72
71
101
66
91
89
131
123
172
111
107
119
158
97
68
95
132
123
157
91
80
44
170
150
82
108
107
148
75
92
138
90
94
57
135
86
73
72
135
82
85
135
90
126
89
126
79
167
79
102
103
129
114
130
184
154
118
72
183
139
52
78
78
126
112
65
92
108
91
68
91
104
118
136
116
136
127
151
119
196
105
101
141
65
113
63
58
53
252
74
122
99
80
102
46
126
88
52
86
74
88
91
52
57
89
85
75
114
106
46
91
63
149
141
207
96
94
100
72
74
55
133
74
104
132
85
115
168
81
102
95
112
75
93
100
45
69
73
123
198
97
96
92
77
36
92
152
77
86
137
73
82
143
73
78
148
154
74
130
69
136
60
98
142
125
113
185
99
136
112
105
104
93
96
110
79
69
99
118
152
113
140
96
171
149
178
141
100
95
105
81
63
122
84
112
74
71
153
69
46
87
47
86
76
58
111
83
60
214
164
118
107
80
118
136
89
85
127
110
102
94
70
90
132
104
99
110
50
100
133
103
78
75
123
154
88
103
112
130
118
81
97
154
94
100
116
135
98
104
140
139
80
109
62
95
168
85
181
100
128
139
120
77
150
98
81
65
71
108
120
122
122
99
167
52
122
130
94
113
121
105
50
74
171
75
112
105
89
107
97
89
174
136
71
133
129
100
77
87
226
139
86
34
137
94
134
239
74
87
69
73
115
110
103
100
103
46
66
98
106
89
129
207
84
118
104
100
77
97
145
52
99
90
147
101
128
107
61
119
73
72
93
118
60
78
73
91
74
96
161
137
91
119
119
68
104
77
112
120
120
49
114
69
190
160
95
103
110
112
140
92
114
149
78
87
51
89
116
100
101
74
109
107
161
104
75
109
47
158
67
147
63
139
157
45
111
128
54
84
149
71
80
105
139
88
162
85
120
113
105
116
145
126
115
90
90
78
72
100
99
80
92
74
111
128
40
122
88
146
147
113
88
54
106
178
140
67
106
58
55
102
61
115
89
67
129
125
104
73
158
96
73
134
208
87
48
145
169
93
190
120
131
98
185
80
143
62
163
64
92
67
127
100
101
86
71
99
144
90
129
161
126
84
144
101
120
142
87
46
256
129
143
101
126
88
113
117
73
100
139
101
144
65
57
214
115
113
86
108
70
100
101
127
104
104
197
211
106
139
179
78
137
81
109
123
55
115
116
74
91
118
76
102
176
123
112
108
116
166
141
123
111
90
72
80
110
248
88
88
108
46
78
102
136
57
64
84
100
104
79
134
102
111
76
99
71
94
177
57
49
89
94
19
89
117
109
94
109
101
97
83
136
96
103
88
121
96
66
128
110
186
53
100
87
127
89
97
54
80
90
147
146
63
134
94
117
50
77
120
43
106
92
109
142
81
59
52
55
97
80
111
98
137
159
80
99
105
59
77
48
101
87
108
72
81
38
73
142
125
101
109
170
79
134
113
69
146
48
82
126
107
88
119
118
57
54
55
85
97
136
144
113
124
48
125
151
180
159
149
174
86
87
96
66
77
41
85
98
137
65
102
60
136
90
65
58
78
133
82
64
88
60
80
134
130
92
157
71
107
173
100
83
79
82
127
127
85
113
55
49
143
86
86
92
90
91
177
79
136
65
161
121
111
109
183
70
148
45
110
144
102
67
89
99
97
95
53
107
184
117
137
85
108
98
82
145
71
68
165
98
145
141
46
99
138
69
53
65
99
153
130
127
82
60
85
72
106
86
54
99
65
80
45
166
65
97
158
120
132
142
86
83
188
172
93
110
99
67
114
120
161
115
113
86
148
104
174
131
117
91
116
157
112
108
148
151
86
143
152
151
116
124
96
165
47
104
42
134
178
81
96
80
116
83
66
128
89
59
96
74
68
116
143
120
106
93
115
137
156
86
93
103
131
132
95
107
107
140
135
76
153
128
125
111
80
107
56
38
94
257
53
147
103
163
73
123
139
68
99
87
89
119
107
116
110
202
90
51
182
94
102
107
47
108
126
120
185
116
79
174
129
75
100
83
66
109
109
90
121
97
147
183
82
165
117
102
170
143
108
74
165
60
90
147
97
121
93
30
109
153
98
129
140
256
63
112
96
115
144
98
110
121
228
83
85
122
112
135
111
138
97
73
182
160
140
119
115
88
78
104
87
98
42
54
158
122
69
51
151
70
173
125
82
170
51
104
54
58
85
50
170
118
44
57
82
171
120
65
140
82
183
95
26
93
151
114
87
167
70
118
71
153
33
150
174
102
169
111
139
136
85
55
53
103
143
110
77
133
134
85
107
60
133
101
143
127
51
32
39
109
111
120
70
78
126
139
67
147
144
61
85
151
167
107
70
188
132
113
145
64
114
99
132
79
61
124
106
96
64
50
131
99
100
280
123
70
102
89
85
132
135
101
118
76
74
73
61
53
131
55
77
87
159
67
108
107
85
91
108
159
81
84
113
83
72
114
102
191
126
100
139
88
53
80
68
88
139
131
77
92
97
122
127
106
140
102
149
108
46
117
76
83
171
84
96
112
122
92
63
90
68
106
94
65
112
84
63
81
159
76
126
91
97
121
87
130
64
133
30
65
116
149
114
64
123
146
130
49
78
82
89
74
93
67
127
121
153
121
102
106
126
92
88
62
67
205
72
222
109
110
96
131
89
154
197
85
129
163
92
85
141
78
140
52
151
76
108
121
96
49
108
196
145
157
40
78
60
85
119
167
116
102
83
79
73
45
78
134
99
112
80
175
143
111
62
213
101
35
59
64
82
74
49
197
98
60
126
125
221
131
209
62
108
103
104
72
196
100
146
97
163
194
99
136
159
121
114
101
37
144
77
102
122
125
130
116
136
106
59
73
135
98
172
169
96
167
125
223
127
66
138
43
90
97
125
113
76
191
93
102
134
118
229
75
124
66
46
134
95
67
149
77
79
61
38
118
120
142
185
100
88
102
63
58
91
108
118
85
149
53
136
89
116
166
61
53
79
55
163
92
107
165
59
171
111
132
66
40
148
112
129
137
124
136
218
72
129
64
109
142
146
84
107
149
101
144
85
234
68
93
59
109
96
151
175
162
51
99
80
70
84
123
39
200
54
100
97
49
91
85
74
77
60
169
57
109
147
132
63
104
126
124
173
117
119
104
100
136
109
102
42
108
118
120
46
109
135
71
101
151
77
95
91
61
129
126
107
122
150
75
138
92
106
150
92
57
161
146
119
79
109
78
66
179
72
91
108
138
105
88
92
199
123
152
76
79
28
62
84
139
97
76
105
55
93
69
105
92
136
127
135
233
100
131
87
73
49
90
100
187
80
95
44
47
65
206
161
109
104
64
84
163
77
123
95
101
77
59
56
142
75
88
278
110
143
98
167
61
81
72
55
123
83
89
58
83
124
129
137
149
100
66
93
66
132
142
100
131
88
101
165
47
88
166
139
168
76
125
60
116
98
116
212
133
101
136
100
109
116
122
151
125
118
141
99
96
113
117
92
120
66
109
54
94
96
150
94
68
105
49
103
60
49
79
97
80
189
90
66
63
59
63
137
108
171
113
98
75
120
89
103
118
61
87
72
82
65
145
132
189
139
105
57
48
123
113
114
178
77
92
87
145
68
99
60
28
79
90
89
90
110
66
66
154
166
89
100
105
133
32
172
118
82
56
86
82
109
83
121
84
81
125
42
91
99
78
81
91
75
79
90
64
89
115
191
61
76
87
132
124
91
147
83
156
117
88
159
64
141
93
113
94
80
87
110
118
125
163
102
105
133
129
87
81
77
136
40
126
163
127
99
69
76
137
101
99
155
117
132
125
81
57
99
162
71
90
102
105
101
132
87
85
157
129
140
122
111
150
82
138
113
93
128
90
139
73
86
81
115
92
124
109
67
99
59
156
121
65
38
108
72
154
99
120
67
102
138
64
156
54
108
53
75
103
91
140
77
73
80
128
135
90
132
107
74
126
54
116
150
72
94
123
103
142
123
107
107
95
120
76
159
67
124
122
102
93
67
175
123
164
153
70
91
138
66
104
129
115
174
116
110
65
70
100
135
87
65
123
105
166
99
107
149
119
108
72
91
102
52
72
126
120
154
144
59
72
123
93
127
131
105
150
161
128
93
80
103
114
84
121
121
82
66
114
99
101
108
104
70
123
75
112
110
91
82
69
73
36
132
161
136
98
131
52
108
62
156
113
81
161
87
86
85
93
67
59
80
93
110
82
139
62
149
154
84
184
76
126
57
68
53
66
129
117
104
132
75
126
144
206
139
175
121
149
95
86
35
91
116
120
88
121
88
115
74
161
120
67
70
56
171
165
44
147
109
96
110
140
99
133
117
84
50
133
83
137
76
206
97
155
142
145
104
140
130
39
124
100
118
58
84
52
77
112
118
112
54
97
87
30
77
122
94
68
87
137
170
128
81
176
102
82
149
115
56
125
121
146
67
178
71
77
63
86
131
72
87
122
145
160
185
81
114
84
102
54
161
81
106
153
106
71
80
37
89
167
41
113
163
83
240
57
54
107
111
65
193
98
138
67
98
85
107
71
100
69
156
214
64
136
90
152
181
102
137
119
79
109
186
115
82
125
112
55
76
124
135
93
161
102
111
98
110
111
103
117
76
140
59
153
102
150
81
48
130
69
173
34
88
60
159
90
111
66
46
53
93
68
118
88
77
94
66
60
129
71
107
118
105
77
49
232
81
151
106
157
97
83
74
126
59
77
144
92
207
124
65
84
103
99
139
142
138
136
104
181
147
129
89
130
80
74
108
102
101
110
73
69
121
195
59
94
129
130
60
127
103
117
132
71
252
84
89
129
89
86
73
114
101
77
112
176
108
78
82
120
162
108
103
114
149
157
97
62
143
86
143
325
94
68
99
104
101
188
47
123
46
145
94
93
104
84
79
130
157
136
46
107
132
76
103
62
114
77
49
108
120
171
85
42
109
96
132
140
73
62
140
110
116
150
139
106
119
84
139
131
78
80
81
45
83
96
65
104
101
105
88
92
98
141
132
93
120
89
114
71
142
93
101
97
122
136
113
131
83
114
146
114
73
101
149
65
108
148
207
125
81
115
90
150
128
81
80
109
56
143
128
31
96
163
84
92
55
123
114
73
144
67
83
110
42
100
119
139
74
55
120
99
69
82
136
101
167
161
107
138
117
159
112
158
85
46
70
74
173
169
145
104
96
111
95
216
74
138
86
180
117
85
41
84
194
118
168
85
135
69
45
84
102
169
144
138
74
80
145
110
150
102
69
108
166
137
67
60
74
70
155
250
128
82
125
124
146
116
113
52
126
46
86
139
41
147
71
58
96
71
65
73
101
112
149
40
100
122
93
77
138
99
123
86
111
113
71
162
122
113
152
87
85
83
58
79
153
174
80
81
76
46
82
124
156
37
126
79
131
128
77
113
92
102
90
68
119
115
63
113
67
123
56
190
142
120
137
88
88
131
77
97
67
160
121
157
69
158
112
121
36
100
64
123
70
47
97
73
74
101
132
37
114
102
72
77
99
140
74
78
83
66
156
114
74
138
107
123
162
135
97
164
135
66
112
143
122
92
53
160
186
94
144
119
119
149
181
95
101
79
151
125
152
63
104
121
151
156
74
76
77
80
144
84
92
57
96
110
111
87
171
68
90
81
68
72
146
91
75
150
62
130
98
42
137
71
106
94
40
92
97
60
182
115
168
81
117
74
166
77
86
153
164
82
74
83
81
88
140
112
71
116
78
90
57
109
91
91
84
112
111
89
78
141
126
147
102
81
84
83
116
153
105
160
130
105
91
133
186
72
145
152
81
99
89
169
59
59
64
113
70
157
84
127
125
72
77
134
81
79
105
210
124
87
143
88
111
102
102
65
109
71
33
68
192
37
78
85
134
79
158
74
101
75
92
104
90
158
106
128
67
70
167
77
53
129
126
47
90
125
139
75
77
98
99
53
98
113
61
134
82
119
46
114
121
61
124
135
80
115
74
132
105
193
137
79
57
115
95
114
113
180
140
237
44
92
58
135
108
80
122
82
79
107
71
165
99
279
146
67
69
192
120
188
125
113
80
103
131
127
117
66
127
203
107
126
118
139
94
93
128
154
150
67
188
86
65
103
95
144
61
106
109
66
95
94
115
103
134
119
122
108
90
188
62
84
79
169
89
95
157
114
94
124
74
131
135
41
86
66
67
90
120
162
118
95
102
160
116
94
80
138
100
92
95
193
126
143
46
85
39
105
129
162
221
99
202
144
58
107
147
131
124
130
57
68
43
100
51
70
115
131
119
116
116
84
145
158
111
60
122
65
91
99
61
125
76
127
87
65
179
86
64
170
68
70
121
93
84
94
125
66
86
87
67
78
74
96
140
94
119
120
74
134
87
73
101
58
45
83
133
108
152
158
74
116
112
90
84
70
92
112
97
103
142
102
143
106
125
97
47
69
105
129
120
62
96
70
165
140
56
157
114
110
61
82
106
118
175
81
179
140
68
104
108
93
121
132
108
104
148
76
101
65
108
104
64
116
85
108
113
140
90
90
81
95
52
143
91
173
71
133
122
75
218
63
44
129
103
121
96
81
102
84
179
75
142
57
106
129
94
97
96
88
109
54
95
151
72
92
124
78
220
58
71
54
78
73
139
60
116
117
60
157
69
104
102
23
107
103
95
58
141
72
126
111
126
106
53
105
101
228
87
111
230
64
83
264
110
46
80
75
86
83
75
71
90
185
186
51
102
129
85
121
46
95
93
64
86
63
52
194
100
129
136
128
90
101
121
117
106
60
54
80
93
150
39
61
46
124
114
71
97
85
61
132
127
111
99
121
74
106
82
90
82
66
72
31
108
62
189
120
98
143
120
109
93
103
111
89
149
90
138
73
100
86
89
89
65
173
161
109
74
63
75
88
119
80
112
173
126
126
93
99
108
138
130
158
92
96
112
121
63
122
110
72
116
76
102
85
129
93
175
164
111
62
47
109
82
116
40
94
136
119
106
53
75
129
84
76
60
85
101
163
92
81
92
77
111
78
157
130
143
87
87
86
108
76
65
93
117
88
64
160
101
113
40
139
134
97
110
66
116
82
100
74
63
98
130
122
105
118
158
59
135
70
105
121
104
120
86
154
144
109
148
101
114
119
81
135
156
119
60
87
131
70
123
91
62
74
122
110
148
138
72
153
156
94
56
59
47
108
100
49
71
118
102
91
65
118
66
85
110
94
62
158
89
83
107
122
114
80
124
57
121
81
52
147
81
160
53
149
89
150
80
110
72
47
91
151
149
39
71
81
118
127
122
118
86
177
75
99
74
97
79
69
137
117
131
110
146
94
119
66
138
44
133
83
186
63
111
74
91
185
49
123
134
164
69
139
108
128
78
129
138
129
56
101
53
117
124
97
111
75
147
106
85
131
111
95
106
87
78
76
110
149
111
87
50
135
76
120
109
131
105
101
93
73
41
60
177
117
96
78
158
55
104
78
110
94
139
70
88
108
137
180
186
148
137
89
143
174
133
142
78
69
80
151
52
75
80
152
81
114
92
168
171
123
98
116
119
53
57
125
170
106
55
84
191
60
77
78
144
123
89
167
65
158
155
113
117
69
81
78
99
167
59
97
101
107
105
176
79
85
75
81
108
126
136
112
87
76
68
117
56
125
133
136
200
125
57
44
114
68
88
111
98
131
69
119
98
44
91
87
114
110
102
104
160
55
73
140
70
117
158
57
125
75
112
96
177
95
58
141
59
100
141
97
96
130
117
88
91
167
93
59
157
150
51
112
40
133
84
107
93
100
75
76
101
125
68
60
95
130
126
100
249
106
115
168
155
75
138
48
125
60
72
56
100
84
95
93
114
125
79
131
90
69
131
65
93
66
147
50
231
101
80
112
121
117
124
150
63
143
102
185
73
98
79
124
67
137
77
143
80
89
135
80
168
64
110
100
102
121
100
68
93
94
106
61
101
90
119
68
77
92
83
117
210
145
80
59
157
63
85
87
103
84
74
107
120
76
143
179
133
114
81
99
142
65
53
185
74
82
137
63
118
105
171
159
121
172
145
76
96
109
82
62
145
128
136
64
111
66
185
188
117
124
125
52
119
166
95
83
115
115
135
83
78
150
109
130
115
113
127
60
79
90
109
91
114
150
131
100
52
81
190
120
167
51
114
90
158
82
52
79
158
109
85
101
59
144
113
61
131
210
58
120
170
143
103
123
107
70
103
103
102
94
152
167
150
95
61
138
72
62
127
129
98
84
57
65
108
110
135
72
160
108
68
161
62
88
125
81
122
113
78
53
133
80
74
117
138
191
95
73
127
86
218
117
158
80
138
86
137
84
161
62
102
170
64
95
53
81
105
50
79
64
109
84
100
177
106
190
121
88
49
139
103
100
117
170
130
128
147
155
119
88
96
72
111
110
142
55
108
58
139
62
93
124
157
174
47
125
126
145
73
54
139
112
86
125
61
87
63
86
59
147
85
133
123
133
68
113
93
93
125
97
138
55
107
56
110
124
120
135
95
132
142
82
100
74
116
74
66
106
109
171
55
44
191
173
83
113
242
88
166
162
145
109
73
197
90
46
65
100
138
132
127
115
90
117
178
102
76
113
102
41
102
98
74
88
128
334
125
123
139
110
111
83
168
139
96
129
96
132
94
191
86
85
117
119
101
123
78
96
153
122
102
171
131
87
137
132
84
140
111
145
77
88
119
169
26
57
75
150
86
102
110
96
98
102
104
113
48
100
42
116
129
57
113
64
109
100
70
69
76
121
136
98
121
64
101
112
139
152
19
154
195
161
221
129
207
120
86
74
72
167
89
127
100
159
83
78
92
134
83
124
83
57
131
91
100
119
72
95
119
152
99
117
116
86
114
140
91
103
81
126
113
151
145
87
126
89
181
110
128
101
113
190
49
123
78
126
183
109
133
56
68
77
111
33
58
84
102
104
104
61
151
75
126
84
111
44
69
99
241
66
85
80
150
91
139
99
80
135
95
93
193
103
67
58
55
66
59
112
74
40
113
143
81
153
139
113
66
104
154
76
80
85
106
43
76
90
80
83
67
109
125
165
63
43
128
96
128
69
176
79
113
112
58
93
42
74
90
104
146
97
74
138
174
98
74
133
125
46
290
63
102
93
72
141
98
45
105
209
72
97
110
130
51
114
114
126
50
116
159
87
126
53
233
86
105
109
51
167
55
91
106
72
118
195
161
122
53
89
122
103
122
122
147
128
87
178
106
94
195
98
88
83
74
64
83
89
147
90
61
155
103
206
92
55
71
101
71
142
103
84
94
137
93
44
154
161
68
138
153
101
138
96
80
117
171
80
164
179
211
128
59
186
95
110
118
95
114
114
39
87
156
68
76
116
118
108
120
83
115
71
73
87
190
108
119
75
102
70
130
83
52
88
94
91
82
162
126
91
84
85
46
175
99
83
68
31
120
71
77
72
148
83
80
126
79
85
121
139
115
80
73
100
88
180
135
77
91
120
80
71
92
95
113
92
209
123
60
56
94
84
136
83
156
85
108
99
64
72
69
116
95
37
54
133
88
134
158
56
65
158
67
112
157
155
44
76
157
142
119
81
114
95
134
79
50
131
113
65
57
120
73
78
45
140
48
100
128
67
173
145
67
71
95
128
194
93
110
56
153
205
84
107
99
113
77
107
101
98
125
127
170
99
140
96
101
97
83
132
44
90
93
57
73
87
179
115
121
39
106
162
87
73
113
63
108
120
112
51
67
102
121
115
120
201
72
135
107
115
146
76
140
107
54
97
99
115
190
100
72
116
131
91
120
56
143
74
146
98
150
105
70
78
174
126
71
213
63
68
101
91
97
139
68
139
92
57
76
64
74
109
197
150
106
92
83
57
225
90
97
158
65
79
105
67
139
200
59
100
73
51
94
101
225
105
135
76
82
94
83
140
34
199
64
90
96
116
97
75
159
54
31
143
106
69
93
84
104
100
113
124
123
38
86
87
135
116
121
49
117
77
102
132
133
58
79
100
87
112
61
55
131
127
155
62
121
94
74
198
131
135
133
83
134
65
95
54
70
106
91
85
177
136
80
159
91
82
137
71
181
134
132
115
136
123
78
51
109
82
64
107
140
88
56
78
86
190
147
109
172
77
69
55
152
135
71
148
61
143
81
149
85
133
114
61
135
120
167
66
119
91
71
136
153
48
125
80
155
148
88
163
87
123
114
61
137
169
126
66
204
92
137
67
99
62
116
70
131
57
131
135
93
99
128
177
230
158
144
83
168
96
78
70
132
80
85
81
99
136
134
165
62
136
92
191
96
64
97
128
100
102
85
229
79
157
72
54
67
84
101
103
77
59
115
122
82
114
137
118
116
147
87
141
97
154
71
100
88
82
144
119
63
146
58
109
60
53
92
166
147
129
96
127
127
167
148
147
92
142
114
121
59
198
103
107
57
91
52
166
147
53
106
115
75
130
147
116
109
104
120
75
53
114
94
89
137
105
122
153
104
144
117
148
119
72
104
128
115
103
178
182
296
80
53
165
114
79
136
162
52
101
153
91
62
64
141
169
87
95
81
118
134
110
82
64
136
157
58
135
50
97
107
108
65
46
55
119
125
126
82
92
118
91
131
127
130
131
120
56
92
159
122
98
158
137
110
96
120
97
98
106
46
184
61
166
150
83
68
70
54
77
208
97
115
66
158
82
160
81
71
87
42
141
196
91
46
44
82
81
163
65
64
161
93
98
73
110
133
192
127
75
70
99
106
77
82
73
44
145
160
119
99
49
139
99
92
142
110
125
58
88
87
106
90
120
132
91
91
146
94
107
84
123
73
92
59
79
156
63
117
196
73
127
73
171
143
87
46
86
54
61
77
43
98
164
113
115
70
69
117
95
45
134
225
66
171
129
54
75
99
87
124
119
59
93
193
87
87
124
111
91
140
75
100
71
128
93
43
67
97
139
142
133
63
61
73
150
90
78
72
121
96
131
69
109
57
125
52
129
45
151
99
89
55
98
153
109
88
169
105
70
40
149
71
100
79
80
96
86
144
117
154
106
155
115
106
89
94
89
42
161
53
101
75
161
86
102
48
136
131
87
64
70
136
117
143
74
96
146
84
81
102
118
86
115
111
70
120
108
78
118
139
91
34
103
106
139
82
154
53
122
200
90
118
118
72
125
89
62
132
68
72
58
54
88
95
154
75
88
103
87
165
116
70
92
124
63
66
77
45
69
118
70
73
117
97
109
121
124
119
62
165
127
356
146
91
74
150
96
104
103
88
96
132
99
124
81
63
165
108
91
169
223
96
128
192
71
57
173
96
135
57
206
72
77
86
82
164
198
108
134
177
128
136
104
141
97
86
109
64
101
102
45
102
78
126
166
118
112
127
113
63
78
119
146
164
101
78
88
116
140
83
108
149
84
167
51
66
81
111
92
76
65
122
156
67
159
76
63
114
81
93
75
115
93
159
131
124
57
140
88
123
84
98
119
60
102
63
111
73
161
113
107
94
106
102
38
153
74
73
83
63
41
95
126
70
67
69
97
151
102
89
200
79
74
66
179
194
74
135
174
78
105
69
32
57
136
76
125
106
55
160
135
70
100
155
168
177
132
155
122
100
68
43
76
129
63
95
83
100
135
121
133
61
141
107
126
92
80
70
71
63
127
76
54
180
71
81
127
134
113
78
103
82
130
132
128
81
153
66
120
94
147
137
98
135
91
113
114
172
129
99
141
99
86
107
96
125
127
90
170
97
78
158
62
108
131
159
57
117
132
93
132
210
66
100
101
195
114
153
167
82
173
129
75
92
108
190
113
69
50
92
102
147
182
103
85
170
130
71
92
175
114
71
99
182
121
74
66
115
107
59
93
107
103
123
71
123
53
150
148
116
188
65
149
69
147
88
95
40
67
112
92
82
135
115
77
161
83
92
83
106
140
144
88
86
118
63
137
82
64
89
129
69
80
123
177
108
105
161
145
113
46
115
111
65
130
115
151
117
80
67
109
107
96
131
77
60
123
117
135
133
58
100
69
176
77
145
104
74
168
132
110
135
55
114
46
137
33
81
43
58
73
82
100
121
85
136
103
78
92
86
76
74
63
187
46
125
113
131
139
35
45
80
63
175
110
144
92
146
181
92
148
107
121
137
87
89
119
111
131
58
89
74
45
147
69
92
96
145
64
206
75
63
113
149
123
123
107
92
111
47
45
47
119
55
146
82
50
131
81
109
92
99
74
74
120
102
30
139
97
142
115
119
137
124
112
137
100
108
49
105
66
122
212
115
72
169
113
101
149
162
125
132
99
54
131
163
73
112
82
92
77
98
108
82
193
38
99
92
90
104
126
77
89
74
108
109
189
255
86
110
55
59
88
129
92
94
81
128
77
75
109
130
188
130
124
192
149
124
68
122
140
127
60
120
155
125
113
96
84
239
46
35
193
109
218
156
98
131
133
145
116
86
104
102
89
144
94
101
95
123
106
50
55
63
91
114
127
128
166
162
64
147
98
109
209
141
82
70
48
176
115
105
115
81
72
91
77
104
124
69
108
82
259
116
98
81
99
129
237
78
118
148
115
64
136
104
75
76
90
79
114
138
71
52
86
119
106
116
83
136
113
59
121
129
90
142
120
65
126
76
144
151
63
68
123
88
143
122
75
79
124
83
103
62
67
111
96
123
120
54
50
129
139
134
119
124
110
139
114
232
98
52
107
52
234
120
87
64
107
104
98
209
67
177
73
108
90
132
85
103
73
142
117
54
108
63
71
108
82
138
69
59
165
33
91
47
149
63
149
82
60
93
162
89
87
105
71
195
53
209
118
107
87
155
71
166
70
121
69
103
65
158
141
74
102
143
122
89
122
126
87
107
122
161
71
131
174
204
104
105
117
96
34
69
66
88
105
179
66
85
137
163
134
70
87
91
122
147
95
101
52
126
114
116
135
113
66
130
137
84
168
56
111
76
124
162
117
82
122
154
118
79
77
99
80
231
117
90
99
137
162
156
47
105
45
136
80
139
96
110
95
155
87
129
141
103
155
123
161
99
141
101
54
172
59
80
170
81
176
89
57
94
59
98
165
118
49
205
78
112
101
154
63
48
59
117
80
48
83
40
91
118
103
55
95
106
63
57
139
97
116
91
72
130
94
96
96
151
81
92
68
139
93
153
40
56
58
166
113
59
115
70
92
89
70
97
78
135
77
76
96
164
79
112
46
105
115
177
108
69
105
75
109
59
111
91
33
74
136
92
110
97
108
113
143
60
142
119
64
73
152
167
141
105
83
119
113
119
117
128
149
81
93
175
129
122
79
110
138
116
61
121
72
144
68
151
76
139
108
76
77
72
70
151
91
61
64
121
48
164
123
135
156
111
101
76
55
41
60
79
91
120
102
141
145
100
71
161
151
86
67
78
134
129
92
87
155
76
159
107
82
112
63
56
54
80
122
100
152
75
218
97
106
111
156
122
66
151
129
44
120
98
100
109
116
67
141
128
202
85
68
132
137
67
66
126
210
141
69
113
141
128
131
117
89
74
134
163
78
91
90
98
109
82
87
91
152
78
108
160
134
63
149
73
68
174
53
68
39
68
117
101
53
99
114
153
123
91
111
99
65
126
109
96
123
47
81
57
40
95
140
109
39
119
146
104
117
109
28
83
70
43
108
39
86
87
124
105
108
130
92
65
161
154
105
68
62
112
78
87
77
103
144
100
65
199
101
47
57
112
90
108
69
100
81
42
179
123
106
154
62
81
81
133
79
153
129
41
97
114
109
208
176
148
105
99
102
107
82
65
69
145
76
157
124
91
67
117
137
128
74
55
115
124
150
76
70
158
112
162
90
124
111
62
111
78
147
95
66
98
135
143
71
178
80
154
95
156
91
79
101
89
68
64
86
58
104
61
63
107
123
77
146
114
136
153
120
112
128
145
100
105
60
109
121
97
91
87
67
146
130
82
239
90
115
88
129
138
61
107
127
86
138
88
91
156
53
74
134
126
112
78
97
117
86
124
60
70
77
95
93
119
97
59
140
85
102
51
70
61
129
73
131
102
96
136
144
52
75
107
91
85
116
43
117
123
102
50
153
117
60
65
84
98
124
88
215
92
74
88
134
76
42
89
91
82
104
125
49
70
158
135
65
106
118
61
116
112
41
137
77
170
171
134
184
69
134
91
39
189
121
123
71
104
104
34
92
57
187
61
84
112
77
157
99
58
156
122
106
152
114
99
75
62
118
155
80
63
129
136
117
138
115
116
134
78
74
79
188
87
202
97
115
121
145
132
101
150
106
212
69
121
83
97
137
92
78
126
73
103
117
73
172
99
149
83
169
49
120
66
115
106
82
63
79
127
44
134
79
156
106
109
71
138
274
104
48
85
105
107
106
136
60
92
145
125
130
71
96
127
177
34
151
101
77
99
114
69
164
116
101
66
92
58
114
93
138
50
138
102
117
32
146
119
100
82
84
132
118
123
91
84
141
133
76
86
38
134
97
54
36
62
58
118
95
92
86
119
228
58
89
83
81
93
113
120
79
130
55
134
107
50
133
57
129
41
126
124
100
167
173
111
214
274
127
96
98
156
117
95
77
119
152
124
66
154
115
75
168
97
90
63
55
130
181
68
47
70
101
84
73
104
42
120
65
120
132
117
75
177
81
150
122
145
75
93
80
148
139
83
84
112
91
112
49
52
154
263
72
257
193
79
82
106
149
124
59
74
109
59
91
111
151
44
66
100
153
146
125
137
99
50
62
71
94
103
83
130
98
67
162
137
105
75
88
148
55
121
128
99
115
100
134
91
54
88
140
70
55
110
120
106
88
89
94
127
137
208
70
83
63
88
58
112
186
124
71
77
127
61
149
139
81
103
93
139
80
84
196
144
108
88
89
92
81
65
85
128
133
130
102
84
163
127
106
105
105
96
93
191
59
101
68
69
190
121
97
115
53
130
186
112
45
114
74
49
149
88
101
54
109
52
161
146
139
148
85
68
102
79
127
113
60
75
74
202
110
105
100
157
90
105
142
95
119
137
107
84
126
66
122
98
123
142
69
102
81
152
105
80
96
98
86
62
84
192
71
91
106
91
102
75
161
129
126
47
175
70
182
71
108
217
91
105
89
117
138
97
95
139
143
117
53
79
192
135
132
114
72
87
196
138
94
130
75
102
109
48
54
66
144
87
154
154
119
103
55
154
78
73
178
97
52
85
84
132
102
100
83
161
150
62
120
87
109
144
91
96
127
118
83
115
51
107
119
163
71
100
120
122
130
90
122
113
76
70
66
65
54
141
74
122
83
115
129
144
56
120
78
112
85
119
146
98
68
132
146
89
45
46
147
190
148
50
50
111
61
190
78
143
55
132
89
105
141
133
110
233
145
56
126
117
178
163
93
48
106
123
77
137
92
71
71
173
110
127
54
195
53
84
144
75
45
81
103
82
80
136
66
94
54
162
182
108
182
82
188
151
144
89
59
97
64
127
157
114
64
76
109
62
47
76
153
90
156
122
95
114
124
151
104
55
59
67
109
82
90
73
113
124
93
86
126
94
77
126
143
84
118
138
159
63
94
109
139
63
55
112
149
53
67
88
91
119
76
72
103
83
113
119
61
91
87
63
45
78
63
145
126
154
130
97
80
101
76
73
110
30
116
102
32
81
42
65
135
94
93
92
99
106
73
78
85
171
149
70
86
90
175
98
62
190
114
51
127
129
104
83
117
93
164
69
131
114
114
83
99
92
65
119
104
159
69
89
83
50
123
91
82
24
99
60
52
70
61
102
148
114
115
56
42
71
88
109
107
166
186
79
143
102
126
95
90
146
86
113
45
103
114
76
147
92
94
38
164
41
112
99
120
95
88
96
30
122
80
165
64
125
187
96
106
52
94
113
117
94
141
145
157
87
87
84
133
79
98
59
138
129
110
118
108
76
139
123
131
122
133
137
166
102
158
104
67
54
110
130
132
141
146
181
115
124
51
82
92
109
94
109
137
115
84
61
141
121
97
99
61
73
157
64
156
92
67
149
72
156
120
107
54
84
93
72
91
66
79
72
73
83
184
125
107
184
49
144
109
112
114
138
35
102
199
67
127
99
53
143
54
99
77
136
140
67
97
112
123
138
88
100
53
70
47
97
73
149
100
53
99
96
64
101
164
107
149
104
74
62
124
104
108
114
93
82
68
109
109
174
125
137
110
66
65
99
60
140
56
105
178
119
194
86
98
97
83
146
87
158
81
143
100
94
103
56
64
80
73
123
99
107
95
104
198
101
139
100
162
137
79
154
119
96
139
56
159
113
97
144
139
92
100
102
147
98
111
89
83
157
67
68
111
97
102
134
182
114
109
159
153
79
130
60
102
109
124
143
110
120
190
161
89
81
66
208
148
162
154
112
125
156
66
153
93
131
102
140
139
108
77
112
93
69
63
77
91
75
132
101
106
107
66
93
125
80
115
135
168
81
98
79
120
88
80
171
108
57
82
64
168
119
149
166
83
213
104
122
97
56
113
128
157
125
91
172
66
123
158
86
100
80
79
181
101
126
134
129
66
110
128
151
142
75
95
136
80
76
148
37
94
90
107
95
176
108
140
87
95
64
149
166
59
142
83
93
86
121
116
90
156
143
108
118
107
156
144
96
184
109
107
164
51
120
50
129
85
171
122
149
67
63
150
140
114
146
76
137
83
106
66
190
88
63
109
233
70
163
115
106
102
207
121
110
97
58
104
111
233
113
102
81
109
145
104
112
120
63
134
119
73
73
150
89
93
136
85
64
107
83
191
120
106
49
77
127
61
46
155
159
151
215
144
84
145
178
124
141
85
103
115
118
77
144
132
151
90
106
83
119
92
90
119
65
94
99
141
121
103
150
78
93
173
150
110
70
78
103
89
78
92
54
64
154
97
114
68
146
89
86
72
75
96
90
101
116
68
97
212
128
176
93
142
95
84
97
86
67
80
162
159
129
69
60
156
96
75
129
136
82
67
64
115
95
140
78
154
78
100
82
71
96
76
145
76
52
105
70
144
42
99
90
113
167
148
115
154
97
143
146
97
88
122
62
77
98
32
104
88
99
73
115
131
83
95
115
95
50
137
124
138
63
98
220
151
72
90
119
55
101
104
64
93
233
163
88
86
56
133
77
74
48
72
107
87
64
70
108
37
102
122
93
67
64
59
139
77
67
138
155
100
69
146
74
84
103
132
144
72
117
37
84
74
186
67
138
185
65
68
158
164
109
95
96
98
72
134
131
137
65
121
129
100
48
66
95
125
106
68
83
122
91
146
63
116
131
143
131
123
137
52
86
115
96
147
117
80
93
128
50
38
75
65
64
54
87
62
107
88
156
190
111
182
177
160
175
129
151
62
118
136
101
125
78
143
88
64
69
122
78
132
53
143
105
124
103
189
139
224
105
22
94
61
162
140
137
103
76
101
80
81
55
89
115
105
109
126
111
108
46
56
45
96
130
124
235
67
120
148
56
116
146
150
92
139
73
97
148
108
121
65
47
41
106
93
73
58
75
107
95
167
96
74
103
61
68
108
102
71
76
85
69
100
79
176
96
204
152
138
62
122
117
93
115
110
96
44
55
50
97
121
135
101
53
72
147
53
106
64
127
38
167
76
83
125
137
122
66
119
78
145
62
117
91
148
99
142
108
123
88
167
124
117
160
93
102
167
117
79
67
78
66
128
82
40
145
68
87
99
131
114
66
138
150
89
56
122
79
83
115
131
132
40
70
71
54
60
109
84
146
110
72
102
117
104
114
101
181
110
89
89
50
60
103
112
80
40
149
64
114
75
91
116
123
88
89
168
76
101
142
145
101
74
123
94
75
97
173
158
129
71
102
156
138
72
57
56
80
96
62
99
143
48
88
159
80
76
128
73
100
87
75
109
153
109
90
167
112
115
176
103
83
110
122
87
140
53
49
147
112
100
46
103
83
81
78
90
92
72
78
157
123
83
154
146
84
170
78
120
94
159
83
64
127
130
208
128
85
95
105
89
143
147
92
106
112
133
87
75
118
128
117
69
138
115
98
187
59
151
162
140
149
75
80
102
115
119
93
145
60
74
96
141
78
143
66
106
114
80
140
143
204
114
100
138
153
62
69
140
76
146
140
108
98
172
102
97
122
142
114
30
90
84
59
183
158
111
43
65
228
60
92
94
136
142
78
96
126
78
101
121
121
128
134
66
75
77
100
104
112
67
71
106
105
71
108
176
62
132
68
52
85
144
72
109
58
73
131
139
36
97
109
183
101
60
82
107
146
151
79
128
120
104
69
127
67
114
38
101
98
102
172
94
104
78
109
126
159
70
104
144
105
79
213
121
170
71
145
129
120
161
201
122
124
196
128
150
173
112
48
146
56
60
33
135
140
69
102
59
121
122
110
103
58
104
110
129
77
101
138
106
90
92
58
96
119
79
113
88
96
68
129
44
130
77
72
89
129
41
113
123
44
36
52
121
112
118
83
36
116
96
126
105
30
183
144
79
136
55
80
41
133
124
100
107
95
89
92
74
113
185
44
93
132
97
89
66
72
173
50
95
96
98
110
114
136
69
41
123
111
103
74
136
108
155
37
81
157
77
28
122
173
86
136
129
127
107
205
80
89
83
75
79
69
173
111
69
139
31
98
79
113
53
174
87
108
101
77
69
66
148
122
127
118
149
139
116
117
122
107
68
157
100
102
53
96
97
117
111
99
103
112
168
93
112
105
48
134
86
129
115
117
111
82
116
98
129
135
91
98
83
97
93
81
114
111
97
198
92
167
95
166
141
101
66
87
95
133
103
107
101
113
142
61
212
71
107
125
118
51
123
101
121
79
78
121
71
83
117
160
72
96
74
139
132
240
82
51
72
142
109
122
104
124
158
74
71
137
95
58
164
155
43
72
78
125
83
160
44
64
106
115
83
47
121
96
74
108
49
80
168
143
154
19
153
102
113
127
96
115
67
66
94
154
153
100
95
88
131
108
99
120
108
125
102
93
83
69
130
106
61
106
111
79
125
128
97
162
178
73
66
43
105
79
99
79
78
75
105
102
70
109
36
72
112
137
89
126
68
94
129
80
64
131
120
88
83
164
133
137
173
163
103
87
154
63
37
148
93
69
145
100
220
109
72
137
143
162
127
54
112
91
110
107
211
64
63
111
131
102
68
125
142
166
78
64
123
182
115
81
70
64
115
88
161
95
57
69
57
83
89
129
158
89
101
158
91
195
111
67
156
172
88
82
69
72
143
138
123
63
66
59
78
98
151
91
145
68
97
155
68
130
68
116
48
81
171
52
53
123
99
165
60
162
86
126
176
67
103
155
103
79
65
50
53
100
95
143
142
36
77
152
133
120
136
110
128
111
104
74
98
147
147
127
146
72
69
95
69
93
78
129
114
100
135
89
110
113
126
77
122
105
67
95
80
123
67
77
119
76
57
129
141
61
86
254
77
136
140
88
108
94
153
68
105
55
92
91
64
138
130
89
52
69
48
112
97
122
58
116
132
102
95
73
139
108
169
133
76
90
191
112
103
39
107
60
148
172
88
113
89
70
70
89
62
141
177
116
133
178
98
79
108
92
118
72
159
90
122
148
120
78
151
90
117
62
54
67
106
119
139
125
86
132
171
91
69
165
102
174
60
118
125
102
136
80
123
92
142
90
96
59
114
180
96
73
135
144
131
42
59
100
84
114
54
112
82
123
128
123
123
56
125
35
183
156
170
137
145
33
124
73
82
52
72
163
144
113
80
114
89
144
153
171
65
184
143
186
71
144
73
87
100
159
112
123
47
158
51
69
236
132
122
124
103
130
133
67
102
80
116
213
194
105
81
253
179
125
106
110
140
131
101
136
81
69
72
75
70
88
108
94
129
94
94
103
101
175
75
131
53
85
157
44
112
143
109
81
203
62
68
131
45
178
184
64
126
115
72
146
61
175
118
78
151
65
73
106
130
163
120
127
58
122
123
88
68
48
100
167
67
48
77
54
105
96
129
67
80
79
90
82
74
105
87
87
61
61
47
127
72
126
70
146
124
79
114
122
54
138
139
94
87
116
73
85
72
114
184
139
88
57
98
94
153
58
68
36
114
113
117
85
137
161
93
176
104
156
139
117
48
232
136
124
123
90
86
146
76
176
96
163
113
128
101
132
114
88
141
170
93
136
125
92
71
130
183
192
119
112
80
108
71
154
122
140
34
160
40
89
78
71
68
128
69
107
125
76
65
55
126
144
151
88
77
58
82
71
68
90
83
181
97
143
95
108
135
73
138
50
67
131
80
126
91
60
214
102
128
163
98
134
73
73
95
152
49
111
146
144
85
137
140
108
149
109
52
91
95
93
77
83
73
79
95
81
147
98
198
90
76
136
127
101
57
162
58
127
102
127
138
148
59
134
237
52
139
114
151
126
89
106
42
85
96
149
65
101
113
50
61
62
119
126
108
95
94
110
73
40
38
94
107
96
82
97
43
62
93
107
85
119
118
124
95
72
117
60
143
144
120
74
80
126
115
96
52
105
71
66
62
185
72
175
109
88
114
219
66
117
144
160
124
67
70
100
33
96
110
139
123
70
210
163
126
116
118
89
72
151
96
132
45
141
247
124
166
117
114
72
69
75
158
69
132
102
104
132
107
59
105
56
61
117
170
82
95
68
77
80
46
87
76
48
105
131
112
54
89
63
109
124
112
85
85
189
84
76
71
83
112
85
140
113
132
71
70
99
133
81
44
119
55
117
62
192
119
145
63
97
71
154
120
68
100
31
135
162
100
84
101
83
92
83
101
95
84
75
120
120
139
95
64
80
80
133
132
129
60
114
112
84
124
116
83
101
85
94
107
112
112
187
87
86
118
60
143
49
65
200
114
102
91
135
92
210
69
28
57
120
113
199
47
91
87
149
126
83
91
97
56
140
125
93
123
101
41
142
60
57
81
148
83
136
132
91
87
106
173
82
91
60
85
104
80
109
110
58
120
84
137
66
83
109
57
140
68
151
145
63
68
88
99
93
45
148
50
138
92
100
121
115
70
136
131
120
119
101
73
94
74
83
47
57
83
83
67
152
190
158
69
192
177
38
112
95
70
67
119
54
157
92
87
83
79
91
66
144
110
173
72
67
93
43
62
98
204
84
188
179
41
89
126
34
100
108
36
136
67
74
75
100
110
96
61
105
87
82
167
56
79
133
141
54
71
61
69
98
65
82
110
94
97
207
102
91
78
92
76
72
188
116
48
135
96
102
75
102
107
126
106
200
88
101
133
83
146
90
80
111
199
118
73
106
158
113
138
159
108
132
53
149
140
143
112
110
94
103
118
92
82
78
141
91
141
156
138
117
98
62
155
71
123
142
64
167
78
138
124
156
118
123
97
79
110
152
128
149
65
124
97
151
132
155
165
143
112
124
131
55
118
100
71
40
62
101
63
40
28
101
151
84
44
73
133
78
76
84
87
141
120
135
153
109
71
95
75
73
37
116
38
87
101
64
98
130
105
52
130
51
99
66
145
91
122
167
146
86
127
58
78
133
111
115
150
72
97
162
113
134
52
94
66
125
68
130
137
95
96
84
85
32
69
64
53
91
101
117
72
86
113
130
75
159
45
54
77
86
112
59
94
53
225
45
100
95
53
110
90
84
79
138
83
42
128
156
119
80
47
48
126
121
218
65
149
123
143
119
107
196
134
139
124
143
75
136
66
111
134
196
106
111
132
89
117
91
128
161
76
91
91
92
96
103
119
124
112
138
139
103
102
77
116
81
53
82
99
122
93
163
148
183
121
112
88
141
85
235
119
70
104
131
103
130
132
95
118
122
147
127
185
136
90
122
100
74
130
90
65
83
124
89
90
116
86
187
105
119
111
109
127
73
105
121
97
161
169
118
143
150
47
125
172
37
110
83
103
94
88
162
78
38
37
143
103
62
133
71
157
130
176
138
84
171
177
49
181
73
91
185
99
115
154
141
113
89
125
100
59
104
51
119
83
106
108
124
158
78
41
62
56
80
75
228
50
96
47
86
132
104
175
89
85
94
143
68
77
107
169
66
116
131
100
114
140
137
135
89
92
116
98
81
142
125
62
105
71
157
173
69
97
135
147
52
87
95
133
96
70
141
122
102
65
137
111
120
54
74
64
163
93
161
86
62
95
103
90
185
92
139
107
72
165
141
102
134
68
100
122
88
79
53
102
145
130
54
85
110
106
55
86
59
96
113
43
62
119
60
117
62
87
161
93
104
153
89
97
92
90
81
107
69
63
36
46
152
100
45
179
37
84
139
58
112
127
102
145
103
43
139
98
182
90
102
99
116
142
119
79
102
111
140
104
113
171
88
145
98
83
82
64
110
96
116
134
55
199
134
150
69
73
120
97
89
148
102
127
133
121
64
126
136
110
129
91
177
67
95
102
95
115
106
59
139
50
184
68
117
129
183
111
141
100
156
141
132
59
147
111
191
51
75
138
154
90
208
97
110
64
97
80
80
65
99
111
149
174
115
97
64
92
127
104
114
81
153
165
105
54
109
105
97
149
39
110
121
123
111
168
120
111
76
84
151
82
125
99
59
98
71
137
114
44
139
55
106
82
139
129
93
42
85
44
101
114
127
145
88
55
129
154
175
85
89
57
97
78
31
72
123
92
81
179
143
54
142
80
158
73
103
59
57
99
111
131
83
56
81
128
93
80
93
171
120
107
135
105
61
142
71
75
80
178
106
56
222
59
43
138
193
72
66
115
96
54
117
146
132
125
160
168
58
88
100
128
122
130
150
68
60
78
86
58
164
161
95
53
84
55
79
68
86
143
129
49
113
105
97
85
61
98
109
118
54
139
68
121
127
81
55
52
55
54
89
90
90
117
92
154
78
115
151
76
76
85
88
102
129
67
100
74
98
127
78
103
138
100
91
144
60
72
135
72
96
71
96
77
96
119
160
115
94
66
117
111
122
95
76
110
143
85
68
105
99
35
99
116
104
155
109
100
169
69
78
82
77
206
83
106
75
87
41
108
97
50
136
134
75
61
97
57
97
102
96
91
68
72
111
120
135
94
90
93
104
142
38
75
157
105
147
135
125
201
90
184
117
88
48
100
156
83
130
116
144
109
106
153
40
87
74
110
71
163
127
74
85
152
129
141
54
50
93
134
55
94
56
107
80
77
122
115
126
55
112
151
210
148
113
139
112
62
63
100
72
123
97
60
119
184
35
96
113
75
84
72
115
82
70
121
119
130
143
174
107
100
96
91
196
60
188
148
129
77
101
92
70
56
75
56
114
67
158
98
80
152
101
109
105
96
34
102
134
96
104
255
143
198
82
60
118
100
74
143
66
39
88
116
90
68
70
120
145
96
96
144
57
82
141
119
87
90
95
157
62
90
91
69
129
108
61
91
72
48
69
121
66
64
35
88
113
117
169
52
72
121
104
71
129
42
93
126
145
77
114
124
94
94
112
152
188
146
66
36
129
86
70
95
132
58
142
121
64
74
103
137
58
274
64
92
77
120
114
83
79
66
110
172
64
112
49
149
111
147
183
109
90
100
94
135
230
86
162
78
62
239
181
72
159
60
127
105
94
67
97
112
79
145
113
153
185
105
89
97
114
143
153
133
65
220
71
57
54
62
135
59
197
107
129
118
113
96
151
76
143
79
84
56
65
220
65
51
107
75
90
52
145
157
46
106
257
52
135
85
114
126
221
77
81
97
117
106
128
118
109
108
68
54
51
83
59
84
88
121
98
145
162
130
46
157
105
91
78
64
169
81
123
98
154
103
64
105
196
72
120
66
63
59
106
101
93
78
52
95
130
105
115
256
93
82
78
99
130
106
108
101
119
100
174
72
55
140
99
67
93
99
94
75
96
74
66
91
104
79
139
183
125
75
73
164
119
70
119
159
79
146
55
148
111
141
216
117
115
132
85
39
72
122
99
183
139
169
50
32
124
126
132
79
76
86
59
140
137
96
141
93
28
59
78
84
128
122
196
129
115
80
103
74
65
101
92
124
59
95
69
120
84
129
50
106
101
83
71
91
99
138
109
88
93
161
42
179
173
123
113
145
77
188
62
84
133
238
118
137
120
127
73
112
79
83
136
101
54
72
53
154
68
120
69
34
79
81
149
131
70
114
68
165
80
93
105
84
189
82
58
124
115
103
188
135
37
116
135
138
103
54
139
54
63
83
71
175
62
85
85
94
146
145
150
99
105
199
64
80
106
66
151
87
117
84
163
111
75
66
65
80
115
75
75
114
81
56
94
48
115
193
132
78
120
100
123
103
65
67
101
133
100
115
121
99
137
87
169
107
88
78
157
100
169
105
81
116
110
101
46
135
94
82
109
92
131
158
197
93
55
123
123
144
134
153
118
97
134
127
112
55
109
118
56
54
61
76
134
132
61
85
90
160
137
131
113
115
113
54
167
56
101
122
115
179
103
105
74
88
107
99
166
138
91
93
76
76
139
113
109
153
91
105
152
151
73
59
109
93
72
122
120
166
138
98
41
143
66
82
90
97
137
106
52
60
136
107
92
159
123
61
88
65
96
162
96
103
57
37
151
67
82
100
87
137
115
89
96
105
108
119
48
80
57
148
165
86
98
69
96
88
156
118
78
61
132
66
74
59
126
69
142
55
87
119
154
182
184
65
139
73
108
102
83
93
100
92
125
131
76
50
108
79
83
100
107
180
183
91
114
49
123
105
56
67
90
166
122
125
114
94
96
122
85
56
94
67
145
94
77
112
111
101
143
77
64
109
152
86
85
102
70
67
114
109
147
84
108
96
117
82
139
58
116
120
73
147
69
106
75
63
114
61
115
107
107
45
105
107
70
175
137
101
87
89
84
209
81
69
132
74
79
104
100
78
129
105
89
122
120
63
90
134
122
119
129
102
117
119
99
78
104
114
195
108
39
74
99
76
72
106
91
142
127
72
127
142
130
141
101
55
161
87
157
104
125
119
62
108
106
109
70
134
126
66
35
88
93
98
138
113
144
130
117
110
76
118
106
98
113
98
181
140
78
120
116
103
101
155
89
89
158
74
53
110
134
133
99
107
148
145
110
131
160
89
162
90
88
74
124
89
114
62
70
90
90
67
140
88
115
122
127
148
103
87
225
127
126
76
76
75
67
130
78
154
117
63
264
128
104
107
131
132
97
96
82
87
84
95
93
114
70
82
144
91
79
57
95
116
104
124
114
95
48
70
132
140
109
112
205
141
79
53
123
134
160
64
60
97
140
123
159
61
89
134
88
68
81
78
123
127
48
154
95
101
60
112
120
72
90
61
166
85
42
69
54
76
81
70
50
117
116
137
120
75
76
85
59
102
112
83
96
122
81
81
91
85
104
106
84
162
108
79
103
77
118
113
86
96
141
77
169
157
78
81
101
162
184
167
104
46
85
80
124
40
194
47
66
151
83
106
178
81
132
205
141
142
112
149
86
73
80
76
52
118
116
98
58
77
82
30
65
89
77
48
90
114
66
127
126
95
99
97
91
106
57
166
160
70
123
133
90
97
74
73
92
58
198
76
133
117
79
91
66
71
93
39
71
104
93
111
58
193
98
128
103
58
153
102
129
79
101
44
79
112
130
117
70
104
127
115
87
133
85
129
87
68
80
109
81
67
80
126
114
138
78
157
86
117
112
108
63
121
134
101
149
113
87
129
95
92
73
113
43
113
118
83
112
80
203
139
86
110
90
139
85
112
124
133
76
102
120
123
142
117
86
115
88
79
133
156
105
121
101
75
66
148
128
184
130
92
51
127
109
102
115
101
143
124
98
83
199
104
55
210
44
185
77
82
85
222
107
81
115
139
84
58
131
102
108
87
104
128
136
139
96
163
84
107
114
118
84
71
111
130
131
121
108
88
101
78
48
117
91
59
51
128
101
119
157
105
72
86
65
117
104
139
96
136
63
70
98
151
110
70
142
74
139
94
109
124
75
126
51
61
114
174
64
77
51
130
149
127
100
59
123
111
130
114
71
149
78
57
78
113
112
126
55
45
126
97
109
137
48
117
97
42
75
97
154
70
194
97
77
113
85
76
128
71
137
76
112
123
74
81
166
108
127
193
94
45
154
119
71
134
72
83
73
50
97
162
107
178
63
115
133
77
137
89
91
77
210
78
93
71
95
61
103
97
85
64
96
89
59
101
98
188
109
154
179
86
87
63
74
106
40
112
41
142
99
170
94
73
74
125
105
138
154
153
101
94
130
57
121
58
187
98
138
107
64
137
85
87
129
141
113
157
103
149
99
85
105
77
134
138
103
56
128
77
108
156
86
171
148
118
132
63
100
130
51
126
112
139
91
56
49
121
116
59
146
69
99
155
191
34
182
89
96
85
116
126
78
64
88
125
93
137
117
127
164
52
141
111
60
107
78
84
123
97
109
119
127
144
145
94
132
114
127
122
76
103
115
135
99
80
94
118
179
113
136
133
83
147
76
84
159
92
99
141
90
122
82
141
139
113
140
106
103
136
105
217
99
114
140
125
123
126
110
129
82
101
158
174
87
99
132
85
98
118
125
189
82
78
179
143
123
203
122
186
38
126
113
69
131
78
120
48
103
78
166
196
100
123
112
94
143
87
89
56
106
73
135
93
105
101
70
128
148
135
134
127
126
86
132
59
58
113
128
139
61
57
87
141
114
118
105
108
110
100
116
104
117
72
68
89
66
165
76
120
104
88
72
114
77
151
109
94
111
62
97
112
66
95
158
46
133
105
141
45
133
40
46
124
136
120
127
101
117
85
108
172
134
74
85
198
94
166
132
42
111
114
138
92
119
68
86
95
97
77
73
116
92
94
79
71
76
61
99
122
112
74
104
88
114
85
103
65
238
75
93
127
159
88
128
104
138
73
93
104
117
61
69
105
130
74
124
171
63
180
107
101
140
145
92
63
105
107
154
54
88
65
86
81
106
129
79
95
126
126
127
102
114
160
81
97
144
142
73
93
89
79
63
93
89
37
140
99
67
77
79
96
84
71
93
120
117
190
121
70
85
114
98
102
169
90
79
178
60
102
156
104
114
99
68
141
97
102
111
82
96
48
155
98
78
79
110
41
108
86
109
176
105
139
60
139
84
112
137
109
101
38
128
182
118
204
114
162
179
98
94
127
167
77
142
120
129
75
31
181
88
96
95
84
124
127
132
134
112
104
62
89
156
84
135
86
132
81
91
93
57
108
90
87
105
89
103
120
139
96
126
137
188
124
94
72
69
127
105
89
112
89
99
100
123
86
69
138
111
97
134
102
115
100
71
69
160
163
91
88
91
116
115
60
84
141
85
83
149
115
34
121
97
57
102
45
167
160
171
100
49
91
147
95
99
132
142
116
61
122
140
108
146
78
172
59
130
86
70
199
113
62
98
66
54
192
94
80
83
109
83
49
58
113
96
77
105
126
123
79
122
125
146
55
143
124
116
111
140
128
104
57
112
103
166
62
108
85
151
85
185
117
82
71
102
55
87
124
87
144
127
163
74
144
134
72
183
114
113
107
53
144
99
129
249
125
89
89
130
80
88
49
87
90
141
107
71
135
73
170
120
83
137
197
90
158
67
53
83
135
147
132
58
65
66
136
116
139
109
54
67
88
94
74
128
77
160
91
76
80
71
95
188
96
98
153
89
134
85
100
47
62
35
119
87
140
94
74
137
104
161
146
74
132
107
44
111
119
92
185
73
126
196
152
91
112
133
176
144
89
68
89
55
71
91
90
79
61
70
77
173
104
117
79
79
121
114
158
101
72
69
123
95
69
113
46
88
113
120
66
92
93
84
119
145
76
124
100
84
77
40
43
99
89
75
124
88
89
144
135
112
137
97
99
92
110
138
95
102
76
127
47
116
112
78
111
62
114
138
117
47
124
112
97
70
109
106
115
95
44
129
110
236
190
57
135
163
177
121
121
91
62
121
60
41
104
126
71
126
124
92
112
87
105
124
118
63
68
81
169
93
87
107
93
80
77
167
133
57
201
79
75
94
68
165
79
72
142
75
114
139
48
122
93
178
106
98
118
45
69
107
147
167
41
147
128
127
81
98
134
120
136
100
112
156
78
171
160
97
77
103
96
115
69
80
129
103
98
93
90
176
83
167
97
105
215
161
84
108
120
84
113
53
44
125
97
104
129
118
50
72
115
146
143
106
56
61
114
159
92
49
77
42
121
70
155
67
96
141
87
98
141
142
152
102
121
77
139
69
86
83
26
145
92
61
111
124
113
128
133
97
156
63
85
66
99
98
43
147
84
152
131
100
97
158
202
127
117
37
105
64
113
66
142
103
60
79
138
91
67
100
138
108
75
72
38
164
68
105
96
124
93
94
92
113
83
89
74
204
105
219
129
59
99
64
102
117
176
113
69
36
172
132
84
70
77
64
107
128
125
50
81
132
42
62
69
108
124
70
66
61
78
168
73
152
217
92
130
72
43
58
98
60
94
182
97
104
88
143
151
59
112
116
96
131
99
92
88
76
121
95
160
95
137
111
73
180
86
126
105
105
168
94
118
205
58
104
106
80
122
80
73
185
58
72
65
128
93
56
210
70
72
87
159
61
135
131
156
161
110
66
157
61
130
87
127
166
119
144
70
106
128
100
69
64
131
93
72
169
108
54
113
76
103
109
77
102
78
122
89
68
115
166
91
118
41
150
47
174
85
109
81
65
99
62
83
117
120
120
148
76
171
109
36
88
72
123
127
55
88
67
137
46
62
67
90
164
90
75
130
90
44
93
85
90
67
171
146
45
65
46
95
82
118
136
81
54
72
77
222
76
81
128
140
124
115
126
108
87
110
50
160
146
129
107
92
105
120
112
67
110
110
114
90
69
58
54
134
81
104
193
52
102
109
51
78
73
102
85
86
145
104
106
175
70
84
77
94
66
103
115
98
152
99
72
82
89
73
55
62
62
123
124
72
113
60
83
93
41
103
73
135
102
124
65
81
107
116
127
128
107
166
122
185
133
85
107
117
70
96
69
132
75
51
100
68
70
85
94
93
196
118
161
90
136
157
136
124
82
61
142
88
59
77
107
100
88
97
164
66
119
47
70
64
105
57
104
79
189
129
83
69
68
78
107
92
93
64
146
53
33
127
70
63
107
86
58
154
78
114
107
120
114
75
132
58
115
129
94
67
176
123
140
94
79
125
105
101
78
84
73
104
90
87
116
74
100
70
145
91
86
121
112
160
171
97
103
78
112
150
107
136
89
134
62
133
134
89
116
61
80
99
96
178
208
79
107
160
60
182
74
99
132
105
90
95
122
136
162
68
102
150
88
129
134
118
87
114
87
113
112
126
145
107
110
135
50
56
100
58
78
122
136
62
112
107
80
124
118
87
47
111
74
134
119
85
132
134
107
70
86
63
127
133
94
136
87
95
136
94
116
122
71
82
87
142
60
79
100
92
130
67
89
125
73
114
151
109
107
83
103
153
119
74
98
78
82
105
92
144
75
124
87
62
135
69
118
65
55
209
80
108
129
111
176
57
76
47
199
121
72
63
69
105
217
148
86
99
74
150
128
73
115
42
55
82
110
180
153
136
58
96
99
60
108
152
110
66
159
82
99
63
96
130
79
63
116
178
70
49
95
150
145
141
67
155
108
84
141
115
147
115
67
58
85
100
40
176
103
123
114
91
107
151
115
143
143
132
99
136
114
142
114
79
139
167
83
68
80
176
147
123
109
129
129
150
95
75
96
165
37
140
101
150
136
131
153
123
84
77
84
171
115
164
102
67
227
129
142
142
98
123
129
133
109
138
129
88
200
103
72
55
63
119
216
58
117
116
53
91
109
97
72
53
131
81
78
146
82
148
94
251
60
79
60
127
232
81
103
60
74
94
187
85
119
84
119
80
106
61
86
79
97
96
88
83
62
99
143
81
75
78
170
107
166
73
89
105
148
103
135
159
67
69
145
87
107
83
133
59
73
154
61
98
127
57
99
44
108
129
103
57
141
118
131
45
166
76
50
86
124
141
75
123
122
102
82
96
109
165
77
113
93
113
78
170
126
97
161
111
84
81
118
61
134
71
91
95
207
53
133
84
173
82
97
76
99
74
118
144
139
58
78
104
59
128
65
82
98
87
99
141
119
73
174
93
72
52
113
104
149
71
128
109
170
134
94
75
98
93
149
112
112
95
124
117
128
183
91
152
107
110
52
85
83
96
94
159
185
87
125
91
118
104
142
104
122
132
155
97
100
114
118
52
79
101
105
115
89
105
66
87
71
118
91
149
63
72
188
148
153
60
167
96
82
70
49
126
111
88
82
72
56
129
57
44
87
76
99
138
85
87
59
35
69
99
101
104
78
104
94
51
205
143
213
160
79
150
89
110
101
79
87
132
64
106
125
88
88
72
101
122
89
104
82
72
123
62
87
124
113
76
90
75
108
117
126
67
67
111
84
118
111
141
78
70
95
151
83
79
116
64
84
138
110
87
69
63
125
187
108
180
98
44
51
81
167
105
76
131
99
83
80
82
68
73
131
142
54
128
161
68
137
59
143
99
128
134
83
106
90
105
120
106
151
85
61
100
99
133
128
92
104
79
71
95
147
72
148
128
82
65
138
87
57
125
164
92
186
103
64
171
109
108
103
72
132
133
167
132
99
136
164
139
114
120
161
104
111
147
160
69
66
85
111
92
91
82
101
152
91
132
51
82
100
82
146
122
96
116
168
126
77
72
172
66
129
92
105
171
75
67
151
102
89
114
176
68
92
196
84
104
54
84
141
71
72
56
128
109
133
72
121
120
113
96
122
86
132
126
149
110
79
100
61
51
57
73
172
158
93
48
73
89
157
129
134
55
35
60
53
120
186
129
161
194
46
147
151
187
77
108
97
86
181
141
105
101
116
100
107
126
79
121
91
87
122
95
85
126
59
73
90
45
73
105
35
63
68
56
56
103
57
144
61
59
129
83
135
145
80
144
79
122
75
53
78
107
104
155
137
135
46
91
73
119
90
98
149
73
87
66
178
116
115
147
53
110
68
168
76
105
157
77
162
183
85
79
81
55
95
108
126
108
91
80
116
98
103
81
52
95
160
105
89
188
81
114
65
59
66
74
120
156
154
83
136
116
98
60
118
107
71
91
147
77
107
67
125
112
139
137
61
89
61
90
86
149
100
108
141
113
102
74
78
102
80
144
66
126
182
143
71
75
84
112
105
77
162
60
56
120
73
81
116
179
99
95
73
70
236
125
137
146
168
116
125
156
225
104
125
104
81
106
91
113
44
79
119
77
55
117
186
79
58
147
99
134
127
98
107
106
62
123
87
145
143
136
145
113
123
77
147
98
138
186
61
151
174
151
67
139
101
127
123
137
96
54
104
116
35
87
82
124
166
99
147
62
88
79
51
61
95
98
77
141
132
120
128
187
33
102
120
115
121
82
117
118
190
83
105
156
91
83
87
76
96
53
104
101
125
88
77
80
77
121
169
85
151
217
81
124
88
132
71
33
86
56
83
127
51
78
69
129
92
164
63
109
70
46
159
59
90
88
115
76
120
107
55
129
132
130
127
75
98
58
50
129
180
89
129
100
135
140
92
92
92
152
189
48
79
84
59
65
149
108
62
117
96
116
143
124
53
80
90
79
82
85
135
197
102
51
75
155
98
126
115
114
154
69
77
175
53
93
122
119
76
66
165
137
104
118
98
89
48
153
130
150
85
116
90
133
88
106
142
117
68
127
120
48
147
153
79
81
121
66
59
130
114
123
101
76
135
46
88
122
78
120
102
43
61
63
113
84
179
65
106
96
152
80
100
123
91
76
142
71
62
99
111
63
86
153
106
138
113
126
158
122
85
77
121
131
146
84
82
149
150
149
130
82
58
54
88
85
69
121
67
108
114
124
117
69
107
150
100
120
70
120
205
147
106
127
135
63
115
113
70
75
152
132
71
118
51
111
45
95
125
136
147
62
96
80
202
161
138
96
134
129
94
171
99
84
144
120
180
104
107
90
77
82
77
40
91
113
82
164
61
110
76
77
66
185
179
49
181
62
113
84
89
120
219
92
159
69
127
92
136
91
74
124
98
155
169
64
125
102
38
59
98
178
130
143
130
103
161
119
217
54
70
102
112
211
191
35
84
129
95
86
105
130
89
102
100
52
86
169
125
118
86
115
199
129
67
65
99
60
94
63
131
99
79
132
94
120
98
103
109
101
141
115
126
41
79
56
102
117
145
114
73
123
98
63
89
131
152
82
107
55
107
43
155
100
95
30
100
91
83
113
80
120
109
117
115
152
109
168
91
85
57
184
87
124
62
100
98
144
165
92
90
59
103
72
133
43
155
74
101
114
134
80
80
96
50
64
116
45
107
84
89
49
90
167
109
132
209
146
72
108
171
68
87
156
110
94
77
69
195
86
132
155
172
137
111
146
86
86
117
108
178
84
48
133
150
95
115
97
82
77
111
125
111
144
85
159
133
96
122
84
87
70
142
118
65
118
49
129
47
111
142
114
83
94
33
142
118
119
104
81
120
93
136
72
197
118
106
102
98
116
105
97
108
101
147
78
100
115
81
146
90
120
78
111
60
101
50
161
94
80
113
109
66
89
158
75
123
81
123
62
59
73
62
77
107
97
44
153
71
77
92
139
130
85
91
106
96
75
80
73
79
89
86
50
80
138
126
230
94
64
54
132
102
104
101
96
69
66
116
103
117
133
56
145
123
68
87
116
112
42
108
120
95
102
51
81
87
89
77
88
119
139
114
121
158
49
113
83
59
109
97
104
164
62
68
57
49
93
131
55
123
126
82
81
83
197
95
122
57
92
153
159
39
61
53
37
74
159
117
98
89
138
156
90
140
133
54
101
100
77
236
103
156
84
133
83
125
96
91
104
74
121
64
99
132
108
101
139
108
86
97
148
117
157
57
188
65
114
132
85
116
72
127
64
83
107
46
41
124
104
53
89
101
82
138
119
166
149
109
104
60
42
107
179
68
124
120
143
99
98
99
67
61
65
124
64
77
119
71
80
117
146
175
80
84
121
135
83
83
57
78
57
137
93
169
121
100
95
81
75
62
81
93
90
138
140
62
98
70
204
49
76
62
67
56
129
102
77
95
142
204
64
134
160
131
108
168
127
38
79
78
139
97
53
72
95
82
64
129
84
132
40
108
97
61
74
130
106
135
83
61
131
74
176
107
133
81
80
82
74
78
116
83
84
120
122
161
119
112
136
98
79
166
107
119
163
117
98
107
152
124
108
226
239
142
85
72
63
61
102
119
112
159
55
88
83
118
118
132
183
167
72
90
37
63
133
48
34
163
46
165
101
76
90
57
124
68
95
76
144
64
151
118
123
151
128
88
135
193
114
61
109
77
77
142
158
95
46
75
47
117
88
104
85
109
130
100
50
68
149
166
64
104
82
125
196
107
164
76
119
150
158
128
135
210
73
53
97
88
81
72
90
101
134
71
130
189
51
52
56
141
141
106
199
71
70
70
137
76
57
92
102
97
90
44
70
100
163
99
164
102
71
85
91
107
90
149
105
73
103
39
55
123
138
61
50
89
134
77
93
121
45
80
119
94
152
121
63
98
87
96
76
88
75
130
103
99
118
118
136
135
87
126
137
97
77
173
108
73
144
148
44
100
58
158
98
116
101
232
107
92
129
127
44
58
82
114
118
128
95
200
119
52
77
103
105
74
104
95
82
113
129
109
90
56
116
129
76
75
93
124
39
53
186
84
44
121
214
127
85
99
154
75
80
109
82
161
83
234
52
37
61
126
75
189
90
64
106
81
130
110
162
137
61
75
129
89
120
161
86
39
138
139
138
157
86
141
108
82
103
134
54
151
78
73
26
132
86
121
100
236
73
111
138
189
68
96
79
100
115
48
188
183
122
101
77
142
123
104
92
111
71
83
102
107
36
111
95
144
155
80
93
150
89
86
122
41
102
90
89
143
181
48
105
132
70
127
51
157
107
71
124
41
99
144
31
99
109
94
74
97
142
54
127
73
95
73
73
53
130
123
165
251
86
79
137
118
129
52
96
88
180
84
111
49
102
148
148
88
77
86
135
148
89
155
79
66
52
131
54
81
120
82
118
115
184
122
132
54
93
48
121
118
116
177
67
102
48
89
156
145
110
120
54
126
75
104
81
193
163
140
155
107
156
129
83
101
199
90
83
67
64
189
166
128
73
77
100
81
146
76
45
166
166
102
99
203
57
104
88
144
133
68
85
181
76
83
80
114
89
77
109
151
121
35
130
122
157
121
56
60
112
45
141
100
232
122
49
67
150
145
99
107
127
142
140
144
133
104
87
83
166
94
85
110
109
116
151
71
75
73
125
73
249
110
79
106
155
63
86
89
223
82
137
107
141
125
187
75
157
50
84
163
149
98
62
109
142
152
89
169
91
100
55
162
127
156
79
88
130
149
97
133
116
114
31
51
109
152
93
97
59
75
98
147
49
88
120
109
98
123
104
124
158
112
249
83
58
99
52
96
76
87
101
106
78
45
107
89
171
170
132
98
95
72
102
82
72
97
214
100
96
79
129
124
135
175
59
141
82
110
42
121
141
145
89
78
91
93
97
107
140
113
37
130
123
87
52
108
99
67
116
127
140
60
133
49
100
122
113
81
98
84
102
124
137
130
120
125
217
101
129
110
85
112
119
130
121
77
139
100
99
79
115
130
125
113
64
85
152
149
68
165
141
84
111
46
137
116
93
114
93
61
101
111
65
41
116
93
30
71
91
121
141
145
134
52
161
120
99
107
91
57
119
58
81
151
106
113
120
123
98
110
132
179
154
92
48
141
105
52
102
98
148
102
107
57
76
88
54
54
79
95
100
120
178
82
134
139
86
132
90
62
103
105
113
141
100
71
140
72
117
100
110
90
107
128
133
143
146
155
127
96
165
126
85
141
119
117
95
115
134
144
69
88
89
91
145
127
151
105
123
125
71
123
70
92
164
85
120
54
163
97
75
72
81
109
69
82
115
57
92
60
79
63
212
188
153
72
36
87
82
132
99
74
170
114
126
81
77
70
107
92
92
109
154
124
80
115
116
54
121
107
78
56
73
138
105
93
125
83
92
63
81
67
53
65
71
111
88
76
74
53
204
119
48
94
127
87
170
60
72
159
64
89
148
142
82
169
105
144
68
86
92
127
121
67
69
85
127
64
133
104
106
129
169
116
106
87
55
169
119
140
138
211
93
112
75
79
135
130
87
128
107
110
91
104
150
64
64
133
116
69
73
84
103
134
112
40
126
30
107
144
161
116
113
94
126
37
63
81
98
201
66
41
64
210
85
60
129
163
111
108
153
120
79
64
128
113
147
65
58
129
75
125
60
68
78
65
83
76
88
77
135
103
196
100
127
42
117
152
106
95
119
93
122
48
81
114
198
71
116
58
97
89
60
96
73
38
88
131
170
114
119
91
93
155
102
178
126
96
76
93
96
96
91
84
122
60
105
113
104
79
139
90
90
101
73
98
100
42
102
131
107
91
162
99
89
119
102
126
72
99
123
125
154
109
142
77
124
102
146
75
92
87
159
97
90
109
235
85
190
140
133
53
109
104
92
207
124
152
122
140
63
108
55
118
53
111
76
71
156
77
146
63
102
68
124
70
215
201
84
58
141
92
45
129
116
64
133
159
67
140
102
152
168
94
142
82
114
114
96
107
142
141
172
120
109
115
45
117
159
122
45
79
76
73
99
173
129
103
90
64
184
167
67
124
98
73
122
88
125
115
85
149
88
121
110
90
140
110
69
85
100
200
79
99
104
105
105
90
103
139
87
59
64
82
147
159
160
156
122
84
115
102
123
99
87
160
94
100
90
86
93
131
76
76
78
170
100
90
77
110
115
65
151
48
65
109
162
85
125
115
79
108
72
71
79
171
119
128
55
107
161
111
135
127
142
98
181
105
125
155
43
95
70
76
170
105
146
66
123
140
60
144
59
74
99
44
55
117
191
83
133
96
109
37
66
46
93
103
58
84
42
66
106
63
63
68
93
122
97
166
176
52
159
50
115
72
103
95
51
88
48
92
121
88
114
96
181
111
74
95
110
85
73
81
100
116
78
34
106
146
116
96
143
133
60
98
149
79
144
157
95
95
130
90
163
93
53
111
110
55
144
94
146
34
68
135
118
82
101
114
244
121
66
75
51
98
164
126
39
72
103
161
79
124
102
65
160
84
130
65
90
113
56
62
85
94
141
54
89
65
107
107
151
127
76
102
124
98
150
105
170
101
111
136
107
84
138
149
114
95
130
126
94
135
141
79
100
63
62
95
134
72
57
131
78
75
173
130
76
118
103
151
168
77
56
87
98
118
130
26
101
148
158
100
108
83
94
157
106
49
95
93
123
65
100
113
81
107
140
147
98
86
129
134
165
129
176
131
153
170
117
92
81
104
71
88
74
77
97
142
106
102
75
109
106
64
52
112
74
92
70
114
108
121
156
164
81
67
174
89
56
116
121
106
95
70
71
102
63
118
81
97
146
130
129
129
95
89
100
90
116
85
99
119
97
68
122
153
109
122
114
61
167
146
122
40
72
190
67
98
110
61
229
127
107
95
140
126
128
115
46
242
133
161
140
113
248
84
120
75
99
78
95
88
122
101
87
103
78
42
89
125
114
118
99
156
66
118
84
138
65
139
152
114
125
87
114
106
48
96
94
65
45
123
60
123
169
58
69
118
62
152
83
31
83
115
105
122
78
162
57
85
80
74
241
77
107
100
171
137
113
132
131
161
151
138
138
118
87
87
45
212
94
79
171
62
105
201
121
83
49
67
66
107
101
69
92
129
75
58
108
85
140
64
71
68
76
132
63
90
127
122
171
100
144
125
148
122
114
130
112
136
166
99
39
165
77
50
131
51
127
90
124
75
62
120
87
107
82
62
136
135
137
165
143
45
50
154
135
124
196
49
94
213
110
81
111
113
128
192
135
122
187
104
65
106
75
107
75
60
87
67
191
86
123
67
84
77
88
100
111
129
63
37
126
76
47
69
209
103
90
130
63
128
119
163
99
112
187
98
34
98
71
116
95
81
69
99
195
106
167
169
139
166
87
145
79
67
57
159
74
127
91
119
165
134
109
104
40
84
106
106
87
82
140
75
61
85
85
212
88
57
67
70
45
60
175
81
128
63
54
69
204
168
76
65
121
117
133
100
116
109
126
133
123
76
81
90
59
45
171
110
120
143
132
81
55
126
104
81
80
132
155
96
214
56
44
62
171
87
121
101
43
62
146
98
125
64
183
110
106
102
121
147
124
80
74
152
133
109
77
43
81
112
117
174
100
75
176
90
100
86
119
163
134
113
141
83
119
73
90
151
87
174
89
140
109
128
160
124
49
123
56
84
76
63
93
86
74
54
99
85
106
92
57
106
99
81
135
111
140
99
118
56
49
138
67
182
81
60
72
131
51
122
118
87
111
79
128
66
45
63
121
150
62
104
135
51
96
154
150
121
93
84
47
130
106
182
112
117
81
155
73
124
76
88
167
82
98
116
62
124
73
102
179
50
81
83
72
145
107
130
78
136
39
98
142
114
75
115
103
87
127
156
136
138
94
130
129
124
63
127
72
121
133
79
87
136
107
79
154
111
112
50
136
142
75
98
170
121
40
183
68
148
41
55
162
57
77
155
151
69
40
320
104
92
62
136
33
175
93
89
83
62
125
94
80
135
215
101
133
65
124
82
153
52
65
186
81
127
74
118
178
52
240
96
146
181
71
44
115
79
83
74
94
142
131
116
110
162
56
98
81
61
95
112
53
154
90
63
123
105
117
163
101
105
56
75
91
81
97
133
137
131
126
80
63
44
33
127
126
99
53
93
144
140
114
104
119
56
165
134
71
95
100
134
96
63
53
61
89
106
78
120
103
96
95
89
125
135
80
122
48
64
117
79
58
39
169
40
104
66
140
81
72
95
129
132
162
90
146
110
91
114
141
91
89
99
173
112
100
176
112
59
72
53
74
104
78
69
77
108
58
126
92
96
79
55
44
131
104
55
42
125
108
109
36
144
108
98
72
110
170
104
79
97
126
71
101
92
109
191
144
54
89
134
97
137
131
142
95
85
143
122
89
115
133
103
119
143
137
115
99
108
105
87
103
199
86
53
133
0
83
122
141
161
76
57
138
139
77
92
153
60
86
109
109
173
82
101
86
57
93
133
151
113
102
109
105
138
130
144
160
68
109
128
95
130
102
155
303
111
76
102
92
173
115
89
132
69
64
117
64
111
129
111
78
109
148
124
100
121
126
167
121
86
153
153
215
109
99
63
124
95
157
109
71
110
169
177
86
70
146
97
147
116
145
120
96
143
66
79
68
106
114
99
86
48
111
114
79
135
118
152
35
117
137
127
99
65
95
70
109
94
59
238
81
157
69
199
130
85
85
72
131
110
200
133
122
91
62
114
76
121
101
118
121
100
57
104
152
145
78
125
76
80
112
185
106
92
86
26
173
103
158
104
65
78
60
64
103
84
29
86
136
76
95
108
97
80
51
128
97
127
53
86
94
145
162
139
77
65
74
105
32
93
89
101
67
115
72
74
62
69
51
57
97
103
153
116
118
68
111
126
69
179
105
128
153
79
108
126
63
103
141
114
104
123
74
101
182
93
78
75
118
76
62
87
49
78
165
120
96
180
139
149
132
61
94
184
80
83
138
72
82
104
91
116
157
85
140
100
141
43
163
137
107
88
44
86
76
162
86
56
99
76
54
81
96
111
67
66
98
48
97
78
76
81
116
142
79
107
123
121
243
119
94
114
115
113
86
70
73
136
124
74
134
114
84
86
102
120
91
161
81
54
79
95
72
178
136
88
134
81
89
175
180
125
122
85
58
119
91
68
147
147
73
132
125
84
103
158
80
106
112
158
124
74
141
102
172
84
100
64
127
116
79
77
88
144
129
105
52
149
156
55
81
112
102
82
94
139
120
212
104
81
150
89
141
106
210
49
138
115
145
58
116
101
95
68
121
92
72
110
99
109
142
112
118
131
38
85
126
125
110
138
120
96
162
79
110
87
154
190
36
81
71
130
65
88
82
99
140
116
120
152
65
69
116
36
80
84
131
169
91
67
109
101
64
75
67
37
93
76
112
112
72
107
91
114
81
113
59
130
61
84
106
133
93
228
151
148
60
98
26
94
87
94
121
141
77
88
89
89
109
76
46
71
134
114
98
133
108
103
110
105
56
112
187
151
118
54
177
142
111
67
121
41
101
109
126
139
96
178
48
168
80
154
127
102
197
95
126
166
112
129
88
47
81
102
94
110
89
116
103
46
95
106
94
142
47
36
103
149
107
126
100
84
133
79
143
113
107
89
85
179
130
84
123
84
213
60
100
96
110
89
75
115
46
53
79
58
93
77
70
108
73
97
97
98
109
105
114
119
131
85
93
83
101
128
89
136
135
121
139
106
145
99
109
164
69
51
83
70
145
126
121
80
63
147
177
120
105
91
74
102
80
93
59
123
93
106
99
59
103
87
93
90
119
112
44
104
77
138
206
87
64
111
97
97
143
119
129
52
63
66
161
104
106
117
111
72
94
114
45
115
87
163
79
85
61
106
120
68
101
60
93
86
151
55
59
107
60
159
116
167
62
87
182
41
165
146
76
110
175
151
141
126
87
173
137
89
99
128
102
142
138
93
68
71
114
110
117
94
230
126
103
96
50
91
136
104
109
138
63
117
73
111
108
89
76
145
97
105
121
133
214
76
85
91
79
138
106
151
66
112
88
198
139
77
167
85
106
127
102
132
136
111
48
105
64
102
116
111
82
81
80
95
139
188
133
52
144
123
95
92
139
102
134
121
164
38
109
114
54
58
33
125
69
110
99
97
128
193
123
59
60
160
64
104
169
91
168
156
95
125
91
91
76
62
55
73
125
169
71
61
46
113
97
104
146
135
152
153
66
143
166
124
68
109
50
144
100
76
147
101
95
141
95
157
71
99
97
61
104
203
86
38
108
126
114
74
105
143
152
110
139
62
105
95
105
127
125
71
106
51
127
114
210
145
139
59
121
109
140
52
102
95
101
137
173
62
200
120
108
150
189
122
64
61
126
137
83
95
153
143
115
113
75
79
115
65
101
100
63
119
60
117
90
40
51
158
109
89
177
108
105
149
90
99
75
141
118
232
98
84
101
77
87
83
147
115
108
98
104
109
94
42
163
99
118
163
60
154
124
169
41
126
76
140
197
98
121
107
130
103
127
95
148
109
70
189
90
50
77
53
157
111
99
130
78
98
72
68
49
77
82
54
131
75
135
47
81
79
131
38
118
157
142
128
112
104
114
98
99
123
74
80
103
111
175
97
65
140
93
109
109
141
45
67
84
85
74
91
72
150
92
137
162
139
145
73
177
110
74
177
194
121
109
87
72
79
109
73
66
68
155
56
81
111
48
220
120
161
116
101
83
84
88
78
80
140
75
124
158
83
87
145
98
107
98
49
120
166
90
77
80
120
193
113
185
71
109
139
109
163
123
133
132
114
115
64
188
105
72
100
113
161
55
128
129
46
136
88
73
125
97
106
91
68
93
75
129
70
109
106
151
73
111
110
68
111
98
104
111
158
115
151
80
154
116
91
107
87
180
72
105
106
116
102
105
35
82
102
87
204
95
210
89
155
148
58
95
153
120
121
89
56
196
99
66
123
106
34
60
91
98
127
81
168
138
115
114
97
104
48
143
165
84
98
103
48
117
85
67
63
97
139
63
63
126
145
133
104
59
122
140
125
47
135
138
133
128
67
61
43
138
78
143
170
121
68
104
113
95
167
89
120
97
76
98
114
124
91
129
120
178
84
41
124
155
128
123
41
212
147
121
70
114
65
42
145
124
114
92
82
171
102
127
136
112
70
65
133
75
115
88
123
113
74
136
88
106
130
115
108
79
116
136
106
64
67
87
59
128
81
83
166
95
55
199
73
57
107
77
130
231
117
106
143
145
118
270
118
106
101
67
93
116
91
85
67
81
146
112
54
82
150
142
115
100
129
176
74
122
162
172
100
127
59
76
132
100
68
99
71
64
41
179
119
87
78
61
76
70
60
166
93
75
166
129
95
64
57
73
96
120
73
90
140
86
133
140
122
125
117
96
142
114
100
134
92
125
77
104
77
84
114
158
119
81
106
104
153
70
121
74
120
77
55
139
59
101
100
128
89
75
121
90
75
163
106
109
75
151
158
80
79
65
117
109
114
109
89
107
108
174
59
71
58
125
115
109
113
119
283
92
109
109
115
64
100
101
107
126
62
129
85
112
133
137
54
166
105
141
183
117
85
105
160
71
68
196
84
131
136
168
150
99
89
192
164
144
119
121
49
124
74
218
81
75
134
47
54
158
145
159
57
188
107
124
143
104
143
137
153
97
100
113
141
97
129
96
64
38
137
89
112
152
61
291
88
80
81
118
100
150
111
94
109
104
120
95
151
99
125
154
64
66
67
183
69
127
80
137
82
123
118
180
89
234
138
118
94
141
119
92
92
104
138
87
121
104
134
185
152
131
119
99
107
169
77
82
96
130
105
95
66
96
149
102
134
75
64
72
142
108
67
155
74
42
56
76
207
79
51
128
194
75
128
95
106
96
55
84
116
75
136
125
79
130
101
58
116
131
156
137
106
93
150
115
150
79
177
133
176
164
150
88
130
128
143
120
116
54
95
88
78
122
118
84
94
130
75
100
70
138
134
52
113
79
69
82
159
59
61
130
110
51
143
102
92
128
124
104
147
97
94
79
198
163
63
110
129
124
71
103
123
159
58
111
139
102
50
84
43
101
169
47
137
66
53
127
96
147
106
114
86
89
82
78
145
64
163
70
67
81
99
127
68
76
181
163
106
119
55
179
61
118
109
134
109
161
111
109
67
107
151
164
113
142
109
122
69
136
131
132
61
119
84
41
119
94
55
72
172
62
42
149
151
73
147
87
218
117
100
109
118
112
113
148
166
149
166
90
73
83
105
133
137
103
72
59
97
114
85
81
108
83
81
60
107
66
144
117
123
129
71
89
109
132
121
114
102
185
135
100
94
121
74
112
84
142
80
69
136
125
156
64
120
157
70
109
153
85
103
192
142
213
161
195
97
89
145
131
196
63
124
64
74
63
116
151
153
83
105
130
81
30
120
61
163
96
162
125
45
101
77
85
177
60
108
91
106
89
80
65
99
100
141
91
108
119
78
131
83
87
151
93
96
85
139
65
175
116
141
124
126
124
153
52
163
55
139
56
146
77
54
72
81
68
92
110
106
111
146
67
88
81
158
69
161
91
71
52
86
58
61
86
72
58
191
122
89
260
92
44
66
108
86
119
94
221
97
71
109
125
101
110
149
92
110
63
65
141
110
73
101
120
89
34
94
88
136
91
113
128
112
98
107
83
169
82
127
72
90
86
194
170
96
90
130
121
87
107
87
81
93
72
159
41
170
99
120
97
112
84
44
45
157
57
71
121
88
57
122
114
65
104
116
83
64
72
172
113
105
67
110
96
78
118
70
169
200
90
88
142
136
58
166
301
62
41
99
100
112
68
51
106
67
199
129
89
124
170
151
231
133
168
153
114
64
95
68
144
135
197
68
99
48
38
154
88
86
87
150
119
84
130
116
74
36
96
82
96
52
151
50
93
118
83
109
77
59
68
85
97
105
73
167
101
74
112
54
124
48
82
173
63
137
110
96
64
138
100
143
60
129
47
188
130
81
141
64
62
140
48
89
144
86
115
76
147
58
122
78
71
60
69
98
165
133
116
93
110
137
109
88
84
39
132
92
130
133
146
116
151
69
121
94
75
157
88
100
102
50
137
198
133
92
105
198
47
62
61
166
128
62
190
128
118
80
91
62
140
76
130
94
148
67
92
116
55
142
116
134
128
54
116
122
80
94
162
148
111
173
105
177
63
107
136
103
144
66
71
87
126
42
84
92
74
116
112
70
53
154
83
126
145
49
151
117
65
102
123
81
167
78
115
100
124
149
156
98
74
52
43
82
139
128
93
112
160
235
67
56
51
134
104
140
139
142
155
56
162
78
71
107
156
139
126
133
109
142
125
74
86
123
36
60
58
106
138
85
154
169
186
96
85
147
118
113
120
40
60
169
149
73
109
46
103
102
146
123
73
95
48
125
139
113
50
245
88
30
105
123
104
147
110
174
110
160
119
152
121
104
100
277
203
84
62
78
90
71
89
92
89
121
123
118
101
74
161
78
116
76
75
62
94
124
138
125
147
94
86
124
69
70
80
73
99
81
68
64
117
110
142
93
94
151
160
93
100
173
86
97
75
145
119
64
91
50
66
92
109
127
110
78
36
43
111
74
80
137
131
74
133
85
99
75
182
31
110
52
80
79
105
136
57
84
208
117
139
146
157
166
114
93
61
143
80
57
53
150
87
149
60
126
111
102
78
81
94
76
211
99
109
118
78
86
100
74
139
54
53
117
67
40
92
159
109
53
51
70
107
75
144
133
141
99
104
145
85
79
90
93
56
146
135
50
125
173
83
121
118
85
69
129
170
56
81
50
87
99
62
109
176
79
170
151
53
86
128
123
57
60
134
58
122
69
118
158
120
146
88
88
153
77
71
144
138
93
74
100
132
54
74
119
107
50
85
157
38
110
121
150
116
83
98
153
53
81
104
86
128
85
111
55
105
106
84
82
126
134
128
46
116
98
156
113
106
124
125
83
119
69
60
106
83
60
106
111
111
64
81
135
69
87
53
57
80
75
130
131
100
138
136
101
80
109
166
52
75
108
77
92
51
114
96
92
179
75
133
157
100
103
136
88
126
136
104
101
89
54
126
74
84
129
73
108
78
118
119
132
115
76
96
108
183
84
96
77
100
125
98
109
121
83
134
134
69
99
169
134
119
140
74
110
65
37
150
138
84
116
51
98
144
89
44
117
141
55
124
76
104
71
77
112
99
161
60
111
115
111
99
132
107
170
88
105
96
126
63
133
161
58
105
90
102
117
112
55
85
115
75
118
22
177
127
133
152
70
78
75
95
79
111
164
58
82
165
107
101
151
80
130
88
61
82
134
95
198
114
108
75
143
90
57
76
35
86
115
169
116
176
44
71
76
98
82
102
62
149
151
98
49
149
101
222
111
47
144
70
115
49
97
101
92
111
79
57
70
72
75
75
99
84
149
48
89
74
195
81
106
65
99
113
85
32
157
110
119
227
166
209
140
107
69
136
214
190
56
94
136
163
164
97
155
126
122
211
109
115
106
175
115
63
124
100
52
38
147
94
102
82
60
125
111
133
142
111
72
103
94
174
69
130
69
153
87
231
96
68
137
115
124
86
98
84
78
178
76
158
152
62
52
83
205
59
71
149
90
107
119
86
112
99
136
112
77
155
98
159
145
135
112
156
165
121
122
159
110
51
94
80
114
86
117
100
85
129
119
127
190
72
133
106
60
150
118
215
167
86
80
69
117
145
137
118
32
102
87
104
124
158
108
68
93
125
62
117
94
88
74
42
139
99
66
91
106
31
104
112
57
67
47
72
91
68
165
125
90
205
129
105
117
89
147
113
97
123
108
121
100
120
88
91
38
61
125
200
110
44
93
67
104
113
101
93
84
114
144
48
173
106
127
122
59
69
71
90
112
140
129
153
77
145
50
200
130
159
106
128
149
158
115
84
94
49
138
92
84
162
120
117
142
68
81
101
94
60
46
75
87
155
99
79
83
57
104
56
88
82
95
97
82
144
126
91
73
43
108
87
152
79
111
119
151
52
121
63
104
115
118
143
84
67
104
75
85
117
95
115
100
86
114
55
115
147
168
132
95
102
84
54
116
152
131
78
83
129
72
64
39
105
74
104
102
161
92
128
67
138
56
102
56
128
153
62
61
90
60
85
107
142
102
146
98
91
53
138
109
122
46
126
58
67
126
46
100
88
147
80
79
48
139
102
59
136
156
88
86
71
91
85
152
116
178
133
94
84
101
128
77
90
98
144
148
153
76
155
121
120
96
144
113
128
99
98
135
126
89
121
127
51
88
74
63
211
110
197
67
73
169
139
89
104
117
61
113
135
131
48
87
77
91
147
127
79
99
151
116
156
100
58
86
97
95
61
118
73
134
91
95
73
87
147
119
81
110
193
122
94
138
85
192
133
132
69
96
91
178
126
60
122
78
137
62
65
86
108
118
143
155
45
68
166
137
156
182
101
87
91
129
76
42
234
109
90
124
126
73
89
147
111
88
53
74
141
117
123
171
111
163
58
109
148
117
143
68
72
56
87
86
70
130
46
136
67
188
108
84
130
73
45
134
124
120
100
126
58
75
141
126
90
169
96
99
54
121
51
127
166
66
124
124
150
97
129
70
141
131
115
63
36
84
91
154
151
88
94
86
178
100
123
63
123
87
109
96
238
161
151
82
94
146
106
99
146
90
97
131
122
91
149
75
91
74
65
113
146
126
165
100
102
169
135
112
144
116
98
45
44
87
154
93
71
199
48
100
37
62
69
34
88
65
124
170
64
72
70
170
93
69
123
65
164
65
123
92
48
83
110
106
51
113
152
110
108
83
57
66
63
202
81
159
94
103
68
107
49
86
154
82
70
122
66
77
196
75
98
68
124
150
81
170
104
110
77
105
175
141
134
81
141
79
84
79
99
141
82
103
121
77
106
129
62
66
72
78
155
103
97
122
131
79
169
171
119
130
106
124
77
101
81
100
71
205
97
82
141
152
117
92
162
116
67
67
95
141
51
114
150
127
52
78
127
136
135
97
71
54
74
114
139
96
74
44
46
95
91
126
96
75
191
100
86
62
123
88
70
151
119
101
122
71
71
82
134
69
73
140
126
90
64
85
157
98
158
113
94
118
155
114
85
129
96
86
117
159
152
122
97
64
98
116
119
151
116
134
118
136
56
63
170
129
137
101
79
114
119
73
64
113
133
90
70
162
198
62
71
85
103
132
59
87
101
142
97
100
171
76
86
132
147
45
83
144
78
121
124
77
60
131
119
86
200
242
118
43
137
156
71
92
179
93
105
131
67
86
71
199
156
113
120
54
89
144
157
103
156
128
111
93
70
107
155
69
58
111
89
104
130
70
90
52
111
68
67
142
123
154
68
52
55
169
112
111
121
81
56
100
77
57
90
162
98
124
51
133
105
88
148
120
90
94
78
147
53
91
83
118
100
113
101
112
99
133
53
163
60
98
53
82
74
76
120
153
88
117
139
29
125
87
116
113
74
161
110
80
95
161
58
85
124
68
65
127
121
110
72
98
137
142
95
67
154
90
136
271
133
105
55
91
106
47
181
104
165
76
157
150
131
123
120
151
68
56
96
123
189
78
91
97
82
50
91
124
88
68
65
108
84
118
54
111
89
117
125
117
103
88
112
53
131
114
121
138
175
64
107
41
149
136
117
133
76
81
109
95
151
162
155
87
85
136
82
38
130
89
173
80
76
150
67
91
80
66
100
92
100
122
257
116
92
89
94
66
91
44
127
67
105
91
94
91
108
96
116
86
120
125
90
131
127
96
88
170
195
168
64
109
98
104
97
142
99
133
102
95
76
150
107
94
108
147
181
155
96
108
98
76
85
147
50
152
59
72
95
153
157
92
118
109
75
139
99
129
68
58
174
119
84
62
101
104
78
76
147
129
71
165
135
155
98
129
113
106
142
61
126
109
68
88
77
70
102
81
130
110
157
51
101
51
148
36
89
135
90
105
136
129
162
36
69
179
87
101
68
73
186
63
72
75
120
38
155
84
102
117
114
190
47
177
95
39
96
82
89
129
98
90
34
113
60
90
147
61
115
170
79
114
36
115
129
77
146
61
24
155
116
40
53
109
91
88
113
156
94
54
132
123
57
47
103
89
86
93
88
88
132
42
83
132
95
54
67
108
79
105
85
110
143
141
102
120
69
146
60
82
133
69
51
108
96
111
109
156
65
112
119
78
157
155
107
94
145
60
89
93
107
91
79
77
151
141
83
124
79
103
128
98
