116
116
116
116
116
117
117
117
117
117
117
117
117
119
119
119
119
118
118
118
118
118
118
118
118
117
117
117
117
117
117
117
117
116
116
116
116
116
116
117
117
117
117
117
117
117
117
117
117
117
117
117
116
116
116
116
116
116
116
116
115
115
115
115
117
117
117
117
117
116
115
115
114
114
114
115
114
114
114
114
115
115
115
115
114
114
113
113
113
119
119
119
117
115
115
115
115
113
113
113
115
115
115
115
115
115
115
114
114
113
113
113
114
115
116
113
113
112
112
113
113
114
114
114
114
114
114
114
114
114
114
114
114
117
117
117
120
120
121
119
118
118
116
117
117
117
116
115
115
115
114
114
115
116
116
116
116
116
116
116
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
116
116
116
116
116
117
118
119
119
120
121
121
121
120
120
121
121
122
119
119
117
117
120
120
121
121
121
121
121
120
120
117
117
117
117
117
117
117
117
118
119
120
120
120
120
118
117
117
117
116
116
114
113
113
115
116
116
116
118
118
118
118
118
118
118
117
116
115
114
114
115
115
115
115
115
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
112
111
112
112
112
110
110
110
110
110
110
110
112
113
113
113
113
112
111
111
110
110
110
110
111
112
112
112
112
112
112
112
112
112
112
112
112
112
112
110
110
110
111
112
112
112
112
112
112
112
112
110
109
111
111
110
108
108
108
109
109
112
113
114
114
114
114
114
114
114
114
114
114
115
117
117
111
110
110
110
112
112
112
112
112
112
112
112
112
112
112
113
113
113
115
115
116
116
116
115
115
115
114
114
114
114
115
115
114
113
113
113
114
114
115
117
117
116
116
116
116
116
116
124
124
125
125
122
121
120
119
119
119
119
120
120
120
120
118
118
118
117
117
117
117
117
116
116
115
115
115
115
115
114
114
113
113
113
113
113
112
112
111
111
111
112
113
113
115
119
119
120
120
120
119
119
118
117
117
117
117
115
113
113
112
111
111
110
108
108
110
111
109
113
113
112
111
111
110
110
114
113
108
109
109
109
106
104
103
103
103
103
103
103
103
107
107
108
108
108
112
112
106
106
107
108
112
112
114
120
120
119
119
118
117
117
117
117
117
114
114
113
112
111
111
112
112
113
113
114
115
115
110
110
110
111
112
112
112
112
112
112
112
112
110
110
108
107
107
107
111
111
111
110
110
110
110
109
109
109
109
109
109
109
109
108
108
108
108
108
108
108
109
110
109
106
106
106
107
110
111
111
112
113
114
114
115
115
115
115
115
116
115
112
113
113
113
113
113
113
112
112
112
112
112
111
111
111
109
107
107
106
105
105
108
108
107
109
110
110
111
111
113
112
112
112
113
114
115
115
115
116
116
118
118
118
119
120
120
119
118
117
119
120
119
119
118
118
119
119
119
119
119
119
119
119
119
119
119
120
120
120
120
120
120
119
122
122
123
123
124
124
124
121
121
121
121
121
121
121
121
121
121
121
121
121
121
122
122
122
122
122
122
122
123
120
119
119
119
119
119
119
119
119
119
118
118
118
118
118
118
118
118
119
119
119
119
119
119
119
119
119
119
120
120
119
119
119
119
119
119
120
120
119
120
121
122
122
129
129
129
130
130
131
131
127
127
124
124
125
124
124
124
124
124
124
124
124
125
126
125
126
126
126
126
126
126
126
126
126
126
126
126
126
127
127
127
127
124
124
124
124
124
125
125
125
127
127
127
127
127
128
128
128
128
128
128
128
128
128
128
128
128
128
129
129
130
130
130
130
130
130
129
129
128
128
128
128
127
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
129
129
129
129
130
130
130
130
130
131
131
132
132
133
133
134
135
135
135
135
135
134
132
132
132
132
133
133
134
134
134
132
132
131
129
129
129
129
129
129
129
129
130
130
130
130
130
130
131
132
132
132
132
132
132
132
132
131
131
129
129
130
131
131
133
133
133
133
132
132
131
130
130
129
128
126
125
125
125
125
127
127
128
128
129
129
129
129
128
128
128
129
129
129
129
129
129
129
129
129
129
133
134
134
134
135
135
135
135
135
135
135
135
135
135
135
135
135
136
136
139
140
143
144
145
145
147
147
147
148
148
148
148
148
148
148
149
149
150
151
152
156
156
153
154
154
154
154
154
154
154
154
154
154
153
153
153
153
153
153
153
153
153
153
153
154
154
157
158
158
157
157
156
156
155
155
155
155
155
155
165
165
166
166
166
167
167
167
167
168
168
168
168
168
169
169
170
170
172
176
173
169
171
171
171
165
162
156
151
152
152
148
148
147
146
144
143
143
142
139
139
140
140
140
139
139
139
139
138
136
136
135
133
133
132
132
132
135
135
135
135
134
134
132
132
131
131
131
131
129
128
128
128
128
128
128
128
129
129
129
129
129
129
132
132
132
132
130
130
129
129
129
129
129
129
129
130
130
130
130
130
130
131
131
132
133
132
133
133
133
133
133
133
133
132
132
131
131
130
129
129
130
130
130
130
130
131
131
132
132
132
132
132
132
132
133
133
133
133
134
134
136
136
137
137
135
135
139
139
140
140
139
137
136
135
134
132
132
133
133
136
133
133
133
133
133
134
134
134
134
134
134
134
134
135
135
133
133
133
133
133
133
133
133
133
133
132
132
132
132
132
132
131
131
130
130
129
129
129
128
128
128
131
133
133
134
134
134
134
133
133
133
132
132
132
132
133
133
134
134
134
138
139
139
139
137
136
136
136
136
134
134
132
132
131
130
128
128
128
128
128
128
129
129
129
129
129
129
129
131
131
131
130
130
130
130
130
130
130
129
129
128
127
127
127
127
127
127
127
129
129
135
134
130
130
129
129
129
129
129
128
128
128
127
127
127
127
127
127
127
128
128
128
128
130
130
130
130
131
131
131
131
131
130
130
130
130
130
129
129
128
128
128
128
128
128
128
128
128
128
128
128
128
129
129
130
131
131
133
133
133
134
134
134
134
133
133
134
135
135
135
135
133
134
134
134
135
135
135
135
135
135
135
135
135
135
135
134
134
134
134
131
131
131
131
131
134
134
136
136
133
131
134
131
128
132
132
132
132
132
133
133
133
133
133
133
133
133
132
131
131
131
131
131
131
131
131
131
132
132
132
131
131
130
129
129
129
129
129
129
129
129
129
128
128
127
127
127
127
127
127
128
131
131
132
132
131
131
131
131
131
131
131
131
127
127
129
129
128
128
128
128
128
128
128
128
128
127
126
126
126
126
125
125
123
123
123
123
125
126
126
127
127
127
127
127
127
127
127
127
127
125
123
123
123
122
121
121
120
119
119
119
119
119
119
119
119
119
118
118
118
118
118
118
118
120
120
119
119
120
122
122
125
125
125
126
126
125
124
124
124
122
122
121
119
119
119
119
119
119
119
121
121
120
120
116
116
115
115
115
115
117
117
117
116
116
116
115
115
115
115
115
115
115
115
115
115
116
116
116
116
116
116
116
114
116
116
117
117
117
118
118
118
118
118
118
118
118
118
118
118
118
118
117
117
116
116
116
115
115
114
115
117
115
116
116
116
120
120
119
119
119
119
119
119
122
121
119
117
119
120
120
121
122
122
122
123
123
123
124
124
123
123
120
120
116
116
116
116
116
116
116
116
116
116
117
117
120
121
121
122
123
123
124
124
123
123
123
123
123
123
120
121
121
119
118
118
118
118
121
121
121
120
120
120
119
119
116
116
113
113
111
109
109
109
109
109
109
109
109
110
110
110
110
110
110
110
110
110
112
113
113
113
120
120
120
120
120
120
120
120
120
120
120
117
117
118
118
119
119
119
119
120
122
123
123
123
123
123
123
123
123
123
123
123
121
121
120
120
121
121
123
123
123
124
124
123
123
119
119
118
116
116
115
115
119
119
119
121
121
123
125
125
128
128
129
129
129
128
128
127
126
125
125
122
122
121
121
119
119
119
119
118
118
118
118
118
118
118
118
116
116
116
116
116
116
117
117
117
117
116
115
115
115
115
115
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
117
117
117
117
117
118
118
119
118
118
118
117
117
117
117
117
117
116
116
116
115
114
113
113
111
112
112
112
112
113
113
113
114
114
116
117
117
117
117
117
117
117
118
118
118
118
118
118
118
118
118
118
118
118
118
119
119
119
121
121
121
122
123
121
119
119
117
116
114
114
112
111
111
111
112
112
112
113
113
113
113
116
118
118
118
118
117
117
117
117
117
117
117
115
115
113
110
110
109
109
109
109
109
109
109
109
109
109
109
109
107
107
106
106
106
107
108
108
109
109
109
108
108
108
108
108
109
111
111
112
112
113
113
113
112
112
112
111
111
111
110
108
108
108
108
108
108
108
108
107
107
106
107
107
110
111
111
112
112
112
112
112
112
111
111
110
110
110
110
110
110
110
111
111
111
111
111
111
114
114
114
114
114
115
115
115
115
115
113
113
113
113
113
114
114
114
114
114
115
115
116
116
116
116
116
118
119
119
120
123
124
124
125
126
126
127
127
127
127
127
127
125
124
124
124
124
124
124
121
121
118
118
118
118
119
119
119
120
120
120
120
120
120
120
120
120
120
122
122
122
122
121
121
119
119
119
119
118
118
118
118
118
118
118
118
119
119
119
118
118
118
118
118
118
118
118
120
122
122
121
121
120
120
120
120
120
120
121
121
121
122
122
122
122
122
123
123
123
124
125
125
125
125
125
125
125
126
127
127
127
127
127
127
127
127
127
126
126
126
126
126
126
126
126
125
125
125
125
125
123
123
123
123
123
123
123
123
123
123
125
126
126
127
127
128
128
128
128
128
124
124
123
123
123
124
124
124
124
121
121
120
120
119
119
119
119
119
119
119
119
119
119
119
119
119
120
120
120
120
119
119
119
118
118
120
120
120
120
120
119
119
119
119
117
117
117
117
117
117
116
116
116
116
116
116
116
117
120
120
122
122
121
121
120
120
119
119
119
119
118
118
118
117
117
116
115
115
115
115
115
115
115
115
115
115
116
116
116
116
116
117
117
118
118
118
118
118
118
117
117
117
116
116
116
116
115
115
115
115
115
116
116
116
116
117
117
117
118
118
117
117
117
117
117
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
118
118
118
118
118
118
118
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
117
117
117
117
118
118
118
118
118
118
118
119
119
119
119
119
119
119
118
118
118
118
118
118
118
117