116
115
115
115
114
114
114
113
113
112
112
112
112
112
112
112
113
113
113
113
114
114
115
115
116
116
117
117
118
118
117
116
114
114
114
114
114
114
114
114
114
115
116
117
123
128
131
133
135
136
137
138
134
132
132
128
128
130
131
137
137
137
137
137
130
129
127
127
126
125
125
124
124
123
123
126
134
149
157
158
160
154
153
153
153
155
159
159
159
162
161
157
153
136
133
129
117
117
118
118
120
125
137
139
139
138
138
137
123
120
119
117
115
114
115
115
115
118
123
127
129
131
130
125
121
117
116
114
121
123
125
129
132
134
134
134
135
137
140
144
149
148
148
148
148
148
150
152
151
153
157
159
159
159
159
159
159
159
159
158
158
157
155
155
155
153
153
153
153
153
153
153
153
151
148
147
143
142
142
142
142
144
145
146
148
147
145
144
143
140
138
138
145
147
151
157
162
166
170
168
167
164
161
160
160
158
157
157
156
156
154
154
154
155
155
155
156
157
158
156
154
154
153
153
154
155
157
158
158
158
158
158
158
158
158
158
158
158
158
158
157
156
155
155
153
153
154
154
155
155
155
157
157
160
161
162
163
160
157
156
155
152
152
152
152
152
152
152
152
153
155
155
156
156
156
157
157
158
158
158
158
158
159
159
159
159
164
167
171
168
167
166
165
164
163
162
162
161
161
160
160
159
159
157
156
155
154
153
153
153
153
153
153
153
154
154
160
174
175
176
177
178
178
178
178
171
164
161
160
158
158
158
158
158
158
158
158
158
158
158
158
158
158
158
158
161
162
163
164
175
179
179
178
177
175
169
168
167
166
166
165
165
165
165
166
166
166
166
166
166
166
170
174
174
174
175
175
175
175
182
179
176
176
176
178
178
178
181
181
182
183
185
186
186
186
186
186
186
186
186
186
186
187
187
185
185
185
184
183
182
180
179
170
161
155
153
152
150
148
147
146
146
146
145
144
143
143
145
168
171
173
174
174
175
175
175
169
166
166
165
165
165
165
165
165
165
165
166
167
167
167
167
167
167
166
166
166
165
164
163
162
160
160
159
158
157
156
156
155
155
154
154
154
149
146
145
143
142
140
139
141
141
142
142
142
142
143
143
143
143
143
143
143
144
145
146
146
146
146
145
145
144
143
143
143
143
143
144
145
146
147
149
150
152
153
154
155
157
161
161
161
161
161
160
160
160
159
159
159
159
157
157
153
152
152
151
151
150
148
147
146
145
143
142
139
138
138
137
135
131
131
131
131
135
139
139
143
144
147
148
148
149
143
135
134
133
133
134
136
137
138
139
140
140
141
141
143
144
144
147
149
149
151
152
153
153
153
153
154
156
157
157
159
159
159
161
165
170
173
175
178
176
175
174
173
173
173
172
171
170
170
169
169
169
170
170
171
171
172
172
178
178
174
172
172
173
174
171
170
176
177
174
175
175
175
175
175
175
175
175
175
175
172
170
167
165
159
156
156
156
156
156
156
155
155
155
155
155
153
153
152
152
151
151
151
150
150
150
149
149
149
149
150
150
150
150
151
151
152
152
153
153
154
154
154
154
155
155
155
155
156
156
156
156
156
156
156
156
156
155
155
155
155
155
154
154
154
154
154
154
153
153
153
152
151
151
155
157
157
157
158
158
159
159
159
159
159
159
159
159
160
163
165
167
170
171
171
172
172
175
180
180
180
180
178
175
170
169
167
164
163
158
157
156
153
152
151
150
148
148
150
151
152
153
154
155
155
155
155
155
154
154
154
154
152
142
138
136
135
132
129
129
129
129
129
129
128
127
126
118
117
116
116
115
114
113
112
110
109
108
107
107
106
105
104
103
103
103
103
103
104
104
104
104
104
104
104
103
103
102
102
102
102
103
103
103
103
104
105
105
106
107
107
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
109
109
109
109
109
110
110
111
111
112
112
113
118
119
120
122
122
123
125
126
126
126
126
126
126
127
127
127
128
128
128
129
129
129
129
129
130
130
130
130
130
130
129
129
129
128
128
128
128
128
128
128
128
128
128
127
127
126
126
125
125
125
124
124
124
124
124
124
124
124
125
125
125
125
125
125
125
125
125
125
124
122
122
122
121
121
121
121
121
121
120
119
118
117
117
117
117
117
117
117
117
117
117
118
119
119
119
116
115
115
115
115
114
113
113
113
112
112
110
110
110
109
109
110
110
110
111
111
111
112
112
113
113
114
114
114
115
116
116
117
117
117
115
113
112
112
112
111
111
111
110
107
107
106
106
106
106
106
107
107
110
110
111
112
112
112
113
112
111
111
111
111
111
111
111
111
110
111
111
112
114
114
116
118
118
118
118
117
117
117
116
115
114
113
113
112
112
112
112
113
114
114
114
116
118
119
119
123
124
125
125
125
125
126
126
127
128
128
128
129
129
130
130
130
131
131
131
131
131
132
133
133
133
133
133
133
133
133
133
133
133
133
133
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
133
133
133
133
133
133
133
133
133
133
133
133
133
133
134
134
134
134
134
134
135
135
135
135
135
135
136
136
136
136
136
136
136
136
136
134
134
133
133
133
132
130
129
129
128
128
128
129
130
130
134
138
141
142
143
144
144
144
147
148
149
151
152
155
153
149
138
133
124
122
117
111
110
110
109
109
109
109
110
115
116
116
117
118
120
121
124
125
127
129
131
132
137
138
132
127
126
129
131
132
133
134
136
138
141
141
141
141
141
141
140
139
138
137
137
136
135
129
127
125
120
113
111
111
114
116
117
118
120
121
123
124
125
126
127
128
132
133
133
135
137
138
141
145
147
150
152
153
153
157
159
159
159
159
159
158
157
157
156
154
151
149
147
145
145
145
145
144
138
137
137
136
136
136
135
135
135
135
138
139
139
141
142
142
142
143
143
143
144
145
145
146
147
147
147
147
147
147
147
148
148
148
149
150
151
151
151
151
151
150
149
149
147
147
148
148
149
149
149
149
149
149
150
150
150
151
151
151
151
151
151
151
151
151
151
151
150
150
150
149
149
148
148
148
148
148
148
148
148
148
150
151
152
152
153
153
154
155
155
156
157
158
159
160
160
162
162
161
161
161
161
161
160
159
159
158
158
157
157
157
156
156
156
155
155
154
154
154
154
155
155
156
156
156
157
157
158
159
159
160
160
160
161
161
161
161
161
161
161
161
161
161
161
161
162
162
168
171
171
161
161
161
161
161
162
162
162
162
162
162
162
162
162
160
160
160
160
160
160
160
160
160
160
160
160
161
161
161
161
162
162
162
163
163
164
164
165
165
165
165
165
165
161
161
161
160
160
157
153
156
157
158
158
156
156
155
155
153
153
153
155
157
157
160
161
160
159
159
159
156
156
156
155
153
152
153
154
155
155
155
155
155
156
157
158
160
160
159
158
155
153
152
152
152
152
152
155
156
156
159
162
158
157
155
152
146
143
143
143
143
143
143
143
143
144
144
143
142
141
141
141
141
141
141
141
141
141
141
140
140
140
139
138
137
137
137
137
136
136
137
138
139
140
144
147
148
148
149
150
152
153
154
154
152
152
152
152
152
152
151
151
150
148
146
146
145
145
145
145
145
145
148
152
151
150
148
147
145
144
144
144
144
145
146
148
149
150
151
151
154
164
170
171
172
172
172
170
169
167
164
163
156
154
154
140
139
140
140
140
141
141
142
145
146
147
146
146
146
145
144
144
144
145
145
146
147
147
147
148
148
149
149
149
149
149
149
149
149
148
148
148
148
147
146
146
145
144
143
143
144
148
148
149
149
150
150
147
146
146
147
150
154
153
149
146
144
145
145
145
146
147
148
149
149
150
150
151
151
150
149
149
148
148
148
150
150
150
151
152
152
153
154
158
165
167
167
166
166
165
165
164
164
181
183
187
189
193
191
189
187
179
177
175
167
166
166
165
165
165
167
170
170
171
166
156
155
154
153
152
152
152
152
151
149
144
141
139
137
136
136
136
136
126
125
124
124
124
123
122
122
121
121
120
122
122
119
102
100
100
99
99
99
99
99
99
99
99
100
101
102
104
106
107
108
108
111
113
112
112
112
112
113
120
117
116
118
116
113
112
112
110
110
108
108
108
111
113
114
114
115
122
123
123
123
123
123
122
122
114
110
94
94
94
94
94
91
90
88
86
80
78
78
78
78
78
78
78
77
76
74
74
74
74
74
74
74
74
74
74
76
78
79
78
78
86
91
93
96
96
97
97
98
99
99
100
104
106
106
107
107
108
109
111
113
115
116
115
115
115
115
114
114
114
114
113
113
112
112
112
112
112
112
113
113
113
113
114
114
114
115
115
116
117
117
117
117
118
118
118
119
119
119
119
119
119
119
118
118
117
117
121
122
122
128
127
126
125
124
123
122
122
120
120
119
118
116
116
116
116
116
116
116
116
116
116
116
116
121
125
125
125
125
125
127
127
129
130
131
132
132
133
133
134
135
136
136
136
137
137
139
139
138
137
135
135
134
133
127
126
126
125
125
124
124
123
122
122
121
122
124
125
126
129
133
135
148
134
135
132
126
125
124
123
119
118
116
112
111
110
109
108
107
107
106
106
106
106
106
106
105
105
106
106
106
107
108
110
112
112
113
113
114
115
113
113
112
110
110
110
109
107
106
106
107
107
108
107
106
105
104
104
103
102
101
98
99
100
101
102
102
104
109
111
111
111
111
111
112
103
102
101
101
101
101
101
101
101
102
102
103
103
104
105
105
107
110
111
112
115
117
118
120
122
123
124
134
135
134
134
138
139
138
138
138
140
141
142
143
144
144
144
144
144
144
145
145
146
146
146
146
149
150
151
151
152
154
155
154
153
151
150
156
157
158
160
165
166
167
169
171
178
180
183
188
189
189
190
194
195
199
201
205
205
205
205
205
206
207
207
207
207
206
208
208
211
211
211
211
211
210
208
205
204
202
201
199
198
198
197
196
195
195
194
193
191
190
187
187
187
187
186
185
179
178
177
176
176
173
170
169
169
168
168
166
166
166
166
165
165
165
165
161
161
160
155
153
151
151
151
151
151
152
154
155
155
154
154
154
154
153
153
152
152
152
152
152
152
153
153
154
155
156
156
157
157
157
158
158
157
157
156
155
154
154
154
154
154
155
155
155
156
160
161
161
167
167
167
166
153
145
144
144
143
143
143
143
143
143
143
144
144
144
145
145
145
145
145
145
145
144
142
139
138
135
135
133
130
130
130
130
130
130
130
130
130
128
128
126
126
124
124
124
124
124
124
124
124
125
125
125
125
125
125
125
125
125
125
124
124
124
124
124
124
123
121
121
120
119
119
119
119
128
128
128
129
128
127
126
125
125
122
122
122
122
122
122
122
119
120
121
121
121
121
119
118
117
117
119
121
122
125
127
121
120
120
120
120
119
119
119
117
117
117
117
117
117
117
117
117
117
117
117
116
119
120
120
120
119
116
122
123
122
120
118
118
117
117
116
116
116
116
117
117
118
118
119
119
119
119
119
119
120
120
120
121
121
121
120
120
119
118
117
117
117
116
116
116
116
116
116
116
119
122
132
139
140
134
134
135
136
138
138
135
131
129
128
127
122
121
120
120
119
119
118
118
118
118
119
120
120
120
121
122
122
118
117
117
117
117
117
117
117
117
117
117
118
119
122
122
124
125
126
128
129
130
130
130
130
130
130
130
130
130
131
133
135
136
135
137
138
139
130
138
138
137
135
134
134
133
132
131
126
125
126
128
129
131
133
135
136
139
145
142
141
139
139
129
129
129
130
131
131
131
131
132
130
128
127
126
127
128
131
133
134
136
138
138
137
136
135
135
135
136
137
135
135
136
138
138
139
142
148
151
149
148
146
140
136
129
131
138
140
144
148
153
155
155
156
156
181
181
180
166
164
163
162
164
167
169
169
169
168
167
166
162
159
158
157
156
156
156
156
154
156
158
160
156
156
155
155
150
146
145
143
140
138
138
138
137
137
137
137
137
137
138
139
140
140
141
141
142
143
144
145
145
145
146
148
147
147
147
147
147
146
146
146
146
148
142
142
140
138
136
136
136
136
136
136
136
137
137
137
138
138
139
140
140
140
140
138
149
151
153
154
156
156
155
156
155
154
153
152
153
154
155
157
158
161
162
164
166
166
167
168
169
169
169
165
168
169
172
175
181
180
178
157
157
155
153
148
145
141
137
135
131
132
141
144
150
151
151
152
140
138
137
136
136
139
141
145
138
138
138
138
137
136
135
134
134
133
132
132
131
130
130
129
129
129
131
133
133
133
133
132
132
131
131
132
136
137
138
139
141
137
133
131
128
125
125
126
127
128
128
134
136
137
138
138
138
138
137
135
135
138
136
139
138
136
134
132
132
132
132
132
132
132
131
131
131
131
131
128
122
120
119
118
118
117
117
117
117
117
117
117
118
118
118
119
119
120
120
118
118
117
117
117
117
117
117
118
118
118
118
119
120
120
121
122
130
132
133
135
137
140
140
137
136
135
135
137
137
130
120
118
116
115
115
115
115
115
115
116
117
118
118
120
120
120
121
121
121
120
119
118
118
118
117
117
116
116
116
116
115
115
115
114
114
114
117
118
119
120
122
123
123
123
117
121
120
118
117
116
115
115
115
115
115
115
115
115
115
115
115
115
118
119
120
121
120
116
127
126
123
120
117
116
114
114
114
114
115
116
116
117
117
117
117
117
118
118
119
119
119
120
121
121
121
120
118
117
117
116
116
116
115
115
115
114
114
115
116
117
120
124
132
136
136
134
134
137
139
140
139
136
133
131
129
127
121
119
119
119
118
118
118
118
118
118
118
118
118
118
118
118
118
117
117
116
116
116
117
117
118
118
120
121
122
123
125
131
131
132
132
132
132
132
132
132
132
132
132
132
135
137
139
139
136
139
136
136
138
138
137
136
135
134
133
132
128
128
127
127
127
130
133
136
138
142
141
139
138
137
136
131
131
132
132
133
133
133
133
132
129
128
130
131
132
133
134
136
136
136
136
136
136
137
138
138
138
139
139
140
136
134
136
137
138
141
145
148
147
146
145
139
136
130
130
139
142
146
149
152
155
157
157
157
181
183
183
169
166
164
164
168
169
169
168
167
166
165
165
162
159
159
156
155
153
152
152
153
154
155
156
156
156
155
154
151
148
146
145
141
142
146
146
146
146
146
147
144
143
144
145
149
152
152
152
151
151
150
150
149
149
148
147
147
146
146
147
149
149
149
149
149
149
149
149
149
149
148
148
147
147
147
147
146
146
146
146
146
147
147
147
149
149
149
149
145
146
146
147
147
146
146
146
135
135
135
135
135
135
135
134
134
134
134
134
134
134
135
135
136
141
143
142
142
141
141
141
141
141
141
141
141
141
141
141
141
141
141
143
143
143
141
141
141
145
146
149
149
149
149
148
147
145
144
142
141
140
140
142
144
145
150
153
157
160
160
160
160
161
162
164
164
167
168
168
169
170
170
170
170
170
169
167
166
162
160
160
159
159
159
158
157
156
154
154
153
153
151
150
150
150
150
150
151
152
153
154
154
154
155
156
157
158
159
159
158
158
158
156
156
156
156
155
151
150
149
149
149
151
152
152
153
155
157
156
155
153
154
153
153
153
155
153
152
151
150
149
152
152
152
155
156
157
157
158
158
158
157
158
158
157
156
155
154
154
154
154
156
156
156
156
156
156
156
156
157
158
158
160
160
159
159
158
158
157
155
153
152
150
148
146
145
145
145
145
147
147
149
150
150
151
152
152
152
152
155
157
156
156
156
156
156
157
157
157
158
158
159
159
159
160
160
161
161
160
160
159
159
159
159
159
157
155
156
158
164
165
160
151
150
150
150
150
149
148
148
154
156
147
146
145
144
143
143
143
143
142
142
142
142
143
144
144
145
146
147
148
149
151
151
151
151
152
151
149
147
146
146
145
144
144
144
143
143
143
143
143
143
144
144
144
144
144
143
143
144
145
146
148
151
153
156
162
166
162
162
162
162
162
164
164
164
163
157
157
157
157
156
156
155
155
154
152
151
151
150
150
150
150
150
150
150
150
151
153
154
153
152
154
155
155
154
153
152
152
152
152
152
152
152
153
153
153
153
153
154
155
155
156
156
158
160
160
160
161
162
162
163
163
163
163
163
163
162
162
162
163
164
164
166
167
164
159
158
158
158
158
158
156
154
158
161
173
176
171
169
161
155
155
154
150
149
149
149
149
150
150
150
151
151
152
153
153
154
154
154
153
153
153
158
157
156
155
154
154
156
152
149
149
149
149
149
144
143
140
134
134
134
135
137
138
138
138
138
139
139
139
143
143
143
144
142
142
143
148
149
149
149
151
152
152
152
152
152
152
152
152
152
152
151
151
150
150
149
149
148
148
146
145
143
142
144
147
151
154
155
154
154
154
154
154
153
152
153
153
153
154
141
138
136
135
135
135
135
134
134
134
133
130
131
131
131
130
130
130
130
130
130
131
131
131
131
131
132
132
132
132
132
132
131
125
114
112
111
111
110
110
110
110
110
110
110
110
111
111
112
112
113
113
115
115
115
116
117
118
119
119
120
117
116
115
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
112
112
112
111
111
111
112
112
113
113
114
117
118
122
122
123
126
127
128
129
129
129
129
129
128
129
129
130
136
136
136
137
137
137
137
137
137
137
137
137
137
137
138
138
137
131
131
130
129
127
125
124
123
122
121
120
119
119
119
119
120
120
120
121
121
121
121
121
121
121
121
121
122
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
128
133
133
133
132
130
130
129
129
129
129
129
129
129
129
129
130
130
130
135
135
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136