100000 100000
255 67 116 142 115 280 44 1 126 216 135 113 198 278 147 133 287 251 115 297 203 20 233 100 18 286 175 105 188 177 155 291 202 259 71 112 74 273 17 171 284 253 140 60 101 150 170 32 258 281 3 216 201 30 197 138 52 189 217 287 270 55 68 273 145 122 131 11 43 41 217 2 274 197 213 12 208 276 148 115 58 223 63 251 275 179 179 268 189 3 127 197 80 260 193 141 123 30 155 223 29 184 271 301 148 280 45 236 140 104 160 126 78 179 107 31 65 249 3 19 289 222 119 249 181 161 185 178 169 37 142 292 4 82 208 258 50 169 139 152 209 290 248 128 40 53 1 31 297 172 228 234 150 180 301 191 245 186 151 289 186 77 148 55 36 248 55 163 118 36 259 102 294 188 222 236 123 21 5 303 174 229 263 93 219 126 189 90 272 277 85 165 75 24 75 91 302 47 50 86 78 96 254 147 149 88 240 57 170 268 289 209 217 160 180 131 275 105 204 131 284 75 301 176 262 231 44 92 81 262 56 172 248 68 5 28 77 215 278 122 129 132 118 298 16 105 66 143 198 24 180 209 168 32 173 30 64 206 252 292 291 141 221 47 57 161 124 211 101 163 113 234 222 182 27 46 230 289 113 203 229 207 118 295 175 206 102 106 66 296 96 233 131 152 46 217 193 220 38 40 66 247 11 218 62 79 100 77 67 104 68 42 233 37 263 177 160 210 302 263 250 82 282 94 177 154 159 15 56 153 82 203 200 270 131 24 1 167 94 151 215 184 9 47 111 260 51 173 1 19 187 4 283 268 208 255 29 272 227 27 40 37 106 69 75 253 263 138 56 140 221 255 3 193 16 218 288 25 296 175 1 211 235 271 36 186 212 292 244 185 179 224 155 249 178 2 18 299 128 236 142 69 155 167 72 40 177 257 136 35 11 99 224 26 206 118 19 219 73 62 47 156 131 251 245 256 208 294 246 214 99 235 147 249 92 252 123 180 259 144 110 123 114 7 214 16 35 295 280 134 94 212 144 282 131 132 35 178 152 221 290 158 11 63 18 174 127 299 85 249 5 166 13 291 128 205 206 279 247 222 161 46 104 221 32 157 109 91 277 165 1 160 98 61 181 219 48 236 295 152 109 124 185 272 88 68 163 3 283 94 57 229 288 184 80 228 50 240 219 6 126 117 129 180 2 198 116 177 269 202 122 299 239 33 118 272 1 163 105 33 221 170 55 34 155 293 65 35 33 113 6 15 115 53 39 44 207 113 293 201 7 250 148 179 137 123 57 86 74 83 140 220 184 181 27 114 86 113 50 150 196 108 275 181 204 156 11 204 199 266 138 172 181 110 160 109 196 294 120 256 50 59 237 155 21 161 87 299 297 29 117 231 129 181 76 80 249 66 249 14 98 215 276 177 180 51 283 213 154 21 123 92 295 276 224 273 238 219 59 81 128 284 197 302 120 187 284 301 250 160 182 68 44 120 39 131 283 136 266 50 51 139 275 21 58 176 219 299 56 208 13 225 111 131 140 120 159 272 45 264 108 198 149 275 3 125 66 140 17 141 111 51 123 296 111 101 97 2 244 53 44 86 98 32 53 126 177 49 138 180 104 201 76 187 57 43 298 83 192 279 219 167 204 285 166 167 156 14 141 36 133 139 61 260 87 224 78 161 154 265 90 66 69 180 94 198 17 280 117 53 164 268 252 195 164 134 215 272 83 229 220 243 180 265 192 131 131 61 289 2 176 188 15 294 22 275 90 11 181 219 173 196 197 86 61 246 252 193 165 191 202 111 243 293 31 18 138 252 161 85 34 39 64 281 136 245 153 60 247 281 272 261 288 301 217 172 139 24 79 300 257 50 95 270 230 228 223 103 49 206 252 115 180 116 131 183 277 285 180 274 8 83 94 203 145 42 64 51 264 194 49 239 167 137 184 34 133 229 242 156 204 28 217 26 254 131 215 14 202 9 249 229 302 86 80 84 266 143 64 155 94 7 224 98 158 168 298 67 113 47 276 162 177 235 291 17 59 194 108 155 222 284 46 170 281 28 133 19 112 47 196 226 25 105 286 282 166 106 148 86 17 152 261 76 33 189 158 133 302 272 127 5 229 121 301 40 294 168 65 82 179 263 188 271 201 91 15 166 281 48 18 24 119 168 96 101 300 43 24 278 101 218 247 45 113 217 15 106 236 62 193 277 92 34 294 259 124 70 116 41 127 136 90 43 286 164 164 200 24 9 253 187 140 72 25 210 46 6 164 300 201 53 150 20 250 250 129 141 229 45 157 276 10 274 284 271 47 260 236 31 71 287 12 260 184 102 180 149 193 29 185 188 221 144 195 33 201 35 60 245 247 274 300 237 269 11 237 203 263 228 85 292 125 302 259 256 285 42 77 163 291 143 50 114 147 11 299 237 190 293 17 60 68 33 187 199 255 77 103 99 12 155 116 253 150 22 172 77 253 2 209 38 265 72 1 196 40 140 300 154 296 162 81 150 294 301 298 206 90 263 180 292 190 183 266 36 297 18 111 118 33 265 222 160 59 300 205 12 122 45 7 286 100 82 246 265 188 242 297 200 17 137 256 295 264 253 67 294 197 133 4 242 121 97 267 101 106 260 37 205 29 188 111 126 174 113 33 48 145 30 157 74 153 138 291 216 33 277 227 40 52 299 82 90 241 34 154 216 84 8 30 271 7 78 69 247 108 76 34 83 146 222 189 72 173 38 256 188 214 282 270 12 89 174 142 189 291 40 128 113 75 299 91 142 225 247 111 266 238 116 213 227 122 5 121 168 302 248 66 262 156 247 118 168 260 130 167 210 56 139 159 186 159 236 235 133 263 140 171 283 134 34 56 245 126 52 213 279 35 296 203 78 59 104 51 35 259 162 17 98 180 246 98 264 135 221 218 269 240 101 106 140 68 274 250 237 207 124 214 50 8 201 286 20 252 235 235 149 174 24 234 50 15 264 27 58 175 300 82 137 236 63 13 41 267 87 292 70 220 138 268 285 216 74 265 25 120 229 91 215 93 63 12 257 266 269 212 263 125 294 201 59 16 247 243 103 238 39 268 68 217 126 275 266 104 166 200 274 228 67 272 127 34 55 35 55 298 91 141 209 155 70 289 196 170 159 290 272 281 280 13 295 209 74 86 19 60 217 56 111 96 172 169 188 89 166 34 290 4 118 241 222 288 132 32 156 129 122 17 83 100 186 94 279 236 120 283 109 225 145 189 73 237 31 33 57 141 25 120 287 39 53 70 102 295 71 76 155 143 62 76 182 189 159 249 150 38 220 31 79 134 237 294 80 296 212 244 130 153 206 191 287 294 166 112 186 301 238 18 246 173 298 4 175 9 103 137 139 277 126 37 107 149 280 223 89 7 210 220 130 224 272 259 21 165 275 109 40 233 4 16 156 274 7 112 54 219 48 139 44 12 216 56 64 197 226 218 57 293 107 53 15 184 34 164 37 82 189 39 195 227 18 58 65 300 255 20 291 195 270 28 75 41 154 272 262 180 255 228 128 8 170 280 291 85 163 177 269 291 127 255 79 179 195 71 142 216 97 187 289 174 5 158 238 252 58 107 205 37 213 233 32 168 81 304 25 265 3 257 217 97 30 122 164 282 295 279 231 210 197 91 41 248 217 140 59 185 184 54 97 180 6 13 34 250 153 212 268 204 75 92 153 149 230 210 50 167 283 139 4 84 147 256 186 258 299 114 7 8 151 151 282 67 80 90 239 302 78 227 266 71 211 42 198 66 259 209 224 89 59 235 297 155 93 260 184 138 300 132 7 232 135 208 239 100 186 128 6 117 104 135 70 233 219 218 238 40 246 78 69 4 14 13 284 38 276 204 97 32 158 99 231 66 279 22 167 294 275 36 212 298 63 276 258 259 46 90 287 224 77 197 213 85 58 9 129 212 57 15 20 44 81 71 61 291 66 88 47 197 212 92 45 244 287 33 287 179 122 19 89 34 123 223 276 204 147 166 44 131 283 216 45 2 177 122 223 194 242 187 284 173 156 214 276 34 300 183 171 190 80 293 170 187 260 35 190 272 257 131 233 265 92 106 237 19 224 140 255 75 41 255 133 208 131 73 74 186 293 157 103 123 298 156 38 222 228 30 24 255 163 300 235 236 109 118 62 249 97 153 281 1 13 99 44 87 35 249 130 27 45 48 237 266 112 231 215 46 94 210 64 190 299 54 166 235 283 201 281 189 28 140 75 80 169 53 241 266 141 138 111 231 258 282 300 109 80 196 143 150 193 105 151 15 159 42 193 258 128 11 244 127 186 299 63 298 256 142 31 180 30 4 160 105 196 233 155 283 209 23 234 119 38 244 230 286 127 137 276 257 41 297 296 216 299 157 273 290 105 90 173 257 118 255 241 286 218 116 156 226 239 207 254 142 49 295 210 304 219 68 223 214 161 60 24 70 135 59 277 248 211 118 231 119 49 194 105 266 1 10 134 119 75 235 292 127 233 281 41 69 94 189 38 275 85 126 24 76 75 111 40 183 278 165 112 193 253 8 117 10 234 98 220 243 125 277 235 260 148 211 84 232 303 43 102 204 60 21 166 136 5 177 69 211 97 66 178 240 73 269 254 88 79 193 162 39 86 188 183 175 150 277 130 67 224 248 109 1 242 304 122 119 209 170 45 226 107 167 168 256 66 111 234 52 168 15 231 185 40 260 265 20 234 190 254 257 281 82 104 265 83 250 186 278 133 11 253 171 194 263 170 79 230 23 250 198 135 146 246 296 156 25 246 232 276 282 191 136 62 23 192 254 4 251 213 294 301 6 2 190 48 82 262 233 125 207 273 187 155 68 293 259 301 68 182 263 286 250 17 294 177 114 88 105 88 235 186 135 284 7 116 188 184 98 303 292 119 106 12 288 72 294 136 262 258 228 53 129 11 227 231 258 53 175 42 291 58 201 148 142 100 165 137 267 155 172 78 136 210 149 171 184 158 259 225 289 24 169 146 173 165 271 45 260 212 294 63 58 290 303 284 223 83 155 148 131 162 267 110 43 303 207 28 38 105 233 200 116 92 73 197 37 43 231 109 119 41 207 119 260 242 290 178 219 155 87 55 212 257 181 184 7 241 111 279 114 195 106 274 158 242 104 261 211 293 287 271 125 192 164 19 20 242 80 231 79 286 41 205 125 191 243 68 214 72 40 143 100 241 207 182 140 161 193 6 17 179 216 124 115 17 35 165 180 75 100 271 13 237 277 300 182 211 53 161 35 6 56 91 166 227 210 122 48 250 101 95 287 191 130 285 137 278 42 100 252 180 288 23 152 296 54 62 30 14 64 226 59 227 26 185 163 208 287 131 44 119 94 109 63 255 253 292 57 182 15 69 301 135 105 86 10 77 94 199 91 39 81 242 260 4 301 17 80 126 115 133 156 212 150 78 96 152 208 136 141 274 77 302 143 135 1 114 107 219 60 298 88 303 186 40 211 122 206 242 215 242 142 259 275 228 220 42 219 7 258 281 185 174 288 182 72 268 160 247 117 96 115 103 62 152 188 98 17 14 161 230 239 90 232 93 17 34 244 44 244 296 40 166 6 254 78 49 266 48 1 221 168 240 153 215 184 141 51 37 127 188 186 250 227 157 163 142 151 148 72 179 138 291 47 151 106 233 178 121 158 116 155 285 111 215 44 184 168 33 63 52 281 128 291 69 83 226 260 120 155 93 73 133 97 151 246 195 128 4 147 95 119 67 46 286 204 5 140 244 66 23 184 190 302 190 304 262 128 146 127 43 267 36 27 32 187 240 272 86 91 301 281 28 153 103 229 9 69 186 151 117 53 145 143 221 285 105 212 105 40 271 296 236 237 42 147 239 244 152 258 173 284 69 50 154 67 172 296 198 271 201 245 250 9 200 42 10 203 108 6 105 240 20 40 111 251 103 17 216 246 187 239 272 37 88 55 147 145 256 145 191 145 52 13 85 266 208 220 43 209 263 22 221 28 222 58 157 294 158 76 280 263 220 47 203 113 149 87 101 125 242 301 198 91 51 137 259 178 213 69 302 6 38 283 74 282 177 2 234 140 185 180 89 107 59 15 127 279 136 244 59 221 122 177 303 63 154 175 159 41 38 216 238 272 172 123 189 34 276 97 218 90 216 196 216 98 159 81 284 151 79 203 244 26 160 229 233 127 62 208 90 19 295 268 47 293 128 144 262 29 11 9 157 180 134 107 166 197 271 282 133 266 288 257 30 215 103 183 204 275 116 171 57 76 221 65 290 125 7 180 68 186 216 214 100 117 102 70 261 59 262 218 286 132 223 61 37 38 127 127 137 186 211 220 105 67 27 97 205 192 126 26 147 263 149 130 254 97 198 244 297 81 90 64 304 296 243 165 233 61 109 265 4 153 295 74 301 141 20 9 152 295 220 242 51 132 153 274 127 296 229 274 67 239 212 36 61 165 276 184 233 148 155 193 162 60 21 182 32 155 233 26 199 193 61 102 31 117 220 264 87 41 30 141 36 76 206 46 160 146 204 224 75 219 224 41 281 62 214 86 289 96 167 287 40 16 217 246 97 183 270 113 210 47 91 55 84 70 85 141 223 97 163 258 202 300 65 6 160 135 5 111 6 269 83 219 298 167 195 238 167 54 178 186 280 141 183 92 200 147 73 41 195 51 253 206 193 12 50 12 34 89 165 155 209 219 162 3 274 185 297 224 63 239 283 115 292 167 233 251 183 8 31 95 186 257 261 115 278 70 132 127 57 292 51 277 145 37 24 56 112 299 127 163 258 69 277 247 194 194 131 138 270 84 118 135 246 273 67 292 54 158 245 7 74 143 266 19 229 215 42 221 8 262 283 84 195 109 7 286 172 67 7 223 211 159 194 265 80 23 117 131 291 266 176 271 144 262 33 195 2 50 157 64 122 194 245 97 185 290 109 143 218 143 125 17 272 257 249 126 119 27 14 141 63 301 169 178 174 65 82 185 249 75 12 293 295 207 185 20 143 288 296 160 62 148 122 72 124 198 47 296 129 88 101 116 52 137 169 172 79 175 167 58 11 12 71 83 273 15 210 174 76 115 1 106 216 211 271 227 251 272 193 241 181 117 255 273 106 46 173 269 277 26 150 249 153 260 216 6 117 291 253 258 237 65 4 102 90 128 238 160 86 11 255 17 82 117 217 19 214 91 58 263 80 135 169 215 284 29 166 108 138 183 262 146 37 286 213 185 209 231 223 167 275 291 118 23 167 28 14 272 19 110 272 169 171 39 214 21 292 19 122 203 64 100 51 37 172 263 202 146 90 76 131 278 147 40 120 71 244 92 60 182 16 1 76 33 140 82 249 287 294 160 138 146 54 237 41 291 246 74 112 290 253 95 298 259 133 229 120 267 153 3 175 245 131 25 45 148 25 84 280 68 243 273 105 113 138 230 100 249 53 15 134 113 14 207 217 28 82 251 78 105 176 268 277 160 119 249 35 110 284 104 251 276 122 126 52 294 16 201 146 7 131 27 277 226 103 297 267 94 261 222 190 17 167 282 78 110 51 220 196 203 23 59 28 215 98 270 68 203 283 275 286 83 192 41 76 10 281 90 236 121 204 171 300 295 246 117 135 173 304 210 113 257 184 222 44 218 4 247 33 204 128 213 184 106 143 263 197 86 49 136 182 275 292 32 216 280 83 286 111 164 223 70 192 83 52 158 126 256 300 130 250 97 300 10 234 289 214 25 139 229 235 57 231 193 264 267 120 213 269 289 270 129 157 20 261 295 159 105 192 99 132 285 45 119 251 215 198 22 123 153 199 123 93 233 130 70 246 66 159 285 184 252 202 162 40 263 96 77 209 145 157 129 202 30 253 131 287 294 294 227 180 22 169 62 246 261 120 276 17 279 53 195 219 161 19 173 114 290 16 145 233 95 170 93 83 91 175 35 152 254 44 186 160 301 189 2 139 9 70 17 261 233 304 213 78 288 173 117 236 122 224 177 68 43 247 101 199 100 67 124 132 91 268 219 297 150 250 56 46 204 19 268 153 163 235 194 231 206 49 240 106 162 199 80 30 280 50 42 18 251 3 103 47 303 91 267 173 99 14 58 75 109 182 267 79 210 135 82 31 116 208 222 81 11 248 253 204 12 298 113 269 37 24 43 256 31 244 217 64 33 23 142 264 198 221 34 156 200 160 191 158 4 300 282 221 290 69 215 229 65 172 145 182 269 237 62 38 158 152 271 54 235 209 180 49 41 99 263 21 214 150 234 300 282 147 50 39 217 110 186 1 257 175 279 150 243 294 290 82 296 26 149 276 162 252 144 71 185 104 51 138 47 221 209 164 23 279 226 157 109 129 163 161 125 132 264 86 165 290 54 181 189 108 56 177 182 122 52 4 160 297 304 260 47 149 117 215 80 277 138 261 40 80 118 190 46 167 218 195 197 1 95 179 105 244 230 189 249 212 120 74 27 234 158 213 8 184 149 82 96 35 42 190 86 220 230 214 73 50 178 97 299 203 198 275 186 113 284 147 276 102 257 239 288 116 100 47 71 152 279 283 78 132 219 159 6 108 70 10 123 226 44 197 75 119 299 235 22 185 129 139 164 146 53 264 86 284 79 75 272 17 45 257 51 301 90 218 32 189 136 37 104 289 195 271 268 288 61 114 206 124 162 266 67 217 237 117 120 121 101 250 295 221 4 147 264 79 247 213 180 295 224 144 230 56 253 288 301 174 86 302 208 190 22 237 173 190 147 122 106 41 207 15 249 296 65 296 243 273 135 68 50 234 70 206 208 98 260 77 184 148 228 213 179 221 223 5 58 182 182 21 290 182 219 172 170 300 48 115 85 21 69 240 168 44 145 299 210 121 2 71 190 108 80 241 204 299 144 90 257 235 26 159 272 274 34 108 130 58 180 104 7 256 169 31 120 282 273 85 83 120 259 136 76 42 293 257 68 99 220 51 41 217 150 198 193 218 43 58 186 16 78 71 264 93 105 150 272 32 261 154 131 49 30 111 210 127 303 2 120 84 301 90 144 187 23 150 112 204 153 121 92 132 34 13 25 22 118 204 12 129 84 301 51 123 194 217 12 73 10 5 46 183 67 248 143 293 85 117 209 59 20 261 193 145 22 117 16 134 27 205 40 219 195 254 60 164 61 166 283 290 15 187 101 7 141 122 185 208 66 192 296 183 116 38 164 146 139 217 286 88 214 111 207 130 117 101 259 7 210 293 107 119 275 186 223 234 90 65 161 130 110 127 142 99 191 129 44 4 200 35 183 62 23 196 73 32 232 10 11 236 139 133 102 112 217 26 145 98 54 155 64 205 298 148 185 218 91 262 205 258 113 277 99 298 183 181 177 199 219 277 138 107 233 158 96 262 277 164 287 92 62 247 228 246 52 214 216 170 154 62 45 23 288 200 209 127 263 169 217 110 122 164 302 213 216 84 181 170 263 300 248 214 182 146 224 115 170 194 83 284 290 106 118 47 61 70 109 13 236 96 142 283 135 126 20 132 128 276 2 193 87 82 17 25 48 78 258 96 13 252 275 146 72 190 290 166 187 248 16 93 132 293 291 184 201 121 29 86 293 58 108 26 141 39 36 182 290 291 88 190 117 4 193 151 183 210 293 28 133 162 243 239 168 174 22 200 151 283 60 272 76 78 60 36 271 178 206 201 208 159 149 259 211 149 102 304 125 187 44 231 85 190 189 227 149 280 155 225 262 72 190 134 230 291 154 136 247 73 29 7 210 255 169 153 303 233 100 186 61 167 91 67 93 127 201 287 43 4 231 70 277 177 74 28 266 283 47 16 116 304 79 212 228 297 34 303 262 194 1 264 198 6 71 59 284 72 148 163 2 104 136 66 259 36 245 75 98 37 147 220 102 38 195 298 246 116 19 256 135 135 95 191 126 89 167 287 138 165 293 159 141 191 208 220 117 44 74 279 56 287 296 142 288 31 152 13 220 244 212 202 205 137 14 166 155 216 200 10 79 34 102 94 214 12 56 110 6 186 49 39 252 86 70 171 228 127 42 125 257 172 132 185 185 140 298 136 303 260 120 82 5 276 157 264 2 134 221 270 150 195 99 177 39 65 110 81 190 69 72 3 76 122 127 262 108 108 166 13 32 92 51 267 44 186 63 68 211 21 249 238 48 123 220 195 252 56 113 303 104 86 106 103 185 286 85 170 63 152 184 213 26 161 292 79 216 154 188 125 172 174 183 183 232 32 76 147 63 119 39 299 62 213 249 153 55 250 229 96 194 302 198 140 96 55 213 220 90 29 199 179 28 52 18 296 202 221 18 201 290 61 162 172 169 135 287 223 207 299 4 97 296 240 105 179 4 280 217 168 241 196 93 304 157 81 242 246 301 244 182 79 287 299 204 172 284 258 104 50 263 97 52 267 13 284 55 189 207 16 161 171 263 21 199 208 129 205 189 6 201 52 23 110 232 182 42 261 236 118 37 253 230 44 230 3 58 24 29 205 286 169 138 263 291 214 107 107 60 35 66 270 88 43 266 99 193 47 240 106 116 259 93 154 155 118 234 186 15 17 186 304 87 111 129 41 191 169 189 303 132 61 127 286 297 51 129 29 248 304 151 80 124 231 50 61 216 180 47 68 271 208 64 14 189 220 50 45 150 277 207 275 118 52 20 30 267 141 45 47 231 57 50 294 260 302 224 48 87 244 281 227 110 19 188 158 9 237 166 230 222 8 126 193 129 175 188 116 234 46 248 238 157 292 131 224 112 87 222 98 219 92 237 197 93 303 44 70 280 19 245 183 217 76 53 18 159 248 180 63 237 206 215 182 36 45 90 208 136 83 113 116 19 303 261 121 301 150 68 257 155 16 86 127 168 259 208 68 182 266 266 137 192 81 110 203 226 192 73 113 255 13 219 114 22 233 155 125 204 274 121 68 181 241 96 297 118 158 284 178 218 39 278 277 194 42 121 200 280 190 130 243 184 129 159 2 254 294 83 87 282 214 67 112 222 187 6 11 261 97 176 141 186 192 143 281 137 238 191 57 100 36 27 201 192 98 185 260 97 40 102 83 222 181 10 287 196 42 62 269 32 172 130 237 265 269 21 26 45 69 103 257 194 109 84 19 216 15 236 159 256 242 245 100 117 53 95 71 98 35 272 240 238 109 220 266 201 24 84 230 133 300 12 224 32 5 128 79 238 143 277 127 49 235 74 157 65 202 92 140 302 55 201 106 263 23 65 121 33 79 21 270 234 39 6 39 11 241 136 105 102 61 214 78 256 114 205 276 53 110 20 104 62 110 5 168 208 243 147 172 104 140 12 202 59 234 286 297 222 38 56 120 264 36 207 148 219 279 15 96 88 133 5 86 85 196 48 141 204 170 75 87 127 34 140 214 2 249 47 112 24 214 82 59 37 24 164 117 252 170 99 146 259 145 214 203 225 26 15 132 217 261 110 93 99 196 303 211 97 92 293 125 62 231 210 209 293 268 56 165 275 72 104 208 199 53 15 199 154 273 270 242 208 217 166 166 186 75 286 175 225 84 245 38 267 267 216 60 184 281 96 9 172 133 79 4 69 113 90 44 246 302 130 210 86 185 67 22 159 138 142 49 293 52 240 191 260 48 266 214 248 249 54 197 256 269 219 237 138 278 179 24 190 4 38 220 81 157 86 127 260 29 55 223 269 281 198 56 198 133 36 81 20 125 137 284 7 144 201 192 122 299 127 280 150 117 176 237 59 273 53 183 149 226 300 38 8 208 249 54 242 68 90 193 299 48 119 22 45 91 38 149 256 300 142 180 220 225 21 29 182 225 20 72 234 113 301 216 19 274 75 240 125 169 143 228 43 7 82 43 133 242 80 116 176 97 61 108 88 106 125 80 118 234 204 106 148 148 39 54 296 46 38 50 131 214 300 296 244 130 301 109 176 186 252 124 28 126 226 209 249 120 13 107 303 238 185 176 234 84 211 155 219 14 1 124 44 81 234 205 145 208 165 21 92 248 40 111 244 269 42 92 79 54 74 152 169 257 231 93 176 23 194 280 88 33 135 34 262 77 242 187 221 289 3 38 273 150 147 87 302 55 254 108 293 167 221 58 188 74 187 115 77 223 119 250 10 276 239 210 151 98 261 262 174 56 114 61 113 22 163 173 48 5 151 176 92 168 300 270 270 229 104 299 3 55 217 86 93 241 225 244 39 237 109 231 258 4 264 141 204 285 297 133 244 69 263 155 165 168 111 4 2 14 241 115 41 282 252 113 31 239 146 248 145 93 62 205 166 295 92 56 286 259 59 131 118 188 292 201 119 236 29 82 288 49 189 21 207 192 272 205 269 272 73 201 145 173 145 223 257 186 297 290 274 106 191 141 16 74 247 18 86 291 2 254 238 30 47 92 158 261 219 244 209 54 207 208 114 210 280 90 272 179 183 145 233 56 199 193 119 86 22 33 28 116 103 172 288 231 178 191 2 43 282 128 137 125 293 157 290 246 180 246 146 280 243 247 57 199 98 243 107 282 113 76 283 137 281 188 251 297 49 292 82 265 113 252 136 212 9 260 170 136 304 134 249 122 281 186 232 212 112 18 114 259 52 177 125 207 218 300 32 30 46 273 52 66 196 159 85 34 41 112 297 163 69 61 194 214 94 61 84 192 214 185 30 19 268 225 177 89 87 185 29 280 6 300 255 18 76 302 247 4 190 144 121 22 295 274 18 18 181 185 294 186 59 182 18 175 176 9 248 218 249 242 170 173 133 282 158 57 66 5 257 78 174 2 154 66 96 174 221 120 246 168 211 12 38 91 226 171 120 54 80 75 60 84 60 28 211 293 184 283 230 280 11 25 6 150 29 22 231 142 293 119 257 134 184 11 137 208 58 28 202 256 5 268 104 63 247 221 221 7 302 146 207 130 274 270 75 280 46 218 135 90 162 68 293 155 274 16 54 103 90 12 275 272 210 25 249 126 64 61 260 66 148 304 168 300 266 241 12 275 222 153 78 43 114 156 187 239 235 10 108 266 74 160 192 121 92 4 208 142 204 57 128 141 175 108 28 141 243 126 173 294 209 219 191 296 117 148 223 47 284 166 166 159 273 111 51 104 294 137 52 179 44 51 296 231 118 245 125 105 165 195 275 48 132 8 186 156 82 270 297 291 123 204 152 120 261 75 31 300 33 104 281 146 262 5 41 272 257 69 42 244 219 226 148 96 166 34 180 266 101 143 290 66 151 15 20 90 39 256 77 291 145 107 57 51 179 78 124 75 45 233 177 189 210 167 283 302 267 198 77 211 250 117 52 61 174 9 9 201 171 212 78 95 258 250 17 77 258 277 80 256 192 62 262 148 172 133 176 120 280 217 176 171 134 145 272 210 280 8 75 221 124 58 67 26 43 23 239 170 42 200 146 193 88 51 49 278 151 146 134 81 74 249 26 97 178 235 43 113 33 284 49 254 100 84 93 303 207 112 225 16 149 120 108 166 212 61 109 4 128 276 259 160 226 76 94 210 193 120 197 22 189 173 47 170 122 100 122 124 285 41 201 226 247 19 41 41 32 164 112 293 59 173 97 58 288 39 60 89 293 95 49 267 223 93 69 98 291 85 90 90 244 12 158 294 245 169 251 187 98 235 26 155 229 31 107 211 284 125 226 142 120 31 299 280 106 47 176 40 103 89 37 182 9 268 268 80 5 291 158 86 254 2 37 40 17 171 63 174 220 79 69 143 211 1 72 4 285 15 219 92 157 244 3 250 93 114 136 276 211 163 40 264 251 299 241 122 197 236 125 223 262 31 79 30 98 229 78 133 258 216 112 175 298 8 43 236 93 150 236 242 287 71 3 264 107 207 36 83 144 5 151 246 159 251 199 78 79 3 236 48 136 188 227 120 114 299 187 3 249 15 267 78 183 225 225 46 113 32 14 161 15 31 109 136 107 259 132 159 98 127 34 221 70 147 203 288 25 117 248 210 258 149 25 113 38 148 193 20 42 88 230 204 41 11 193 82 59 3 72 130 238 54 299 90 186 171 140 153 94 236 158 139 18 190 197 277 213 236 100 121 19 154 45 43 285 270 164 232 50 208 83 100 17 186 261 195 295 21 235 143 134 278 123 110 89 133 91 209 141 1 114 263 226 45 16 109 173 36 193 53 103 228 74 111 166 64 152 195 295 213 266 250 45 261 112 200 4 27 40 201 248 21 220 162 105 267 198 64 79 168 65 111 253 262 296 101 206 210 171 287 182 86 261 57 92 117 189 61 265 62 58 125 259 28 205 28 91 143 8 225 135 24 108 41 301 249 80 111 260 209 201 38 271 50 187 154 267 261 245 86 24 117 258 289 119 33 255 259 219 77 149 87 101 93 266 69 116 33 244 45 245 244 225 38 81 179 68 299 261 76 44 257 113 69 141 275 211 202 36 169 201 277 114 183 34 160 184 208 304 140 199 159 68 46 147 172 109 162 188 115 277 231 116 68 177 43 267 227 250 106 270 218 86 300 275 218 200 180 87 183 139 40 143 252 191 260 22 169 152 191 116 148 8 74 7 95 193 271 28 13 261 107 31 234 189 8 61 40 188 81 268 128 95 302 118 200 230 288 22 4 199 136 177 28 203 3 241 99 161 289 36 267 93 137 259 280 176 42 282 16 77 221 258 245 27 302 208 290 86 128 220 196 130 153 227 118 130 302 88 121 223 230 188 251 159 254 14 248 247 193 203 112 262 247 241 47 209 101 8 158 29 188 173 122 124 127 167 89 191 200 238 252 268 268 97 45 185 235 21 9 79 216 100 215 221 117 181 191 102 166 238 303 6 94 142 201 20 216 206 97 69 192 219 13 235 112 302 289 156 270 60 230 18 281 113 161 238 131 103 168 198 290 180 188 79 145 95 77 124 162 42 138 81 39 298 263 11 274 14 29 81 119 253 196 282 80 58 276 4 9 251 195 95 146 292 106 123 161 10 298 84 195 4 59 204 262 23 304 3 115 58 103 55 261 52 136 222 64 271 169 168 199 186 49 140 26 200 50 19 155 142 115 208 283 140 209 21 160 95 28 33 91 110 129 177 98 191 94 16 123 183 94 125 171 282 161 25 136 164 93 31 275 80 228 2 284 130 1 164 110 3 152 57 42 168 80 270 127 133 301 242 7 304 122 156 260 121 204 287 230 135 117 215 219 193 60 46 277 269 8 41 120 91 23 291 57 160 224 58 243 17 142 65 198 179 234 83 237 71 113 287 264 242 84 280 55 257 218 157 57 53 85 203 257 63 210 24 245 130 244 173 104 172 279 198 8 294 257 229 140 81 1 43 148 160 141 255 182 125 231 194 179 299 23 190 242 141 230 34 30 44 231 282 174 248 121 129 285 303 154 198 97 85 272 86 16 287 260 95 10 201 304 222 136 191 295 61 200 171 4 63 212 73 251 212 10 127 300 207 114 84 98 75 295 150 210 182 30 237 63 134 46 35 140 16 69 175 303 229 255 216 38 127 235 203 184 116 65 207 282 21 154 58 63 124 55 304 261 292 201 273 67 278 121 82 76 69 280 208 62 81 195 256 90 27 94 262 161 190 209 52 154 232 134 104 55 23 153 285 176 143 34 224 124 64 292 233 122 270 98 195 296 174 140 129 139 16 287 66 38 5 170 75 136 148 120 272 298 55 302 209 168 264 287 24 236 284 53 275 12 228 170 221 187 237 118 15 272 258 53 201 145 42 218 114 291 85 19 249 240 3 101 224 201 229 292 299 229 152 48 31 299 93 105 15 165 36 48 28 49 291 240 30 187 189 215 37 16 235 102 222 187 180 254 71 214 67 161 54 268 150 282 42 135 97 105 83 96 108 139 203 197 62 103 267 143 154 18 51 239 278 262 52 111 278 126 91 263 56 236 88 183 246 280 168 229 285 212 11 158 26 276 234 145 254 182 37 288 45 234 251 109 276 225 7 254 223 23 238 74 133 229 14 20 75 248 60 108 265 217 163 215 175 129 213 12 74 55 209 89 74 145 259 231 15 150 290 120 243 68 163 286 172 142 283 131 218 104 50 168 217 114 278 86 162 206 241 205 25 89 290 117 250 35 167 224 202 171 144 7 204 12 288 260 203 209 180 62 70 124 242 54 255 247 92 65 268 28 226 134 213 125 19 27 60 67 169 174 12 67 221 143 14 96 205 198 272 277 281 26 278 254 20 10 218 41 95 275 99 144 159 294 170 139 98 64 87 188 258 192 143 14 173 189 242 114 290 251 136 72 79 245 80 26 245 103 247 228 2 171 137 75 82 47 61 121 13 268 41 33 202 198 235 196 134 116 2 246 225 204 15 184 89 138 144 244 116 192 235 193 57 254 297 262 263 248 189 25 143 198 241 2 188 123 102 28 121 52 169 83 144 268 279 83 113 275 133 234 226 132 108 230 202 65 33 163 304 137 284 208 93 163 103 93 205 200 210 9 190 79 179 176 89 64 237 257 56 130 108 35 164 243 108 288 241 291 183 284 10 228 141 62 167 151 8 155 266 208 87 293 9 67 7 42 46 109 139 192 175 199 275 3 141 48 274 271 209 131 101 196 84 150 86 62 139 246 69 274 243 141 20 89 139 102 192 42 299 55 283 259 128 7 295 162 10 240 281 125 82 26 244 278 27 44 245 41 213 61 206 137 177 68 256 243 255 160 119 146 14 99 242 36 301 65 10 20 247 192 57 174 294 5 141 227 247 247 65 218 203 56 35 127 184 183 286 149 87 1 263 262 86 1 207 269 123 92 257 223 151 72 92 40 296 152 241 36 143 220 274 271 57 174 232 140 132 236 111 268 277 152 197 99 161 237 121 7 178 119 196 213 75 174 146 256 105 50 103 195 262 202 185 154 112 111 215 217 74 237 180 100 87 151 151 247 174 76 154 11 81 114 283 24 51 123 155 122 103 29 216 70 16 251 236 263 8 227 232 183 134 174 148 46 83 302 210 244 211 249 144 222 175 240 271 200 92 223 47 48 296 70 123 200 205 146 76 256 249 238 274 89 172 52 9 287 42 274 299 194 210 245 203 226 283 303 303 93 253 141 156 237 290 6 4 9 28 206 278 117 148 120 304 198 147 207 227 27 50 132 240 111 56 200 206 130 65 36 1 279 288 23 81 272 24 281 214 206 122 61 279 37 200 251 237 257 83 236 44 270 64 112 89 251 79 23 136 72 277 300 24 184 131 197 84 114 215 211 89 27 214 215 110 146 234 85 157 81 18 155 224 163 94 241 14 143 155 33 289 28 32 167 9 245 7 17 198 244 208 50 233 58 256 285 32 293 105 168 38 3 107 98 221 285 132 277 13 150 55 97 100 167 133 160 4 249 103 194 298 161 12 83 190 210 122 216 281 183 152 222 268 279 20 263 21 160 141 108 30 134 67 53 161 254 297 85 153 89 273 13 246 52 237 230 28 265 282 151 67 51 174 97 258 238 14 254 119 131 260 173 239 66 128 295 70 301 279 132 62 135 50 42 229 243 233 70 123 157 172 61 107 18 175 34 96 74 134 164 142 170 300 84 149 248 86 202 232 100 23 35 160 173 96 29 97 262 36 131 224 278 25 18 112 205 208 213 42 278 4 76 202 153 187 50 195 127 261 141 283 34 180 85 59 136 303 196 108 202 297 70 220 93 165 71 185 164 13 232 143 25 252 3 115 259 81 127 230 166 69 173 146 262 63 69 194 102 163 265 108 238 38 12 221 234 97 192 125 283 241 23 135 103 177 237 28 147 17 235 114 144 89 223 78 7 203 188 29 284 93 278 200 146 185 173 110 281 284 215 258 165 88 224 97 43 62 196 197 298 208 165 155 203 227 282 296 184 257 196 79 78 172 185 274 164 276 135 221 266 74 195 209 39 76 221 149 302 79 236 231 26 19 176 132 196 213 11 282 295 77 139 167 231 198 259 263 84 46 120 143 269 176 215 66 193 34 92 255 259 218 17 243 221 16 123 76 167 234 236 292 271 126 292 206 24 9 138 55 160 26 287 228 114 102 274 75 219 91 154 159 229 251 47 97 144 103 99 254 180 101 297 39 71 245 258 254 291 26 39 44 100 121 191 175 260 39 189 119 289 122 49 152 74 256 232 162 254 241 147 273 14 35 132 161 94 13 166 130 64 113 92 41 60 156 265 223 74 11 152 90 241 241 291 256 130 293 145 280 280 167 20 12 22 168 184 211 267 287 207 268 267 18 229 193 17 143 36 168 235 136 287 164 201 168 48 70 91 123 212 4 216 119 18 217 100 259 248 159 24 242 247 21 135 40 55 283 233 17 254 150 87 199 56 116 206 168 73 35 149 284 200 296 34 79 12 223 164 20 297 31 175 11 287 287 106 69 193 286 69 135 100 293 303 157 303 206 70 38 302 228 269 159 148 45 256 197 208 238 197 213 145 127 254 150 178 15 2 102 202 302 191 290 117 65 152 96 224 221 165 224 239 275 149 132 176 37 51 41 262 273 27 303 46 60 40 195 1 45 51 133 226 270 217 234 176 277 115 141 295 203 238 21 54 43 47 124 163 203 17 156 139 175 180 298 106 127 114 117 58 16 261 150 65 162 151 178 128 234 151 22 168 37 267 76 257 116 157 280 67 54 71 19 212 71 76 52 95 144 6 101 209 23 126 73 160 62 29 144 125 18 251 177 98 14 98 43 209 201 3 6 38 238 183 146 47 129 101 128 3 98 178 129 182 207 34 235 197 44 233 189 68 262 87 303 110 56 23 181 239 20 249 304 134 263 21 291 115 155 17 278 53 173 162 241 38 141 154 26 230 23 247 138 73 205 237 250 190 204 142 79 173 302 49 246 108 97 255 208 83 5 132 3 281 6 172 111 31 285 118 150 216 262 249 264 65 267 179 193 226 185 23 278 4 83 88 242 238 207 25 192 231 75 58 9 167 283 171 125 208 236 296 294 190 118 116 187 69 168 217 27 58 107 26 83 97 228 113 29 125 152 42 12 124 180 67 271 90 223 120 207 31 3 192 155 126 55 272 199 224 22 302 219 122 249 179 263 160 63 20 178 270 231 54 247 143 160 231 161 46 135 173 174 66 158 99 191 25 193 111 51 183 253 53 1 240 282 293 166 233 44 59 256 165 152 234 226 241 152 262 192 284 133 283 88 167 185 12 167 180 235 43 217 137 217 191 155 13 296 95 280 201 133 150 303 161 48 104 74 64 28 194 47 32 34 165 154 241 72 80 32 271 119 70 275 3 222 27 73 198 57 176 211 165 67 151 218 131 299 139 187 28 19 73 96 209 164 27 110 162 275 277 232 276 123 107 230 206 294 215 205 292 17 261 273 217 16 91 187 211 162 193 17 285 24 183 21 241 163 33 114 100 278 7 14 90 263 29 187 210 277 7 223 44 222 175 3 250 183 67 113 268 288 195 212 78 200 24 260 118 189 266 203 70 31 101 25 84 231 165 294 236 99 86 107 94 15 39 246 174 251 177 34 10 50 284 27 59 180 55 156 179 118 299 17 250 204 128 5 180 253 133 151 267 257 134 159 204 131 294 95 73 77 3 99 77 223 51 146 102 222 233 247 6 207 85 82 77 35 132 222 229 181 274 131 202 40 231 35 87 219 202 287 78 293 150 296 280 125 152 179 172 122 151 16 8 256 293 229 110 111 80 274 178 98 62 210 288 57 277 242 286 31 140 274 45 295 238 24 197 107 152 187 12 186 36 126 21 151 31 128 244 156 88 183 96 223 44 56 13 143 230 236 217 124 123 234 5 2 250 162 21 188 119 220 237 222 167 116 184 273 187 184 159 284 250 87 216 95 18 12 263 7 260 7 199 80 15 33 6 276 223 72 137 112 247 94 21 57 41 248 249 72 107 61 188 50 114 76 98 247 250 297 174 210 118 123 108 244 185 235 55 34 128 74 267 266 41 158 243 221 222 129 145 73 194 218 46 186 107 262 76 128 238 40 221 33 294 107 194 242 180 184 2 168 83 235 250 244 85 65 31 264 232 263 209 82 207 3 213 138 48 259 142 299 120 99 191 72 28 53 86 115 273 92 227 238 44 241 243 256 237 144 96 158 192 23 182 216 2 24 121 264 185 157 203 130 31 60 210 82 255 89 58 148 139 109 139 164 239 232 90 164 171 161 4 177 110 234 255 21 80 225 63 166 155 127 151 51 200 125 100 119 253 222 120 163 146 206 170 16 283 304 246 293 267 233 126 287 6 50 87 115 291 140 28 240 241 13 291 255 200 262 145 29 140 40 281 181 175 161 155 230 5 217 184 105 298 172 144 139 245 66 237 18 252 166 221 230 210 158 67 116 171 189 51 91 89 138 202 47 297 285 109 30 181 138 133 110 53 150 122 28 18 187 246 296 215 268 162 174 132 268 299 36 15 297 38 17 227 62 262 219 216 206 207 184 205 54 10 237 48 68 110 210 8 110 243 184 214 178 20 101 116 250 218 148 96 278 278 284 28 240 302 207 63 158 107 23 140 265 9 81 54 161 124 251 43 229 31 106 218 201 259 170 218 184 248 285 231 187 164 261 116 160 115 188 136 12 112 280 201 144 298 88 34 269 4 87 197 6 70 299 244 160 91 17 60 15 268 261 116 148 278 201 56 199 129 174 235 120 284 254 143 139 45 269 108 103 144 119 3 150 287 258 268 42 277 271 292 50 25 12 180 220 151 183 134 250 275 67 240 13 75 160 48 214 238 238 257 179 123 297 285 203 185 234 144 6 198 13 116 23 170 127 146 210 196 57 26 27 265 197 49 103 230 40 161 258 4 303 295 127 41 149 129 57 141 258 183 303 175 261 116 225 193 75 181 247 136 35 75 4 290 52 290 268 25 166 89 228 216 286 114 225 45 164 206 211 264 175 199 131 276 224 69 153 295 286 94 238 51 134 303 164 110 68 51 133 160 1 282 156 292 139 68 258 79 128 106 28 240 35 85 21 38 218 157 282 218 198 105 107 2 207 187 294 198 65 147 244 51 281 280 127 211 298 105 197 249 137 60 91 153 22 243 229 110 222 234 241 248 200 4 155 91 92 1 127 206 2 41 12 239 72 291 41 84 217 220 272 243 160 280 149 151 82 135 234 40 258 271 156 137 110 147 114 184 45 187 272 3 241 85 291 44 54 197 91 149 264 72 106 134 243 81 156 72 229 88 244 217 3 86 255 8 224 14 85 202 31 228 109 18 139 17 126 110 13 264 181 57 57 41 163 284 206 130 155 100 69 94 111 201 174 287 157 98 194 116 183 194 104 123 81 223 2 152 140 207 151 79 270 221 85 275 134 178 175 147 19 69 81 102 158 119 52 152 265 64 156 299 122 24 248 303 178 155 200 70 63 165 95 16 235 185 210 286 220 214 99 234 150 227 271 46 270 221 132 146 142 281 174 283 204 292 270 114 80 26 173 298 279 201 256 202 28 91 150 31 39 188 231 165 247 87 75 37 71 15 122 238 208 249 180 33 40 275 203 194 286 130 51 299 282 183 226 171 287 152 232 19 33 210 52 279 298 161 9 210 79 42 55 97 127 228 2 3 302 22 40 112 92 86 235 35 248 175 210 7 109 96 273 294 164 18 207 195 155 162 56 242 95 230 94 114 265 270 160 213 27 128 283 75 176 274 5 117 294 271 156 96 193 145 77 105 123 75 269 276 234 55 180 106 123 98 226 2 194 25 18 190 273 296 28 277 106 66 145 280 287 10 83 61 19 272 99 135 15 99 151 24 212 56 251 164 54 114 226 221 33 71 205 143 157 252 262 236 63 272 119 270 109 35 269 221 103 245 280 83 244 285 210 69 80 268 257 160 268 112 170 202 70 103 275 98 73 93 208 213 181 24 64 111 8 24 191 302 106 152 153 74 186 151 101 266 127 111 61 12 246 101 248 136 299 147 281 177 72 59 182 219 302 299 239 52 122 134 200 273 189 238 266 135 230 107 102 245 87 244 232 129 289 282 144 187 295 111 92 299 80 264 81 105 247 11 51 258 297 236 220 63 54 203 139 164 104 275 230 168 140 216 269 111 292 194 50 247 274 277 210 17 182 128 208 240 225 76 220 106 234 215 291 187 150 75 170 149 293 225 133 97 17 95 56 280 140 42 77 231 34 51 200 137 301 62 148 222 257 171 261 86 226 49 211 196 84 202 161 158 284 233 238 289 255 198 139 115 82 229 90 59 206 223 70 96 26 37 20 174 263 76 285 162 183 288 270 245 119 152 295 233 176 218 158 24 160 31 19 6 218 185 272 85 147 198 2 124 198 6 122 3 110 279 86 166 10 200 229 243 275 71 282 88 258 184 261 274 46 160 125 27 25 280 70 304 210 277 171 96 157 150 262 199 39 128 88 214 74 251 204 148 32 178 230 137 166 186 97 245 167 69 238 34 94 196 31 195 55 47 46 115 301 181 98 243 293 75 30 217 218 31 47 141 91 183 39 264 41 234 84 183 77 243 277 95 226 246 253 293 117 36 166 14 102 276 42 187 230 148 107 17 35 256 251 299 245 21 179 75 161 56 83 52 38 118 87 35 93 213 50 1 43 16 158 222 286 22 72 186 131 6 277 109 170 190 17 106 281 166 15 211 270 145 289 287 257 3 224 219 1 161 184 234 204 205 57 169 10 264 195 222 20 132 27 279 116 62 107 59 219 139 211 152 272 61 6 104 181 197 255 111 216 167 156 127 196 85 188 189 250 75 15 81 147 275 105 89 12 158 64 220 237 190 98 293 232 12 76 162 145 150 295 72 196 209 272 49 99 101 40 276 253 220 219 237 286 276 232 106 62 11 174 59 178 206 19 85 109 166 206 59 170 232 10 300 259 64 225 57 214 207 163 136 299 131 64 9 68 90 73 2 247 184 85 162 134 150 61 177 84 268 236 289 263 144 281 3 301 122 48 52 142 130 294 154 301 265 241 285 302 224 169 217 218 216 19 67 135 183 181 175 253 135 4 18 91 19 148 161 270 70 137 152 75 134 20 16 4 172 4 47 289 172 105 189 68 4 246 205 107 116 292 191 273 158 239 25 47 9 122 42 219 221 214 251 106 281 264 242 207 238 65 60 199 183 135 248 282 75 267 155 160 235 194 98 215 206 202 72 9 136 185 204 223 122 72 121 130 262 159 184 288 52 55 285 29 240 124 54 87 130 45 66 259 102 98 120 224 261 8 139 191 193 145 10 185 115 253 166 188 176 101 205 263 265 152 222 204 169 6 71 86 70 55 280 135 105 241 106 205 152 65 131 232 41 91 277 280 3 230 56 162 43 143 263 137 134 179 44 181 133 267 131 263 38 269 43 11 179 134 2 131 222 156 199 281 7 24 197 282 213 145 294 142 94 174 272 128 229 301 52 105 196 27 302 208 123 221 98 163 53 166 9 257 86 249 279 194 85 31 261 176 112 264 59 93 273 45 138 129 195 301 293 164 18 76 73 69 60 109 278 32 35 171 304 291 284 126 271 186 195 33 99 145 211 144 133 259 104 300 260 293 53 61 56 171 74 281 273 24 51 156 154 230 59 112 140 115 87 138 153 28 251 11 258 35 122 39 134 76 8 197 133 255 211 49 16 142 137 188 2 277 264 32 142 243 259 149 127 55 211 210 276 75 222 60 70 61 197 239 242 21 226 108 198 132 194 296 240 75 39 32 82 229 7 294 23 261 15 237 109 303 106 276 295 295 78 281 286 64 87 247 136 26 107 160 232 188 295 44 240 229 137 281 42 141 232 67 177 265 11 199 290 270 252 281 188 59 91 220 43 184 155 45 149 86 172 167 192 120 299 302 274 304 212 186 200 207 265 272 66 282 257 259 224 52 226 54 273 72 130 39 258 222 188 157 162 97 132 254 52 140 50 82 115 94 134 55 66 83 192 276 78 99 207 96 167 37 9 174 36 144 215 28 295 55 107 175 263 188 45 259 64 176 278 66 223 108 85 197 239 235 261 211 202 125 186 164 213 52 15 225 301 229 275 238 240 50 87 37 222 48 272 46 46 138 67 269 38 253 86 183 194 183 80 115 255 97 150 172 138 101 119 9 166 240 293 206 104 75 227 94 81 199 202 206 148 104 301 161 198 262 75 136 161 238 81 191 46 54 203 20 65 138 229 114 197 9 115 198 154 168 99 167 200 17 300 20 238 4 35 93 96 25 201 288 144 141 245 245 125 76 167 133 220 73 9 276 238 232 208 282 279 45 43 192 44 295 106 269 262 54 96 127 93 283 208 142 174 248 12 241 63 290 103 214 281 241 67 73 271 113 20 249 196 181 151 191 198 138 12 152 242 150 188 16 282 91 257 177 127 302 200 219 189 186 70 242 130 104 142 32 50 7 112 12 79 36 10 124 154 150 117 7 99 141 107 265 88 122 268 238 104 269 42 170 36 120 133 72 145 264 248 200 54 180 25 127 58 189 296 295 250 270 72 145 80 249 160 158 203 121 219 174 62 185 54 128 95 267 88 284 100 180 212 2 97 185 136 214 175 186 9 265 140 221 217 181 281 92 105 61 166 154 39 176 50 218 18 226 51 49 25 178 155 273 62 45 107 154 173 236 247 152 300 270 298 289 283 239 290 90 96 228 83 293 66 279 220 57 109 257 18 86 174 234 79 243 81 140 179 118 74 286 155 176 25 198 175 111 31 177 105 273 104 293 107 290 99 52 90 178 7 142 39 212 106 125 164 56 149 110 46 279 22 204 112 82 110 60 264 113 128 120 288 254 270 31 44 57 77 248 68 2 136 139 282 105 181 142 121 265 233 120 280 128 197 293 259 116 245 153 246 73 224 147 67 281 95 259 76 186 189 101 246 258 7 244 2 303 168 229 125 195 60 122 232 139 126 250 57 217 37 143 237 142 168 15 160 105 42 293 254 236 213 71 26 21 167 72 32 248 176 33 281 7 85 22 199 73 99 199 198 212 218 116 86 293 116 220 226 124 113 237 253 258 182 118 255 51 129 9 180 82 156 282 227 265 50 71 235 207 285 302 102 134 139 191 187 142 136 37 27 59 46 73 127 61 136 162 167 239 213 101 262 46 108 8 258 198 198 23 178 284 290 174 183 222 282 282 140 252 179 62 47 195 291 203 199 167 65 224 224 13 201 190 285 242 186 168 284 112 56 197 21 24 8 285 138 152 143 288 188 245 147 278 234 134 282 254 254 91 131 186 268 75 59 174 187 282 15 233 87 97 199 19 195 251 97 160 251 1 191 13 29 258 259 59 282 275 68 49 303 156 112 159 251 250 116 188 294 88 293 194 298 5 264 152 244 193 107 208 241 260 286 21 14 149 209 195 281 216 37 136 7 9 16 153 40 268 171 207 278 281 113 261 59 204 136 30 162 278 52 183 86 196 29 149 33 257 284 214 192 95 51 230 63 221 4 206 139 300 235 255 165 243 38 26 259 267 66 214 223 109 225 132 303 245 281 195 301 85 123 8 104 230 190 273 48 124 190 43 236 26 58 177 219 227 129 80 181 60 44 126 284 64 201 52 9 46 16 154 295 197 41 304 146 41 88 116 67 247 169 154 145 219 251 286 258 213 94 252 222 55 75 107 292 92 136 95 45 50 298 84 265 287 165 288 119 294 178 214 54 19 195 14 51 129 169 183 228 12 278 75 107 274 174 104 35 245 5 107 79 285 155 25 266 216 294 179 249 96 115 289 91 34 176 11 187 145 163 196 144 200 232 297 18 12 204 256 67 45 287 44 68 277 3 86 59 74 243 55 277 262 48 102 250 51 215 228 184 84 19 188 301 272 56 198 261 127 104 112 113 94 140 58 297 67 184 152 109 101 29 184 30 250 25 175 127 66 66 80 90 65 17 210 132 91 23 5 267 70 281 282 128 92 35 86 148 189 68 143 126 59 284 199 119 287 252 125 191 68 58 108 157 14 116 188 284 157 286 221 26 53 43 111 71 228 277 254 194 256 44 201 92 165 1 83 156 54 10 130 149 222 3 142 210 226 73 105 136 289 203 290 269 120 51 197 260 202 151 240 136 61 50 288 98 173 71 289 201 48 136 37 46 278 240 271 18 159 109 252 25 16 285 260 49 156 204 182 139 150 212 52 7 81 148 159 51 179 182 3 136 9 53 270 8 159 130 56 268 95 149 84 49 5 195 269 89 280 37 138 74 98 121 279 145 274 296 75 133 165 6 123 90 23 83 284 21 297 77 191 116 287 97 23 243 272 179 258 176 62 118 237 178 56 189 112 207 303 210 288 266 238 166 269 250 285 205 156 148 101 131 283 253 277 201 185 206 87 7 144 225 143 204 2 284 149 188 291 49 32 237 154 111 94 134 138 143 44 1 262 184 194 283 28 81 138 170 40 216 36 2 278 151 263 165 194 243 76 45 146 202 251 148 210 4 147 165 3 284 230 198 300 210 146 25 117 191 180 273 110 296 222 73 39 222 26 37 131 264 108 167 208 55 189 124 214 303 140 207 206 304 201 67 229 210 285 225 88 272 217 267 118 132 136 146 235 71 143 101 229 212 33 18 137 282 71 162 6 17 210 294 6 292 183 49 58 181 177 297 275 210 233 263 158 41 84 276 171 279 145 206 271 198 58 192 113 16 216 35 205 70 217 15 147 183 93 67 227 102 130 18 129 254 261 5 239 28 212 88 138 13 26 205 1 244 194 94 113 193 18 222 106 262 160 203 201 183 42 301 183 24 284 208 146 73 46 120 105 74 49 162 161 283 284 193 194 199 253 255 152 161 257 203 64 194 196 186 177 50 33 273 152 282 221 182 179 41 204 78 215 23 284 140 25 147 178 151 238 171 235 21 80 234 66 148 107 185 85 98 234 39 192 58 70 60 247 186 190 111 117 232 108 175 232 20 217 21 70 51 96 42 171 6 134 124 152 281 98 237 73 74 294 16 186 139 288 71 218 156 92 84 239 16 116 241 236 135 181 213 217 89 295 212 216 214 105 269 41 141 300 226 244 88 177 237 242 158 262 89 90 207 127 30 189 173 84 249 94 101 74 199 159 152 14 92 178 57 303 43 207 261 268 163 61 109 143 242 236 269 232 69 214 186 196 271 103 225 293 112 111 182 212 178 302 173 230 207 298 137 281 64 107 158 108 126 222 149 176 85 19 163 27 287 42 38 19 123 168 202 274 87 34 49 50 127 104 267 25 175 254 301 159 7 144 255 33 191 59 95 77 14 266 68 200 142 235 86 119 136 31 300 153 192 44 162 51 210 85 206 213 223 27 30 10 227 257 207 87 48 61 187 40 264 143 37 39 107 284 77 106 51 160 10 207 264 81 83 133 111 93 242 64 56 224 234 170 85 273 89 136 69 283 47 262 229 254 128 263 274 29 232 91 204 228 254 135 163 277 51 101 287 32 54 203 199 42 186 63 111 64 68 282 111 209 277 228 163 63 154 178 162 129 285 222 257 84 298 157 31 83 62 54 112 72 137 97 44 232 81 215 158 63 151 232 86 44 101 147 50 267 100 159 142 112 84 293 31 303 154 207 37 6 57 192 67 178 184 302 193 160 293 155 214 26 37 92 144 132 10 266 41 63 76 108 229 144 149 2 14 19 104 197 207 152 20 251 272 123 254 69 218 61 123 50 26 20 193 135 5 46 91 263 251 123 13 170 235 19 279 60 49 167 79 66 116 43 97 288 30 190 190 19 178 204 270 30 200 51 255 42 23 97 123 180 297 196 38 66 272 171 71 138 291 5 272 247 226 45 126 181 60 117 41 8 151 85 131 32 26 219 69 238 50 33 28 85 158 60 186 247 144 12 58 302 234 251 143 217 300 209 43 41 250 120 213 194 197 270 293 94 1 42 273 256 5 68 45 90 71 122 291 202 202 135 115 251 270 243 300 203 223 111 124 139 304 168 183 4 151 28 149 105 277 172 261 40 260 256 294 137 279 231 45 218 255 149 284 154 4 64 59 165 130 166 191 138 152 201 150 177 157 79 249 27 187 157 165 31 105 93 204 194 71 24 281 103 247 162 51 187 187 273 124 131 185 212 121 63 78 91 165 258 265 245 243 54 170 287 2 122 120 127 280 208 74 170 23 242 78 182 195 249 236 96 184 261 288 76 133 186 225 26 20 72 161 45 33 235 27 168 32 102 249 54 28 282 60 260 154 119 114 128 136 126 49 302 148 161 251 168 70 190 293 286 236 89 194 148 161 159 41 37 48 233 122 266 77 100 81 112 146 190 22 242 205 182 34 141 204 45 147 194 13 85 195 118 294 171 3 73 122 102 35 126 108 20 178 297 8 8 59 43 203 221 137 18 254 19 73 185 280 87 50 116 280 136 186 165 108 234 45 177 261 157 252 67 226 42 259 182 121 197 39 133 82 278 216 86 151 67 122 117 143 277 62 238 272 302 88 23 24 79 47 171 29 111 140 132 242 244 203 8 229 222 155 189 156 128 128 128 258 125 143 14 240 190 201 88 52 264 252 213 165 53 121 236 293 4 97 84 223 139 290 48 140 74 260 284 214 9 62 38 54 46 227 16 72 267 127 87 201 155 72 272 184 185 142 176 234 38 19 67 186 232 185 18 106 70 96 245 291 220 224 195 4 195 302 284 2 230 201 30 235 278 48 141 204 248 103 121 49 104 52 276 283 128 197 84 50 284 8 90 296 287 51 96 233 106 304 66 159 16 145 6 238 266 141 286 2 118 58 277 203 172 64 227 94 145 32 40 33 2 194 33 240 130 196 27 281 268 24 30 219 258 262 130 44 27 275 58 239 150 249 230 174 26 56 110 264 100 122 110 106 292 303 66 200 287 264 51 215 103 224 126 199 131 3 289 87 299 231 58 251 185 213 136 40 60 294 15 110 140 17 237 174 81 65 219 189 161 243 134 141 244 215 85 281 256 222 258 144 275 120 136 301 295 26 14 172 65 63 278 20 209 116 20 253 58 269 47 21 92 209 279 62 179 291 79 144 30 74 244 65 88 35 27 231 100 297 213 185 128 81 91 31 231 251 223 189 200 89 206 109 151 16 68 117 195 82 246 244 24 181 281 252 50 50 29 76 89 19 47 262 185 219 85 255 299 23 44 2 137 194 81 7 243 259 287 160 196 24 303 33 279 287 5 73 304 103 230 22 119 160 13 56 199 109 93 222 77 194 1 243 192 109 142 183 266 231 5 268 74 67 74 160 171 240 229 230 251 137 39 89 282 160 154 186 84 109 202 86 193 171 213 183 129 248 144 233 114 234 227 144 296 51 24 63 201 113 277 46 128 283 63 209 282 236 209 303 271 197 138 215 120 247 214 46 100 123 138 71 256 153 90 169 120 217 142 192 12 29 136 155 254 146 12 145 156 138 239 268 189 201 222 75 193 129 235 250 122 229 116 140 65 15 141 42 37 39 212 67 68 289 57 256 72 17 11 16 125 228 246 293 57 123 146 183 291 90 52 147 284 96 193 75 143 281 5 12 223 286 51 31 126 210 246 255 183 248 4 295 172 238 44 250 116 147 188 37 191 10 20 148 89 70 264 47 76 172 157 17 249 175 248 80 54 117 3 292 302 277 47 126 42 52 114 133 152 281 79 254 272 10 179 251 111 254 52 253 99 278 294 123 23 144 151 194 273 122 272 156 109 11 96 218 145 190 300 207 118 263 34 167 270 80 286 24 176 257 139 170 212 231 46 261 263 224 53 278 224 217 243 156 131 82 49 183 269 74 92 256 257 138 282 57 114 198 77 85 150 258 221 88 204 216 256 134 240 21 272 224 184 219 232 263 121 205 173 90 91 282 98 118 233 134 196 175 114 260 233 297 25 79 125 38 22 199 64 77 55 203 85 189 150 41 282 244 48 120 78 35 100 95 287 276 65 186 116 14 129 165 19 42 162 248 223 245 50 120 251 163 26 54 229 45 240 303 81 148 108 86 88 281 192 149 220 245 262 291 31 97 204 229 57 28 153 1 82 29 220 269 142 159 114 249 232 250 193 296 224 271 254 159 49 70 148 236 224 100 85 131 230 241 65 60 229 109 229 170 167 168 89 118 170 131 62 138 52 135 44 46 58 179 48 233 202 171 41 75 248 198 283 29 203 275 100 110 64 191 202 285 158 156 1 179 173 114 11 277 231 237 26 199 291 62 129 24 126 80 205 171 301 252 273 212 237 163 71 225 7 192 235 242 201 90 72 28 221 63 120 69 170 81 2 289 222 143 238 88 277 222 26 13 20 195 201 281 168 303 38 205 78 293 104 232 259 144 101 61 64 171 290 166 211 7 232 81 25 265 264 180 227 40 103 119 8 23 205 196 197 131 162 251 101 120 135 226 254 55 36 125 242 53 181 240 152 300 69 287 146 6 170 145 50 279 21 183 127 11 261 203 196 151 39 49 74 5 225 283 202 248 169 78 47 17 100 110 260 109 101 9 179 140 166 177 156 32 133 109 286 105 185 304 29 269 246 109 15 106 18 157 26 272 244 259 19 201 22 169 293 293 187 147 128 303 113 212 76 47 86 192 298 64 227 229 218 78 129 48 70 192 174 171 41 170 288 233 299 243 298 113 235 137 164 167 176 212 143 44 22 133 2 8 239 137 217 24 170 259 10 43 192 150 218 175 274 124 125 122 137 59 285 80 255 204 178 27 295 89 269 142 121 230 29 82 89 75 22 210 10 119 216 153 186 18 98 276 24 83 179 243 26 178 219 59 302 277 178 97 44 103 12 18 168 251 1 122 256 199 25 103 49 132 236 60 143 55 171 290 51 83 113 154 34 134 107 226 14 164 258 247 132 48 91 210 276 92 241 73 136 14 240 44 151 209 138 41 104 160 60 95 36 219 127 49 169 40 249 260 174 135 252 254 260 283 104 304 294 16 206 149 212 144 170 225 221 44 27 271 94 301 148 58 214 204 58 243 41 18 241 196 158 265 171 18 121 84 150 243 29 186 106 123 283 68 251 153 275 111 200 214 179 192 304 60 79 2 150 291 260 69 281 267 293 274 146 196 141 54 274 203 158 224 42 63 170 131 3 18 35 292 89 252 88 59 52 8 37 271 212 35 5 31 193 258 44 32 105 134 152 24 278 202 11 277 141 161 118 173 211 270 168 226 244 101 288 43 201 294 50 222 214 301 20 34 178 57 29 259 182 3 246 107 178 54 67 4 302 271 49 51 197 97 155 84 155 260 153 236 121 251 164 259 94 272 41 301 110 134 245 294 120 144 164 6 234 241 222 68 81 13 78 174 24 110 133 249 71 241 225 166 176 6 148 200 215 150 202 60 212 139 261 133 29 184 242 130 264 114 15 199 120 70 186 37 31 171 85 124 49 19 280 279 226 234 100 8 288 224 119 141 141 261 238 157 222 303 7 141 17 182 273 102 150 289 186 294 218 272 106 73 18 127 270 186 211 99 75 83 197 99 10 104 80 122 104 121 60 300 254 168 78 197 286 224 77 227 136 299 130 8 77 57 197 58 102 4 108 107 181 102 114 67 189 257 253 275 55 81 94 182 76 58 7 241 295 165 77 5 160 55 254 81 128 81 51 97 153 126 123 190 28 132 153 52 73 221 301 242 178 142 10 120 280 165 283 206 14 158 192 257 144 105 13 108 263 255 120 124 59 66 199 69 228 80 141 150 136 94 207 253 285 188 289 190 38 55 15 207 6 244 111 263 286 55 45 200 47 222 54 69 191 259 107 204 4 200 292 295 210 159 248 277 285 26 24 136 280 90 94 258 274 61 88 304 278 167 54 18 128 302 101 248 293 165 262 87 241 183 296 198 260 207 40 46 202 135 23 262 24 167 35 285 297 287 147 63 139 16 122 296 40 208 36 293 194 213 169 252 8 116 6 175 139 123 63 298 203 70 269 148 151 85 50 301 4 78 77 22 116 242 127 83 229 125 163 140 54 157 244 143 29 123 13 22 31 141 6 254 195 46 215 223 155 49 18 160 3 81 99 293 2 186 235 170 287 122 163 180 188 255 145 203 185 302 212 70 6 268 270 52 236 53 220 41 50 169 232 135 263 181 186 274 224 157 152 92 144 70 106 61 283 88 158 49 160 128 122 235 267 303 233 298 243 240 253 63 11 36 206 17 271 164 67 303 178 134 68 3 80 255 152 50 42 140 277 22 159 141 179 278 246 135 287 65 18 166 192 223 95 68 116 164 183 190 132 110 99 167 1 67 72 20 276 208 190 145 123 216 94 45 265 76 290 135 202 48 105 126 229 103 275 220 208 164 236 36 135 14 25 18 5 291 154 151 293 100 66 156 156 54 179 93 75 116 215 194 103 43 244 253 206 208 303 301 291 82 251 232 290 37 228 147 254 30 85 286 101 118 167 285 198 231 201 298 200 110 108 65 193 104 104 210 51 293 130 238 91 143 45 47 191 71 178 190 245 28 2 242 215 81 163 57 164 58 134 11 254 56 240 69 97 160 280 50 8 91 138 219 14 283 9 280 230 4 186 290 67 301 81 303 26 7 180 210 221 82 277 303 46 196 47 72 101 215 298 94 92 194 47 82 149 103 298 97 113 106 89 105 190 58 202 172 148 9 233 31 287 96 157 258 199 29 87 303 100 216 204 49 35 247 188 81 193 65 128 93 289 81 192 276 262 167 221 146 32 95 304 186 266 206 50 219 226 159 205 78 43 94 198 258 152 302 8 70 280 144 169 293 82 210 273 295 247 261 60 77 37 298 137 44 205 203 5 276 1 239 169 152 6 61 49 64 109 53 194 95 23 17 93 25 57 114 170 276 265 112 129 141 43 4 13 299 304 156 106 137 207 4 161 226 59 4 42 24 71 85 80 292 36 291 18 220 143 37 114 288 25 136 122 61 247 263 235 182 113 25 255 88 288 44 165 47 58 195 179 297 227 256 96 76 85 29 54 216 45 262 105 248 219 213 30 154 171 262 170 181 143 264 93 198 53 296 73 239 61 154 303 296 105 199 263 177 140 58 207 245 71 296 174 55 110 301 11 178 164 49 249 57 64 186 5 224 219 76 221 21 146 88 290 13 246 35 175 157 200 183 51 42 187 148 87 282 78 260 139 199 59 95 197 111 106 192 127 170 80 288 140 167 160 175 226 103 166 298 141 219 124 217 45 284 254 236 74 11 212 287 163 134 90 159 84 84 145 245 3 111 51 125 278 76 227 60 167 14 70 173 146 234 182 67 123 204 239 303 205 23 232 14 70 33 43 49 207 268 72 259 156 157 5 79 303 223 194 214 206 115 279 57 303 147 246 78 67 93 283 165 26 267 10 113 100 100 185 248 71 264 123 55 87 205 267 121 98 170 287 282 194 297 133 100 57 99 241 11 1 202 137 52 133 301 216 16 176 60 100 257 273 138 254 220 270 293 269 159 46 141 41 167 186 214 137 93 136 73 265 4 72 180 220 156 29 57 285 1 291 149 289 304 166 216 10 257 37 196 147 241 215 229 68 128 34 133 176 222 1 156 244 220 136 146 46 233 279 48 178 295 107 276 213 293 160 145 198 96 238 29 152 72 227 273 207 250 155 250 101 70 145 86 266 275 273 242 77 142 253 209 123 175 296 135 104 77 69 264 57 53 67 276 136 147 245 10 19 69 98 261 63 121 280 41 274 222 296 161 64 285 176 229 146 15 242 113 250 198 279 16 270 107 172 133 252 272 237 55 108 27 238 58 288 174 25 177 78 256 275 111 8 250 140 240 248 296 48 179 22 99 163 184 246 94 10 152 254 244 28 188 110 255 72 7 144 282 47 164 284 56 86 17 203 261 172 290 218 31 35 134 257 210 178 241 152 32 48 259 133 155 86 157 118 25 291 127 14 185 226 247 252 284 177 125 140 287 274 192 49 56 190 207 63 190 279 3 251 261 267 180 143 184 146 285 238 71 47 217 188 49 237 183 241 161 242 174 33 221 181 222 47 74 300 238 245 38 69 85 18 45 35 285 97 279 76 164 167 258 152 102 69 162 62 220 267 217 50 131 46 198 92 236 32 145 269 204 121 60 69 271 135 234 280 101 110 161 181 9 155 295 96 270 145 154 190 225 113 161 301 298 132 230 11 38 63 113 294 110 35 304 59 49 225 104 12 64 211 65 262 27 86 196 137 20 51 181 203 145 186 37 166 135 241 82 8 45 9 195 166 179 104 22 18 92 63 98 62 224 207 134 202 10 106 172 53 263 178 59 276 284 176 199 157 102 295 222 243 240 189 55 69 25 118 22 269 219 33 234 265 253 171 44 181 45 212 230 278 151 45 290 275 246 143 132 43 137 239 134 217 85 14 182 84 33 210 73 267 158 101 224 152 293 153 80 249 149 6 235 214 103 43 247 285 10 37 298 74 250 126 17 275 43 106 150 28 33 200 252 248 302 82 97 89 200 167 131 174 71 90 209 55 219 25 267 159 99 43 251 136 295 118 23 92 273 162 222 119 205 131 125 249 134 277 168 173 273 107 151 135 193 21 156 288 229 203 282 290 197 224 128 285 254 41 283 44 187 64 38 48 219 128 210 255 239 30 68 106 73 264 63 272 246 198 29 56 42 220 293 226 291 232 275 291 106 113 98 50 103 233 34 130 77 53 155 93 250 201 53 161 7 201 14 211 128 299 235 224 6 225 261 265 208 224 32 122 1 12 288 22 129 79 186 243 155 112 204 127 32 74 213 35 139 44 43 216 41 159 14 88 211 252 96 215 185 244 29 212 168 154 136 295 238 167 117 107 92 30 32 199 9 25 235 124 100 114 229 271 181 86 55 4 224 247 171 57 195 56 56 95 96 176 263 296 216 257 123 227 70 165 98 29 152 85 302 88 178 221 172 177 91 33 207 255 99 215 161 242 249 9 140 46 260 276 227 71 46 268 86 262 182 185 31 171 175 179 247 10 154 9 85 48 89 97 304 58 209 190 192 199 146 133 132 102 105 20 75 149 46 168 220 178 196 170 124 76 83 97 185 256 73 148 182 278 245 131 112 126 123 127 243 95 280 56 117 277 121 289 66 184 230 52 148 239 7 83 227 291 121 72 44 119 63 95 1 161 247 125 12 95 146 173 9 220 141 241 243 144 157 53 140 66 86 199 128 227 120 196 301 254 16 106 148 223 55 10 251 186 224 172 301 246 170 142 17 300 182 52 143 38 251 32 2 193 27 104 21 114 199 170 214 189 266 50 222 237 89 300 32 200 34 130 82 65 111 213 98 169 15 3 264 29 222 104 124 298 1 164 147 136 151 296 163 173 187 257 16 130 53 55 125 157 232 303 112 257 106 186 161 61 73 271 210 104 67 180 48 15 179 42 170 286 159 253 71 240 96 67 94 59 227 208 151 28 192 131 155 224 59 157 183 9 164 106 199 74 231 31 119 224 83 30 65 187 257 293 252 52 181 130 159 147 223 220 6 139 138 131 192 179 12 7 74 191 31 236 212 29 57 75 72 36 199 192 168 131 106 59 253 111 202 197 75 133 242 145 302 236 21 45 296 150 81 169 73 239 292 143 136 57 127 111 270 56 173 245 215 222 259 216 2 139 95 213 159 108 166 217 295 241 35 5 244 121 63 134 153 201 181 62 170 286 105 98 135 256 220 214 253 268 110 249 226 243 260 163 71 82 71 57 149 59 90 149 117 235 203 67 39 13 126 133 130 183 104 244 81 43 18 230 293 247 225 226 60 298 149 301 229 103 96 70 70 263 107 177 255 112 122 119 78 111 103 281 64 214 91 77 223 119 164 94 7 61 107 29 290 34 211 95 156 95 100 80 273 73 133 84 284 172 181 20 67 144 303 147 52 147 153 158 131 1 205 52 238 173 131 287 211 69 258 255 76 74 139 126 294 218 53 7 160 115 20 222 254 6 230 122 253 220 162 136 64 149 236 212 66 248 136 278 141 173 239 280 123 113 189 83 279 232 152 284 293 73 252 290 80 53 48 51 109 149 212 194 147 216 38 236 81 191 281 164 23 294 222 84 271 303 122 240 196 159 83 17 172 39 30 172 55 34 14 30 265 91 108 287 182 130 160 283 251 193 241 298 142 121 106 295 271 107 179 16 146 144 40 277 49 274 51 81 225 42 237 183 128 291 239 113 121 170 261 145 213 52 123 12 144 138 109 289 232 253 303 156 168 296 125 126 7 168 269 212 47 276 170 41 8 275 165 189 115 136 85 162 135 236 223 221 218 181 35 25 174 293 178 212 118 243 103 99 146 169 222 63 2 13 105 227 31 5 16 119 137 244 176 209 194 159 131 288 25 194 177 142 286 241 47 149 96 110 18 81 71 291 63 219 210 93 84 295 4 223 292 220 207 255 106 41 84 111 119 38 99 88 58 185 174 299 34 15 290 13 88 207 226 85 256 43 75 116 233 29 198 295 106 80 209 254 163 103 97 280 30 153 53 194 130 17 213 264 53 116 209 17 59 209 293 209 300 4 28 31 44 96 4 21 57 162 30 224 124 132 287 62 50 36 261 83 207 261 34 62 245 146 31 29 233 204 171 173 218 220 272 57 79 154 4 39 74 49 57 176 42 281 1 15 243 75 121 38 25 68 279 77 124 133 143 119 105 170 205 115 70 300 204 69 133 289 87 163 138 72 190 76 96 195 19 258 199 238 34 213 60 116 261 135 188 227 184 96 116 277 287 154 86 25 138 104 292 5 176 178 186 193 228 210 257 107 184 80 69 4 39 7 217 99 202 228 229 262 198 95 211 75 50 55 58 125 29 38 206 254 221 275 264 279 6 240 263 29 191 142 235 192 217 16 147 295 140 299 200 74 301 285 129 152 293 53 300 235 243 64 153 28 269 3 62 148 128 36 252 10 297 89 125 74 301 260 206 9 152 181 296 282 42 61 268 55 210 170 138 202 172 251 109 217 104 27 28 157 79 212 116 99 99 80 54 12 60 72 242 232 55 282 283 245 87 117 166 164 60 15 183 108 286 303 61 66 117 140 184 243 128 291 101 154 223 134 278 268 148 285 123 146 6 66 234 172 190 106 164 177 207 192 236 289 276 13 93 27 40 189 284 223 3 295 27 9 164 3 225 285 8 132 180 226 74 286 132 132 55 67 125 124 178 184 109 190 171 209 266 282 241 218 194 219 7 277 227 304 131 70 66 299 164 224 193 96 6 234 36 141 23 253 37 178 264 75 303 110 13 178 249 293 189 228 82 260 32 205 93 301 117 99 102 60 125 68 75 145 302 162 265 79 124 50 270 274 256 221 198 52 30 269 280 64 131 166 96 35 291 221 205 234 256 130 216 271 54 39 37 262 232 295 109 196 18 250 100 149 304 39 288 230 20 280 140 169 68 71 295 140 162 164 292 12 19 78 47 227 124 232 19 146 110 18 198 146 6 254 280 295 81 33 176 208 227 197 125 173 104 180 34 185 169 148 238 97 192 233 160 153 42 166 229 130 46 294 24 250 166 299 61 45 252 98 180 61 92 260 198 153 223 150 107 183 103 93 274 191 293 244 247 107 125 195 285 219 297 299 75 293 277 97 299 196 52 41 290 228 136 196 133 292 228 232 54 61 225 303 175 123 75 262 231 21 155 90 63 223 103 23 288 105 140 174 91 18 203 124 62 269 15 279 45 90 137 276 5 288 295 20 100 219 260 60 47 28 36 69 203 144 165 39 114 39 152 20 227 31 28 154 90 175 14 17 219 147 129 85 264 245 229 151 175 185 46 231 151 158 294 34 282 237 281 256 45 287 301 290 74 128 169 210 37 78 77 9 145 194 211 19 38 204 5 259 282 169 112 130 93 109 271 50 144 140 25 242 33 7 243 257 79 53 67 248 171 37 205 134 51 286 260 13 124 260 204 173 177 152 16 25 66 44 152 192 270 193 180 156 272 255 64 129 240 214 10 91 96 279 125 109 202 272 87 299 304 260 262 248 160 8 118 149 23 163 129 274 220 148 246 218 228 176 42 88 50 179 89 32 223 297 71 81 120 103 223 246 297 205 176 179 149 5 1 283 243 268 122 145 177 289 272 127 196 115 57 107 141 106 13 72 19 212 13 16 212 249 41 237 198 216 247 157 282 278 121 139 190 24 203 132 82 302 275 7 36 87 201 239 237 172 17 26 243 28 291 117 19 191 263 50 22 116 110 258 102 74 184 29 39 201 15 209 193 96 216 91 195 235 37 102 66 24 39 94 198 188 276 40 115 304 14 276 60 27 139 287 169 241 29 239 142 31 13 11 187 286 155 272 280 50 138 169 290 196 92 86 70 302 148 223 178 254 185 278 26 303 134 82 240 81 267 141 45 204 28 34 182 299 222 214 25 273 263 154 2 280 128 43 160 229 120 41 51 108 165 91 177 28 19 21 136 209 228 270 175 258 295 174 72 283 156 43 284 195 106 49 279 112 125 190 225 85 81 36 121 48 116 24 92 119 33 149 160 211 170 224 252 65 242 4 177 52 91 49 220 54 28 289 187 69 232 8 28 47 66 100 225 169 275 97 146 190 200 271 207 140 205 221 33 140 36 243 267 207 123 105 269 149 265 73 263 24 123 175 191 93 253 200 100 250 142 28 79 164 262 160 34 194 190 181 77 232 67 206 21 304 118 198 182 181 79 107 141 123 149 16 240 96 262 41 283 84 45 230 280 282 280 114 34 76 50 190 221 191 275 273 43 73 142 59 262 50 140 163 303 67 69 117 272 109 122 83 162 59 85 45 60 259 161 213 286 220 50 141 80 185 200 43 223 29 197 242 43 270 134 190 132 154 204 12 221 127 8 209 147 237 203 208 12 63 221 279 66 297 36 277 229 72 102 170 282 284 93 21 234 128 74 153 80 112 208 160 247 228 292 266 267 141 204 219 12 33 174 206 50 145 223 222 267 41 12 245 297 38 300 183 22 289 31 166 1 104 11 289 57 64 39 178 227 282 61 267 219 266 264 99 33 295 199 132 156 204 230 117 163 290 290 214 259 300 98 72 296 111 80 55 144 270 14 35 59 34 259 48 168 117 271 192 242 64 25 17 175 127 83 265 78 134 111 211 208 285 282 98 234 219 188 54 77 205 277 123 48 39 46 58 107 92 165 66 102 154 148 42 36 65 25 124 20 132 90 13 60 187 276 57 1 186 126 9 155 259 78 214 289 143 33 159 220 58 213 201 65 108 37 72 47 106 287 91 194 291 210 182 4 121 298 260 12 60 223 8 139 13 281 77 259 34 238 81 127 160 157 281 283 154 9 295 112 18 104 121 47 55 49 57 171 175 234 235 216 231 75 35 17 180 139 37 213 260 57 4 243 76 173 6 93 189 204 167 68 174 125 110 85 42 234 91 116 50 257 134 24 150 229 9 9 152 255 76 288 215 249 60 16 249 302 58 287 223 288 33 71 302 255 250 36 291 292 143 149 112 196 218 90 208 114 192 264 44 210 291 264 253 199 198 14 119 183 279 7 200 122 194 212 178 60 92 163 302 141 11 106 127 195 150 257 186 47 142 285 262 70 268 172 65 23 142 145 178 233 118 240 173 238 143 297 123 287 184 85 132 7 51 269 206 115 32 136 111 155 128 238 181 82 296 249 138 85 42 252 271 90 250 76 36 286 23 244 188 2 290 16 32 12 250 130 73 300 40 83 255 181 258 46 301 266 12 54 29 115 222 44 214 271 181 259 190 124 187 32 235 104 52 228 217 278 219 226 81 19 298 92 275 187 52 121 220 275 122 183 161 275 222 162 6 122 83 9 176 199 216 45 162 196 180 111 74 264 232 79 80 161 95 235 202 194 141 295 36 110 196 179 205 269 111 223 195 53 252 29 173 40 86 225 301 215 235 49 128 162 67 232 17 209 83 43 65 79 271 102 57 297 72 31 130 208 278 1 36 261 291 34 1 191 299 208 218 168 102 184 139 98 118 224 88 208 39 17 296 39 288 282 296 128 185 212 111 163 239 151 192 276 54 154 135 198 220 85 224 55 189 17 215 94 243 147 74 191 83 223 84 52 132 246 164 104 50 158 262 249 142 9 178 35 149 256 276 158 218 203 202 249 54 71 265 149 211 163 131 78 148 200 137 257 240 1 270 123 286 107 1 98 247 275 283 141 77 67 11 21 225 301 303 167 76 77 147 294 99 156 231 176 21 169 89 176 249 149 187 191 197 246 140 124 79 274 272 253 67 269 253 115 15 301 165 17 153 141 20 208 23 178 280 12 298 177 178 297 260 248 48 57 268 167 117 9 252 51 286 42 59 300 35 179 115 143 233 172 17 143 22 221 298 67 66 131 7 278 128 127 262 55 294 124 44 5 285 30 238 98 153 86 100 183 285 206 304 46 258 46 266 113 161 116 273 20 76 67 181 118 288 30 12 35 21 18 235 157 169 17 72 276 141 263 273 175 42 64 229 208 292 139 9 58 153 266 168 226 223 206 87 271 260 258 185 219 151 77 34 76 108 204 120 108 126 285 145 4 233 222 169 9 294 20 140 238 171 2 156 132 153 166 8 276 191 221 41 251 180 155 172 220 178 101 164 152 7 166 33 104 220 85 272 263 87 83 23 96 285 304 282 293 139 159 53 269 91 48 258 126 55 27 242 26 40 303 219 70 134 126 46 200 30 86 248 133 226 300 21 105 198 18 63 298 257 276 37 264 287 278 155 220 7 121 279 196 169 48 47 245 125 225 256 213 79 195 43 286 133 140 202 197 76 154 236 255 244 181 84 264 276 29 183 263 10 153 296 147 4 83 99 168 136 270 262 248 188 229 126 294 218 186 236 30 167 28 174 101 271 284 274 44 196 100 272 199 286 40 110 22 257 178 5 197 265 258 291 244 31 238 260 253 178 156 117 52 293 204 209 18 83 267 19 270 99 275 208 272 296 267 54 256 144 24 101 67 157 46 284 260 198 14 127 224 202 117 291 7 215 40 224 254 165 143 159 54 226 24 288 61 209 65 266 274 38 177 286 286 172 137 173 29 301 168 64 56 230 160 120 128 214 26 36 161 210 138 16 284 243 155 78 89 148 133 62 46 214 52 181 141 214 18 67 72 276 195 172 78 273 270 238 24 149 89 133 168 75 170 286 107 42 170 38 74 147 85 193 273 6 29 85 255 281 194 219 77 19 12 279 162 84 69 235 112 170 40 302 272 227 156 168 146 193 81 161 52 15 184 205 28 81 62 234 109 171 238 57 96 152 31 200 18 301 37 181 224 229 161 118 128 2 273 216 11 119 175 67 244 105 28 98 143 156 75 26 191 281 236 298 263 165 188 41 249 44 32 25 26 153 37 302 290 113 76 173 9 15 70 19 203 10 217 21 48 130 198 120 82 298 245 83 56 84 6 263 264 40 281 159 165 267 9 266 54 176 265 37 34 254 204 151 215 139 56 102 68 226 144 32 188 115 287 202 261 164 53 94 44 108 270 129 47 145 267 233 104 71 288 180 44 235 249 23 77 192 29 229 33 287 101 114 235 290 284 165 260 134 139 36 22 116 108 204 194 173 242 214 234 199 296 46 154 50 73 95 160 279 181 114 146 24 170 15 95 37 205 6 266 273 253 265 172 299 256 302 53 58 109 250 255 142 36 147 54 62 301 52 160 297 128 122 62 99 136 258 94 33 93 7 249 272 168 35 246 133 299 50 164 274 17 197 182 58 195 190 274 273 241 182 84 209 304 258 216 231 97 276 60 181 142 112 276 133 168 266 98 58 261 165 21 184 98 155 55 288 190 297 147 267 137 209 80 117 235 137 112 251 188 180 141 266 140 123 253 219 59 268 100 172 292 194 9 290 32 209 302 156 295 294 222 94 118 304 273 239 178 122 215 227 274 87 246 79 252 23 226 222 272 77 287 274 123 154 40 172 133 163 116 207 243 180 117 300 285 189 67 265 263 229 45 60 260 60 119 282 128 233 239 106 51 298 209 286 129 193 206 135 216 174 269 166 95 237 257 260 226 304 88 71 148 15 89 268 37 98 203 163 239 261 292 149 167 161 182 30 171 229 163 182 149 82 204 224 264 218 7 270 26 169 230 13 45 142 238 161 102 198 261 117 233 160 3 109 232 155 26 277 58 107 69 301 247 208 238 299 211 13 178 27 178 33 292 150 234 200 17 66 166 46 186 128 293 270 196 68 50 169 78 121 121 261 27 135 67 304 203 252 77 265 199 255 256 172 163 243 11 211 220 288 80 264 224 128 176 191 80 129 93 85 83 128 178 220 64 179 120 184 38 65 220 69 119 194 147 239 274 60 263 100 36 140 44 31 97 266 15 46 239 103 186 239 206 139 57 5 101 153 12 295 201 291 5 9 121 9 44 265 200 131 205 179 45 158 73 90 185 152 50 93 247 149 9 108 64 113 34 121 291 219 181 163 42 105 171 194 154 163 22 10 244 110 274 240 232 214 150 200 251 248 148 147 201 183 298 92 86 101 71 272 263 22 131 127 255 222 115 235 187 46 193 122 148 229 76 98 111 205 301 123 182 43 266 4 151 203 188 47 183 152 98 130 295 129 183 102 35 19 76 238 238 108 276 214 120 156 125 49 173 40 254 124 196 102 167 245 9 261 142 262 53 72 231 107 244 231 67 182 293 257 173 20 163 253 173 240 300 170 118 52 73 219 163 4 203 214 101 293 294 61 195 46 83 41 66 280 239 199 179 4 118 161 113 10 63 107 284 253 162 117 162 256 192 281 286 244 221 108 185 262 17 282 98 111 256 249 100 276 73 303 235 129 303 229 237 111 129 24 10 22 193 158 137 102 257 129 6 232 31 38 302 265 20 40 200 118 176 106 212 48 110 53 17 52 233 125 159 150 221 52 275 70 249 208 294 155 21 115 282 244 226 225 3 32 86 91 4 115 225 12 219 30 199 165 85 120 124 297 232 240 100 12 51 231 125 278 294 157 201 113 31 292 43 102 13 58 195 73 122 288 273 5 285 188 56 48 163 270 107 239 9 129 245 208 225 133 259 165 75 273 140 211 182 53 277 134 219 112 32 229 240 208 245 21 38 203 65 235 167 246 36 280 110 154 111 29 65 260 195 195 3 24 49 196 39 50 13 232 77 46 39 151 107 22 254 192 296 175 255 11 55 302 102 15 211 114 213 113 95 303 159 54 45 220 63 257 118 135 174 279 37 228 126 63 112 102 58 218 276 183 31 140 1 35 218 176 298 96 230 164 178 231 42 126 263 217 180 242 105 12 68 171 121 294 174 188 141 92 298 199 226 149 96 251 204 253 61 253 170 179 234 56 126 213 265 11 124 285 136 287 212 158 258 34 71 63 139 108 175 248 96 175 6 40 83 27 122 101 13 227 234 30 86 29 292 24 147 215 301 300 44 10 274 135 103 81 270 295 109 24 54 91 84 156 42 76 278 200 58 224 267 4 286 86 239 71 115 278 188 296 118 263 48 273 251 121 66 239 27 123 80 109 169 138 257 300 178 45 98 110 92 134 156 100 291 105 284 158 100 219 200 174 42 155 58 92 285 83 86 153 146 60 18 83 171 22 56 14 206 235 94 50 186 212 264 254 32 120 59 160 275 241 21 64 176 119 287 239 150 300 192 161 16 298 100 248 169 17 251 5 159 54 11 39 130 236 262 168 235 300 139 113 57 109 199 219 262 54 194 232 181 4 80 240 197 214 132 219 238 176 253 232 286 16 254 59 122 14 41 294 14 92 74 243 73 255 97 9 142 25 201 136 267 32 287 41 251 265 185 78 73 103 228 212 282 223 168 262 61 265 82 193 241 180 48 121 18 295 194 123 76 269 22 252 176 73 200 186 47 293 49 283 69 298 254 192 161 44 257 218 24 75 84 196 216 177 27 187 124 64 153 184 133 44 88 84 222 112 142 230 283 268 57 132 271 267 222 283 86 84 167 294 272 137 207 119 114 40 75 31 97 153 19 138 301 284 107 283 65 183 175 51 97 246 5 253 162 236 304 33 170 147 135 137 220 136 179 171 265 260 169 304 132 89 151 27 120 163 24 139 101 50 248 216 132 34 66 195 274 27 284 205 10 148 278 14 231 85 95 245 204 261 24 240 47 147 56 7 204 66 199 80 8 11 20 8 178 272 33 10 87 24 122 55 30 59 13 33 248 298 230 281 258 187 205 15 42 251 76 1 83 80 159 272 145 5 62 302 148 283 104 182 51 4 58 203 110 127 44 137 75 173 213 31 5 212 175 26 84 35 141 188 88 76 186 147 24 118 45 26 43 72 107 289 105 239 247 297 212 106 157 182 10 292 236 7 111 146 83 109 129 260 145 189 49 163 229 220 289 152 173 45 22 154 109 270 264 170 296 1 243 71 22 155 2 284 234 241 304 33 294 256 117 254 296 204 1 254 216 268 113 211 95 134 5 74 263 262 245 209 189 24 152 147 275 77 192 167 160 59 234 124 69 130 260 177 182 77 14 23 19 115 36 139 46 196 6 154 123 110 304 123 145 184 102 221 251 67 106 9 27 35 222 233 237 117 233 256 48 146 253 216 89 263 284 26 222 90 180 26 265 279 278 13 148 185 143 202 14 180 288 216 95 76 181 6 147 189 211 287 189 75 281 136 120 57 245 272 152 254 28 202 253 117 300 112 55 171 198 172 153 43 72 195 40 19 235 9 149 172 187 275 277 119 108 286 165 290 215 11 174 300 57 226 117 220 255 103 81 13 105 291 32 30 19 141 255 74 198 44 40 219 59 259 291 64 70 270 176 205 73 102 97 127 247 157 145 237 90 181 83 83 197 251 52 21 248 212 101 90 208 141 52 185 61 203 24 175 176 54 29 260 125 252 131 120 272 234 108 260 96 93 49 265 159 122 228 178 124 4 287 209 100 84 162 36 202 193 209 18 222 233 133 24 54 68 217 261 108 23 304 162 151 259 75 233 302 299 126 208 134 223 219 290 303 57 224 195 36 73 261 84 85 226 39 32 207 265 23 141 201 186 138 172 110 86 261 227 189 200 188 9 261 152 37 214 188 267 128 112 294 74 175 300 180 205 271 59 248 262 251 254 81 159 107 109 194 85 285 184 242 183 187 166 259 253 2 258 42 126 168 18 85 112 1 227 53 210 90 121 177 36 15 93 142 43 58 126 168 56 9 245 150 169 196 105 279 46 44 43 144 229 158 246 259 181 178 136 293 99 42 173 251 121 153 36 267 201 278 56 250 176 42 259 142 62 25 37 13 116 219 280 201 142 4 28 38 213 54 224 190 273 299 246 52 3 125 176 28 243 229 287 111 243 52 295 10 22 25 93 234 3 187 73 212 79 284 143 296 236 24 291 64 189 195 3 34 251 70 302 51 265 81 256 38 72 159 138 78 139 219 104 109 90 11 234 275 37 259 125 59 132 63 225 131 66 264 297 82 295 227 255 93 224 200 243 242 291 188 49 62 121 200 278 186 48 238 228 247 278 299 116 280 244 301 201 257 194 281 131 241 303 153 67 260 233 156 198 185 48 242 288 43 94 3 181 50 29 133 217 130 127 174 137 147 197 85 74 223 212 54 227 47 281 97 122 251 177 294 84 208 132 181 208 92 241 95 126 85 77 235 233 246 140 158 124 230 79 103 141 37 106 126 113 166 76 72 3 151 283 121 278 264 215 240 98 129 249 70 251 138 174 192 94 126 31 160 221 125 40 221 98 27 284 59 164 115 105 179 220 78 229 165 293 226 284 270 299 69 181 242 264 34 236 129 176 57 228 223 111 262 287 202 24 190 101 98 122 69 101 176 88 95 298 38 98 3 61 61 263 107 184 144 294 286 19 60 225 200 204 94 231 72 89 264 205 89 170 125 182 263 52 29 164 21 191 273 96 42 36 100 2 292 285 44 61 42 16 188 242 274 181 214 151 150 107 53 63 52 6 24 161 202 52 224 29 33 64 201 79 110 135 84 198 19 279 27 299 232 295 198 192 183 148 229 84 157 76 228 120 155 238 60 181 7 41 93 65 40 266 176 65 131 297 227 32 174 71 214 182 114 37 100 99 287 216 190 100 100 154 220 56 44 233 228 142 12 93 163 221 103 142 277 109 180 294 145 71 42 83 300 72 123 226 77 299 56 140 304 36 264 131 137 187 131 69 295 234 150 298 63 167 170 6 86 228 285 92 59 197 186 298 8 52 202 45 57 210 163 240 12 220 68 236 248 276 18 4 300 96 65 260 216 170 92 23 63 148 185 263 108 286 227 124 256 230 194 206 75 299 13 61 283 67 71 250 239 271 110 46 34 275 184 12 228 69 279 113 175 225 87 67 263 84 23 275 197 157 11 113 113 62 5 220 71 26 122 189 130 255 200 139 192 193 55 301 199 132 256 301 72 208 277 94 183 259 103 11 27 246 191 36 74 51 139 194 206 211 192 59 182 158 189 89 193 218 287 166 130 19 200 17 278 50 95 18 49 166 94 94 44 29 279 75 93 256 291 290 86 72 295 118 248 146 51 146 233 168 146 21 223 81 192 199 164 260 78 152 76 11 62 291 222 194 11 18 223 2 77 266 84 201 268 95 140 208 5 248 263 222 239 250 1 214 107 269 114 119 246 188 269 38 12 52 56 152 280 254 77 280 228 210 138 119 99 122 180 7 44 146 298 104 5 68 132 296 45 270 228 24 11 228 230 101 129 152 68 75 300 120 249 286 245 210 156 176 165 172 49 66 202 158 224 268 15 242 172 145 125 62 13 125 278 242 23 2 52 7 74 254 253 279 178 100 196 151 179 38 156 98 125 13 243 132 228 176 139 47 48 61 74 184 261 61 3 235 57 162 91 184 265 157 264 213 139 300 240 304 34 225 208 134 90 252 268 205 51 179 38 193 255 95 231 64 88 12 175 230 50 63 147 204 57 168 166 150 28 104 195 228 74 107 121 62 34 182 255 227 165 95 272 1 23 58 96 270 160 59 217 271 243 156 161 220 202 283 114 64 82 194 41 72 300 1 27 237 41 83 170 99 46 301 111 123 181 289 92 185 273 231 74 234 76 120 23 112 210 136 160 135 281 54 176 42 143 24 287 32 68 270 158 255 128 280 39 278 200 96 300 58 171 211 87 167 132 176 298 18 99 27 13 88 204 8 147 129 95 113 36 38 257 164 79 159 45 109 158 155 169 239 122 25 7 124 121 93 58 161 220 247 183 181 130 81 100 295 132 211 144 186 20 84 199 226 85 43 98 3 266 17 43 186 29 230 116 193 300 212 43 229 81 192 96 233 133 180 215 20 281 221 62 198 185 3 50 68 38 235 224 13 266 146 125 100 225 7 73 107 12 190 280 277 149 240 189 37 33 276 153 232 147 269 63 168 24 140 68 245 74 225 190 237 129 141 197 275 205 167 165 197 69 268 248 75 295 150 123 191 229 27 28 71 274 94 10 156 287 279 41 67 175 253 211 270 220 202 304 227 80 43 244 131 268 179 212 289 182 215 282 99 9 26 171 190 36 212 238 32 75 171 78 89 11 254 165 283 176 25 5 19 30 183 76 67 54 140 41 214 41 146 49 147 270 55 286 126 169 112 75 246 273 83 293 81 163 258 279 33 55 171 237 101 269 132 225 276 89 105 57 167 98 54 276 38 170 33 106 290 76 26 81 230 45 137 22 104 129 160 69 22 248 100 298 266 303 218 147 184 260 85 23 156 225 239 150 204 261 279 75 263 221 184 115 233 258 209 209 127 207 111 195 33 182 298 186 275 90 105 212 208 303 296 15 203 287 118 236 121 60 297 170 191 289 206 117 268 193 163 296 291 304 106 219 246 274 273 128 31 158 181 143 130 30 227 153 220 70 139 35 55 67 257 229 95 150 290 262 62 137 60 42 295 186 262 272 294 275 247 293 56 238 202 258 160 96 26 12 35 183 118 69 164 288 252 41 85 240 171 32 191 53 112 212 247 92 124 184 240 38 72 63 45 293 210 41 120 288 162 141 217 156 294 194 129 274 280 23 259 223 67 180 142 212 176 286 54 209 138 155 258 204 45 64 148 256 25 45 242 61 79 286 15 266 62 179 242 224 52 34 26 113 158 228 34 239 52 186 59 136 149 234 40 264 139 157 8 7 260 93 76 179 101 246 304 20 25 272 107 158 2 258 283 52 225 83 235 171 210 55 277 237 299 258 229 222 177 165 230 263 11 32 177 76 186 82 64 28 194 218 225 105 112 31 91 276 247 26 256 216 94 78 205 151 234 262 181 193 295 278 255 207 147 100 157 44 154 279 173 122 223 198 71 82 286 127 40 109 285 104 98 231 288 212 1 188 39 142 92 96 50 244 155 236 296 27 193 204 297 49 145 20 90 277 251 275 86 32 264 11 153 205 151 150 267 119 225 123 76 201 166 31 209 245 26 300 62 88 64 7 102 99 125 151 216 255 237 17 68 113 182 92 192 123 232 75 185 189 38 88 38 107 239 195 177 29 253 118 173 114 117 242 206 157 46 266 302 221 188 166 113 111 233 66 78 74 105 65 119 3 221 2 74 301 64 231 128 66 129 220 135 57 136 23 86 62 31 242 144 9 152 205 282 55 72 134 230 58 222 23 139 189 214 212 28 23 143 156 276 267 237 11 40 231 269 60 30 200 246 126 294 261 164 96 123 100 190 106 50 292 257 117 172 161 288 220 2 109 197 30 77 47 280 24 35 93 80 208 17 144 9 232 163 87 90 59 208 61 91 17 26 299 64 8 262 99 32 168 137 29 125 167 143 272 268 141 255 153 297 40 251 225 86 60 196 88 24 1 235 58 232 213 73 234 173 266 123 138 189 11 252 113 231 11 265 186 71 27 139 79 95 58 145 28 223 173 282 94 193 214 34 47 249 115 172 270 115 102 162 171 35 230 133 209 41 240 30 47 190 270 186 186 184 248 226 61 203 89 179 297 299 209 194 279 240 220 52 280 280 47 16 65 120 61 190 259 244 63 240 30 217 118 304 171 125 285 196 188 269 140 35 294 265 62 303 143 252 244 45 92 38 7 120 196 126 267 241 194 194 83 281 272 165 8 178 170 189 145 266 150 255 104 106 227 13 26 217 4 136 271 204 111 257 145 227 21 138 167 30 36 200 52 61 242 137 103 13 273 120 287 248 61 253 108 69 297 27 185 56 59 111 33 50 9 225 142 109 62 238 236 213 220 141 83 126 212 2 177 190 1 163 214 11 66 144 185 160 197 284 110 5 55 57 53 28 276 260 57 229 5 293 50 150 68 31 83 190 245 177 144 240 101 110 296 232 182 28 5 56 272 168 154 278 176 75 283 194 276 45 106 133 217 136 42 205 292 4 127 81 34 148 257 101 203 257 207 158 130 56 102 2 138 39 180 250 215 85 82 163 131 38 189 283 60 64 79 107 304 298 29 58 192 48 33 209 270 275 16 283 284 131 221 264 94 200 196 40 242 7 80 96 57 79 74 238 260 93 131 180 43 181 16 264 297 151 97 151 27 134 59 137 14 235 207 34 284 201 113 190 44 28 42 101 4 270 33 178 111 303 265 295 47 163 11 170 48 249 36 37 15 207 221 141 270 97 254 289 238 99 290 62 96 206 219 301 128 139 23 29 239 289 52 53 235 130 200 114 41 182 231 172 284 254 32 68 241 33 259 132 108 264 13 16 243 112 171 18 18 104 47 220 141 269 83 91 127 117 51 52 234 267 246 76 302 166 116 107 84 35 124 261 37 33 137 154 150 285 262 261 144 219 208 1 53 302 186 124 176 258 19 95 122 283 91 65 215 181 170 262 236 268 19 259 283 79 286 210 59 38 230 238 125 266 284 36 214 244 194 270 7 175 282 114 283 27 168 173 144 235 37 208 304 292 167 182 52 273 120 265 285 293 287 85 214 103 46 165 219 108 113 126 222 208 22 53 151 217 24 178 116 11 137 50 75 22 283 157 92 48 28 95 27 6 214 122 268 36 202 59 62 298 12 227 179 278 201 157 19 291 156 287 114 256 238 222 79 138 143 174 285 173 84 261 63 199 212 26 197 301 263 159 115 126 184 4 9 269 254 141 15 218 255 128 126 297 82 57 51 185 215 134 294 289 244 103 6 41 89 203 18 150 134 262 274 21 239 261 62 138 82 262 174 219 221 117 120 185 138 287 121 188 158 210 125 119 168 240 44 292 98 3 89 200 109 196 219 9 303 166 199 103 98 61 171 69 292 280 281 172 267 288 212 261 278 273 109 144 267 227 1 204 290 290 54 80 181 98 139 223 287 59 159 230 257 246 253 73 298 167 228 82 196 151 128 259 272 94 191 203 245 94 96 61 97 165 117 84 17 66 148 263 231 16 300 276 264 75 252 219 66 18 192 257 246 264 92 22 260 111 176 229 18 228 245 17 9 54 200 270 267 47 60 191 173 42 249 101 154 274 30 304 42 166 94 140 100 228 299 104 243 112 302 145 239 163 60 296 169 165 292 137 258 50 217 132 2 84 136 30 226 192 137 214 58 264 28 75 263 23 214 140 232 148 151 226 62 253 261 162 297 156 3 94 91 280 49 88 301 94 179 217 25 259 107 64 137 156 133 272 190 300 215 225 183 204 98 108 219 22 260 135 209 47 27 109 107 226 125 302 192 4 260 162 51 201 119 98 275 290 180 97 168 89 86 271 35 304 280 165 70 243 85 283 236 71 110 6 152 146 19 286 63 246 199 225 130 303 185 48 65 291 8 175 199 51 219 291 100 28 104 13 31 222 275 27 29 133 109 294 80 176 122 146 82 55 69 112 221 56 5 259 233 196 67 173 137 54 31 182 271 229 29 18 74 185 61 299 28 164 160 61 187 79 85 271 157 186 115 237 236 243 98 299 63 284 7 35 225 304 97 63 75 270 112 252 259 71 134 171 279 80 152 221 172 286 99 299 60 56 258 117 271 15 158 136 6 84 215 120 176 15 25 226 258 5 285 280 147 16 117 274 39 284 196 289 201 25 248 266 66 167 73 176 82 92 29 275 243 38 275 75 194 81 204 130 29 277 105 251 135 134 94 80 261 21 268 284 198 175 52 279 267 123 143 220 114 216 59 184 160 296 277 143 303 72 237 246 269 97 275 193 218 41 119 85 217 284 301 240 278 243 185 120 87 207 76 245 99 195 260 120 90 248 91 42 180 41 86 34 127 183 50 44 10 41 245 62 89 298 187 116 143 144 301 149 97 170 109 232 278 82 9 154 253 230 17 71 267 54 156 33 164 111 29 277 302 172 220 220 169 104 41 61 30 46 277 183 207 4 194 269 71 54 198 253 94 152 16 210 114 282 131 60 88 2 268 239 164 209 299 249 258 170 120 96 290 34 38 128 287 81 291 87 154 193 24 114 28 38 126 181 17 67 138 291 81 187 289 148 169 17 48 46 210 123 136 212 125 144 222 240 121 302 235 206 233 131 233 258 52 197 245 125 137 299 68 137 265 132 31 187 54 263 207 201 104 241 241 246 82 9 51 261 200 290 74 73 132 97 183 270 3 220 57 245 138 43 85 43 298 53 179 271 5 72 262 212 159 35 271 241 52 182 121 226 103 238 122 176 102 271 192 3 223 261 54 212 81 119 196 95 236 254 105 192 7 25 254 71 224 293 47 52 51 71 55 42 132 96 68 29 275 36 171 289 281 118 167 194 113 108 44 201 7 59 247 240 131 104 259 47 222 281 286 263 111 93 73 187 256 237 284 260 199 218 240 125 229 225 221 1 115 289 260 13 111 83 274 264 216 196 30 237 242 194 72 50 118 46 137 133 148 190 99 53 282 253 12 148 160 158 143 6 61 256 91 30 7 60 79 140 264 242 299 219 158 183 184 174 17 87 201 137 3 202 246 265 295 101 135 17 7 74 86 100 143 176 194 278 23 165 149 46 97 76 84 145 248 157 100 209 257 251 57 185 116 160 277 84 207 115 39 79 112 26 51 42 163 260 127 235 240 255 186 30 44 37 10 104 199 140 102 227 210 65 197 286 122 192 170 143 276 188 27 245 4 25 220 55 129 179 149 158 210 273 107 249 38 24 34 59 220 101 18 10 189 267 222 183 185 193 127 17 144 1 175 109 133 148 245 254 38 70 218 281 48 162 186 213 98 241 188 280 91 210 137 40 136 58 24 77 183 152 59 160 159 141 206 225 68 140 167 181 247 94 302 84 90 224 67 269 212 136 272 191 290 257 229 78 128 54 95 13 96 72 138 65 78 226 237 89 181 295 219 235 16 85 31 24 53 151 232 70 240 123 53 70 282 29 62 167 7 45 26 167 33 118 289 107 183 222 1 66 148 146 42 184 189 46 209 89 107 27 61 183 304 8 294 69 25 64 291 190 227 32 197 230 187 9 110 183 240 215 46 82 75 174 55 299 281 122 159 286 50 271 230 108 172 2 54 228 265 278 249 268 201 212 58 25 255 205 16 205 52 288 247 97 223 232 55 237 65 235 198 150 227 124 173 68 243 253 8 302 123 100 73 121 45 273 205 181 15 21 182 183 28 184 212 65 158 38 115 112 25 7 3 219 229 6 156 228 73 2 138 233 218 10 38 215 152 117 203 234 98 112 238 181 69 50 129 74 224 93 153 192 171 127 23 239 51 188 227 42 290 16 4 276 183 69 73 66 123 286 97 248 11 148 227 160 113 53 94 191 125 53 69 175 45 279 266 17 81 75 235 63 303 8 236 146 67 213 211 77 253 223 232 100 82 215 128 279 101 248 277 133 118 220 147 259 285 151 204 280 61 105 129 239 79 215 139 210 303 196 209 286 37 200 296 263 186 136 238 68 227 168 233 112 263 121 237 291 86 78 87 6 222 186 70 154 276 91 218 61 287 100 192 88 88 243 168 22 141 101 62 304 144 286 23 82 65 243 241 168 248 216 102 118 229 159 115 234 242 194 237 92 137 29 186 182 107 269 25 30 252 63 237 240 210 197 121 77 132 265 266 272 202 163 235 4 206 221 17 150 53 289 169 162 111 124 248 297 42 274 175 79 149 146 149 86 197 298 186 198 102 261 216 215 88 172 44 72 223 112 57 273 81 67 11 17 179 181 192 97 50 213 103 48 239 271 232 144 304 111 234 2 220 96 195 183 276 298 224 181 190 38 30 288 48 300 250 157 267 234 228 217 95 86 141 245 186 46 304 223 237 302 56 249 24 187 270 254 29 205 216 201 249 48 47 14 131 295 136 41 180 3 219 142 256 175 99 147 228 280 198 101 204 219 179 286 242 40 14 11 139 64 86 60 285 150 1 230 216 211 35 193 222 237 62 105 299 142 263 192 270 48 258 116 222 208 173 225 271 17 120 243 54 289 95 254 283 263 190 183 116 47 139 49 11 239 165 136 25 53 160 51 145 22 79 16 172 223 157 31 135 171 236 168 66 175 21 232 235 211 252 119 182 113 113 58 177 109 272 109 214 13 282 245 104 285 4 31 219 25 300 14 299 157 118 275 131 31 124 15 124 183 288 125 287 41 105 288 71 62 92 51 84 214 125 112 27 173 188 272 165 102 115 213 227 101 50 62 162 60 185 304 90 296 57 40 144 98 179 123 269 262 132 283 195 272 1 193 70 301 124 126 266 152 226 60 244 298 108 215 285 304 99 279 259 212 301 13 6 285 237 230 140 247 47 112 155 7 289 136 194 45 106 208 146 72 4 215 276 11 285 84 270 23 30 182 171 269 165 159 32 286 111 127 53 45 7 20 74 290 302 7 280 242 210 192 262 56 120 267 147 154 170 201 20 24 170 224 84 6 175 11 115 251 58 289 6 18 232 277 76 177 236 161 63 148 131 123 148 19 200 254 241 20 135 200 281 190 236 79 100 77 157 226 133 130 134 256 183 22 239 107 160 172 264 300 247 100 238 76 106 242 288 198 175 203 57 223 82 204 120 33 85 158 218 232 150 124 69 296 237 83 290 266 91 71 34 272 213 216 44 125 42 41 164 122 224 241 60 146 90 274 89 253 9 44 182 75 144 7 157 239 36 164 213 295 132 149 245 33 280 299 43 29 84 146 64 291 125 242 200 13 152 229 45 172 131 212 135 183 296 229 52 299 85 86 272 144 93 154 91 139 26 160 292 257 127 74 68 80 208 161 203 110 215 177 176 256 150 90 92 164 52 180 56 158 292 263 285 2 157 74 167 78 144 242 135 200 135 52 283 242 193 130 72 221 271 174 293 19 47 219 73 6 17 264 18 243 103 255 171 26 30 221 180 297 253 142 55 141 131 54 303 119 91 27 251 66 283 68 208 254 180 56 27 180 248 180 23 276 218 121 143 29 39 215 165 41 230 68 61 276 168 273 258 71 236 289 204 213 2 153 281 72 216 214 290 79 169 271 71 245 76 206 19 84 48 135 297 176 118 265 271 20 102 93 125 224 177 132 44 60 227 12 212 299 294 200 129 174 300 271 54 5 254 214 133 263 259 261 285 215 87 187 103 243 278 192 106 52 43 284 158 117 139 274 82 293 141 61 208 115 246 155 197 161 29 164 216 250 180 153 158 240 201 71 101 78 188 142 179 129 230 203 11 220 286 175 215 227 24 292 187 165 258 76 90 275 34 11 76 201 137 64 233 202 175 176 32 207 163 287 167 150 184 159 136 201 274 42 19 300 284 135 46 242 291 59 166 218 6 42 166 40 44 265 33 247 150 254 152 97 25 99 106 105 134 7 27 168 263 188 23 270 46 281 111 201 4 181 200 160 245 5 58 272 196 16 38 234 105 239 122 151 107 96 93 159 246 65 276 182 198 261 59 300 99 67 268 92 238 230 242 279 142 232 241 275 83 248 97 274 195 180 293 225 201 78 236 289 85 176 286 247 56 72 148 5 241 77 283 243 192 88 161 51 26 150 232 159 198 3 183 58 221 210 222 110 11 51 96 271 25 180 4 290 300 84 26 29 249 214 167 46 84 152 178 31 221 244 134 214 144 141 9 202 38 228 164 303 218 199 108 146 155 189 119 302 271 227 53 116 211 234 277 123 161 121 191 151 27 241 30 163 221 67 216 6 136 10 80 304 259 268 26 148 242 62 14 198 158 229 149 64 303 189 160 189 29 278 22 149 131 171 244 199 234 61 277 144 16 181 138 224 172 176 262 190 2 174 120 75 114 269 205 180 266 26 64 179 80 6 293 99 134 265 149 115 19 82 277 12 148 168 182 26 224 139 155 294 295 220 149 203 101 297 132 32 254 81 141 209 170 177 219 144 136 98 100 34 117 257 46 74 28 8 170 255 240 15 136 82 136 115 261 82 61 116 172 251 168 298 32 215 246 145 299 217 146 7 182 139 232 29 4 38 146 214 66 233 241 150 303 247 226 276 35 253 224 262 241 18 217 63 139 302 119 253 151 246 78 133 229 68 14 32 231 21 264 56 77 266 63 283 95 289 122 240 171 57 143 264 198 302 261 192 8 94 120 238 234 267 249 85 182 170 296 288 23 223 229 160 287 127 219 9 156 17 173 153 143 53 204 167 64 201 7 85 56 14 136 217 170 217 142 175 138 239 290 255 142 233 107 135 280 252 35 239 1 17 268 124 59 25 39 123 147 57 135 283 21 63 97 173 50 109 115 232 285 126 35 148 116 5 120 130 50 106 37 110 217 81 261 266 287 92 172 209 212 59 21 37 241 212 102 261 182 292 87 302 15 201 251 297 32 285 235 67 190 79 164 173 94 263 216 276 173 106 162 191 90 185 132 164 72 5 75 297 214 96 77 172 104 254 119 271 273 207 227 210 31 256 265 283 124 73 183 171 204 7 62 293 208 274 96 225 18 296 8 37 218 192 244 40 117 208 168 75 132 141 19 210 186 208 157 137 35 140 173 278 180 246 192 146 76 276 170 115 47 24 266 151 150 274 226 52 283 296 226 109 300 140 22 57 184 118 262 137 118 217 32 143 269 52 116 290 131 265 174 270 249 149 296 96 200 256 288 114 5 241 48 280 124 257 59 93 179 204 244 226 16 88 231 171 135 251 178 130 103 302 255 289 58 217 293 2 73 77 174 14 162 273 170 9 171 114 54 212 133 250 10 96 174 4 302 71 77 222 104 248 44 221 172 22 290 39 120 48 224 198 277 274 140 133 152 20 135 15 42 185 1 294 286 124 286 136 178 223 203 129 116 106 298 103 73 62 277 290 247 36 129 175 175 142 155 44 289 251 71 169 138 195 68 178 21 101 58 288 299 214 168 148 57 174 80 251 127 165 32 71 109 236 131 191 253 238 135 10 202 109 171 13 68 58 20 213 17 56 42 197 99 225 57 22 115 63 27 242 214 29 260 5 29 25 53 79 294 209 137 221 41 206 291 66 208 93 99 193 281 186 162 193 299 148 287 59 5 99 26 163 156 13 166 219 273 81 245 32 262 241 79 128 101 113 239 214 232 158 194 48 299 59 239 57 273 59 258 94 2 144 176 50 210 173 207 110 273 15 186 304 12 165 287 73 62 122 164 180 73 10 110 126 26 247 15 220 10 136 255 288 145 97 186 104 252 183 64 121 141 302 151 237 78 183 244 252 92 157 179 301 43 179 271 250 87 128 55 288 49 302 304 107 136 303 143 202 266 255 290 96 71 184 135 129 272 197 29 11 17 149 24 248 113 189 256 13 256 170 182 23 68 293 138 74 166 263 42 183 18 245 263 255 20 256 96 96 111 76 192 56 121 69 110 174 238 59 81 99 291 131 206 114 251 217 22 35 259 48 232 86 14 182 139 9 26 66 136 208 278 218 84 266 149 20 109 152 13 270 264 259 200 90 282 93 62 233 304 287 26 49 62 100 92 136 230 40 82 100 281 71 220 291 215 291 99 170 45 165 239 31 120 17 140 167 215 216 106 105 80 123 69 62 245 85 59 113 15 298 81 74 171 140 58 84 165 6 260 76 132 60 246 222 281 213 226 137 24 78 238 292 90 211 303 25 118 159 261 167 58 196 80 161 196 101 59 6 108 231 55 4 167 74 187 32 28 123 22 44 197 294 37 5 171 171 39 169 6 8 248 166 50 216 199 178 207 164 224 91 199 129 299 58 41 29 37 178 294 300 166 182 188 1 254 160 71 224 95 247 68 229 39 156 209 49 6 46 83 199 207 144 265 175 49 32 143 42 301 116 283 221 264 17 220 148 302 282 35 189 290 20 79 276 87 303 292 57 76 185 183 91 299 23 244 274 211 227 304 286 91 226 59 175 11 182 67 261 165 292 123 52 128 280 98 282 243 23 238 134 168 179 184 274 259 221 118 24 44 146 244 195 36 227 14 213 128 143 160 31 172 55 304 156 253 96 219 227 159 266 277 123 60 221 205 183 127 28 177 62 175 236 107 5 213 282 147 49 302 155 183 145 257 46 189 155 234 1 114 108 263 291 161 21 128 21 28 96 258 99 101 75 287 147 167 86 214 98 29 92 226 113 180 230 107 150 276 299 1 211 62 242 183 83 286 93 65 291 175 200 82 48 297 226 2 285 156 63 70 79 126 37 202 274 256 129 181 154 14 221 166 114 155 75 169 294 301 197 156 278 55 207 144 9 146 221 39 69 205 66 160 229 182 52 156 174 70 78 275 25 249 290 252 187 215 142 90 169 83 170 72 228 15 186 179 190 280 113 224 35 155 53 163 141 115 177 43 245 160 286 222 140 147 248 248 235 222 22 175 271 65 56 165 280 80 203 100 190 123 163 179 136 299 300 94 82 35 201 92 79 84 180 24 197 298 282 75 59 238 221 129 171 219 168 157 56 93 101 54 16 51 7 284 259 188 179 77 71 241 262 220 84 224 299 37 237 130 150 218 35 181 66 83 286 145 72 75 85 189 237 114 286 259 206 290 43 137 274 143 276 95 300 165 293 90 79 246 143 299 292 111 130 204 94 215 39 86 14 1 119 261 38 205 177 198 131 192 94 55 45 190 118 239 3 194 140 165 197 68 24 206 128 168 166 101 302 198 118 258 126 135 129 121 41 198 132 280 60 94 290 66 288 8 58 266 101 10 21 112 161 32 272 125 251 25 224 283 49 218 109 100 229 5 218 3 240 164 171 193 72 269 110 196 124 122 93 62 207 146 295 79 91 246 101 274 85 43 172 215 190 27 101 137 269 179 244 164 277 32 23 217 175 295 15 126 225 54 215 112 153 257 46 242 299 149 25 24 57 235 254 215 171 99 228 94 15 299 216 152 175 69 200 14 13 222 121 98 278 200 139 186 150 90 246 279 77 13 55 132 18 295 17 222 166 28 28 219 57 97 184 165 132 68 213 236 88 110 213 222 176 33 51 247 269 13 132 155 115 280 81 238 223 267 285 222 287 33 287 203 162 297 233 92 44 239 8 144 211 14 77 32 74 139 26 113 140 60 106 104 80 116 45 33 46 4 232 36 81 77 15 90 107 114 297 135 76 9 216 156 270 145 108 139 245 219 171 194 30 199 192 26 116 259 124 287 216 2 220 1 298 293 140 98 184 59 116 228 149 175 119 77 95 138 208 225 220 126 179 137 63 151 94 24 80 56 14 44 166 5 254 15 199 27 274 297 268 20 291 179 183 55 51 52 217 3 241 101 10 63 3 61 214 273 192 227 280 173 116 265 190 200 86 164 99 226 32 155 242 154 87 149 253 150 43 273 92 47 294 215 264 216 126 188 84 243 286 298 151 202 210 219 63 173 230 27 111 193 69 304 276 94 67 256 106 7 244 227 140 116 248 11 256 10 203 128 273 137 121 41 23 98 61 96 268 59 230 91 180 234 231 83 85 258 115 60 161 75 296 40 153 218 231 110 130 61 46 140 130 81 108 150 209 300 56 189 284 112 85 260 75 149 261 278 32 141 246 258 217 226 289 138 189 226 163 218 77 18 1 299 74 30 246 163 294 292 202 121 170 39 115 35 92 67 227 92 294 229 7 109 113 58 145 92 300 42 160 34 263 182 296 224 136 156 9 184 303 214 112 19 56 125 131 292 57 238 142 129 299 200 200 106 247 102 27 98 215 56 300 2 233 26 70 210 259 108 300 117 202 144 263 143 280 13 286 228 294 142 151 101 14 148 197 210 300 170 216 163 294 71 221 190 23 62 214 178 193 277 139 252 228 279 299 255 184 76 228 205 156 279 249 47 214 260 257 292 274 95 249 286 174 116 233 295 96 122 168 270 52 76 97 188 218 292 42 73 64 115 76 21 173 154 9 129 32 19 14 198 290 293 99 208 144 132 187 200 79 178 14 88 70 244 162 216 223 80 42 225 282 103 191 74 109 128 84 204 177 231 97 7 227 29 56 115 122 141 22 14 246 200 45 287 274 107 142 60 226 212 169 232 37 219 198 276 113 6 245 61 224 259 27 169 147 189 4 224 81 130 252 63 162 260 46 196 294 94 252 189 255 56 36 201 225 262 153 225 194 63 196 31 260 115 11 206 67 184 261 32 126 243 138 102 152 31 290 244 166 85 20 99 234 73 83 206 98 287 229 41 18 79 2 161 124 280 277 14 190 110 210 34 158 232 102 97 210 134 84 158 153 98 274 157 221 275 238 160 32 65 296 103 224 266 48 57 155 62 302 186 179 176 264 245 65 47 192 55 255 197 190 196 177 113 249 185 198 228 257 3 221 67 129 285 124 260 139 254 24 68 231 296 299 138 96 238 165 197 226 245 262 185 276 12 241 157 89 153 193 132 61 123 98 280 36 233 124 289 4 6 90 298 232 234 19 213 37 249 2 190 160 193 228 17 213 198 142 71 267 149 288 52 186 38 254 255 220 21 119 128 250 60 24 211 12 214 111 49 147 115 194 278 57 68 34 257 232 204 276 3 265 138 205 28 100 220 284 78 31 230 14 154 296 212 154 27 185 107 142 275 52 153 243 38 175 221 299 293 7 60 247 190 185 194 214 277 184 57 115 182 120 265 23 137 284 230 294 118 143 260 272 142 70 75 162 61 72 47 163 113 193 194 293 175 162 100 17 157 89 168 211 107 89 178 89 261 148 107 288 287 142 166 192 173 189 248 65 89 68 163 263 292 299 109 232 35 290 37 8 238 121 243 54 85 187 248 6 280 9 196 292 187 99 295 174 204 68 222 59 32 9 46 88 257 35 89 83 64 264 283 34 76 75 19 112 202 62 282 192 145 251 255 222 46 63 165 261 253 60 61 189 45 78 156 82 175 295 222 201 128 304 5 37 147 61 152 229 153 147 240 277 217 180 93 166 212 175 220 171 152 106 297 217 160 54 288 80 209 302 109 43 187 57 41 37 205 165 131 131 14 120 121 101 258 51 301 260 119 256 181 283 75 167 268 199 133 220 67 146 36 10 49 93 196 57 192 129 144 21 86 44 182 285 184 159 98 289 103 124 96 80 79 174 3 193 212 284 164 222 147 42 116 5 66 160 148 179 49 64 118 231 274 274 146 43 274 72 36 182 149 254 122 59 82 218 70 89 295 283 210 15 270 41 68 295 154 32 164 67 136 223 146 88 194 182 102 115 90 98 210 271 91 25 9 3 135 96 124 39 297 265 175 53 220 117 95 14 36 254 235 277 281 122 32 213 142 255 186 191 199 279 278 166 63 202 21 193 106 147 242 30 222 12 290 92 194 58 174 139 40 22 303 132 233 286 113 119 32 207 23 64 254 235 38 194 304 286 117 217 71 222 158 178 289 294 56 153 26 277 102 139 163 130 185 275 8 91 60 71 101 223 56 10 4 256 79 292 230 304 216 262 19 44 303 79 97 200 104 215 186 171 200 2 63 21 57 227 220 224 53 44 213 49 188 190 113 219 246 181 278 28 86 214 127 106 277 136 201 227 84 258 195 226 46 177 36 149 102 73 64 259 123 215 184 199 52 145 273 71 2 67 149 221 55 8 30 271 191 274 91 158 64 25 3 48 213 147 224 131 46 212 19 162 203 304 301 79 208 220 71 257 166 10 260 196 284 28 191 18 181 3 178 260 86 150 78 266 176 224 5 86 96 204 237 95 216 103 264 57 290 53 50 160 103 126 176 97 16 16 129 136 183 267 140 273 175 52 252 63 243 190 57 182 247 272 17 79 270 95 177 131 198 152 304 149 296 7 284 231 118 216 157 14 107 197 268 266 194 254 217 53 58 225 142 269 191 163 75 105 224 85 80 126 195 205 137 134 23 226 244 258 142 271 88 201 12 276 13 293 252 236 90 55 37 234 161 179 28 193 176 180 215 57 217 277 262 150 292 158 86 92 31 171 242 209 103 176 197 225 253 86 79 120 301 39 248 18 92 93 294 26 73 256 29 52 261 85 159 92 74 255 304 207 141 7 256 248 300 93 47 167 122 182 196 66 214 278 114 233 40 128 174 191 32 299 84 103 3 213 125 232 182 149 60 244 8 110 251 182 278 140 103 36 143 239 193 117 203 275 173 173 211 22 130 15 289 233 301 7 226 44 126 115 36 282 114 111 137 165 52 137 280 179 223 33 165 221 25 11 246 202 286 48 165 32 266 300 44 236 142 17 75 82 64 224 162 44 148 38 292 135 155 234 107 213 252 169 294 257 237 1 236 148 280 271 180 158 20 275 8 284 72 264 278 190 161 270 242 61 256 97 261 169 231 249 25 72 268 72 285 229 295 285 92 129 252 77 174 32 70 31 77 264 170 233 226 102 136 254 146 112 120 161 238 64 280 240 87 268 51 192 111 15 208 139 191 68 23 192 223 96 172 184 150 293 33 29 186 118 127 304 233 190 143 213 195 103 268 240 145 177 117 20 80 83 26 54 117 259 203 121 249 236 298 118 285 290 122 83 287 224 253 185 179 276 210 135 116 77 36 217 100 115 111 226 141 229 135 149 119 275 273 232 66 152 204 238 156 139 278 189 210 260 214 135 229 26 187 291 17 88 226 113 98 86 237 189 124 113 65 13 237 94 259 271 77 238 221 206 45 162 225 51 47 293 231 87 40 44 95 25 219 212 303 136 192 167 37 43 163 273 245 216 171 172 246 283 68 68 90 122 22 120 157 115 11 110 62 149 304 270 189 86 30 283 142 226 105 116 234 30 236 117 2 60 41 39 23 192 48 82 69 116 98 96 217 72 235 219 159 90 84 154 202 63 294 133 298 172 77 26 231 180 299 156 292 301 36 88 68 95 72 7 258 128 186 283 164 211 273 201 40 304 275 233 61 51 265 43 264 244 139 151 271 286 263 10 74 192 269 237 293 159 96 58 131 139 93 233 183 94 56 146 228 40 271 216 30 134 256 14 212 212 48 166 45 268 102 136 92 125 304 196 182 78 70 33 130 213 223 77 271 25 31 190 163 287 170 114 261 261 52 152 44 251 184 30 170 121 107 79 293 189 152 168 42 128 242 99 121 60 287 18 119 215 71 76 115 291 269 141 148 260 157 292 243 156 123 78 121 7 30 95 129 199 182 120 68 249 43 223 303 16 125 45 70 50 65 2 120 21 146 28 40 303 95 289 7 48 288 104 16 23 230 238 239 172 274 19 80 237 6 147 14 163 65 302 261 257 69 213 144 53 263 110 288 52 78 146 252 73 254 132 139 144 229 217 128 68 22 292 112 107 265 138 97 164 134 27 176 116 167 100 151 50 160 273 199 5 178 271 9 265 266 115 116 262 42 108 123 60 109 208 1 142 89 196 9 253 294 230 245 85 228 183 74 91 41 203 135 156 207 233 163 263 247 226 249 14 36 200 57 32 87 51 238 22 141 102 129 275 4 262 65 163 79 132 8 88 267 174 97 169 259 4 197 147 125 76 41 231 53 237 70 221 74 141 52 254 19 60 48 31 225 265 31 232 224 92 217 270 107 134 77 172 294 55 74 62 64 66 198 18 70 61 66 211 133 269 62 202 78 1 261 189 100 43 55 60 53 165 111 160 139 274 40 217 299 217 286 36 144 73 278 46 262 38 50 271 219 114 291 110 267 146 159 179 38 2 92 246 46 282 267 255 285 34 199 47 171 249 56 36 47 196 47 157 234 265 193 25 46 116 112 84 185 149 87 43 250 19 82 28 67 97 71 44 287 183 171 131 282 194 226 132 247 153 181 114 24 96 99 193 22 207 3 176 139 90 260 45 174 244 190 146 103 121 52 27 216 275 180 49 125 272 144 151 214 193 274 270 296 42 203 286 255 63 216 290 18 44 291 231 185 19 249 143 13 42 300 176 69 208 123 245 167 128 70 95 97 182 200 8 295 291 79 268 270 169 272 73 89 280 75 119 302 47 274 125 143 36 28 35 146 257 279 77 108 177 107 13 12 187 156 261 14 199 30 116 202 122 99 97 9 139 94 170 264 67 87 249 34 192 13 249 275 68 280 229 100 189 55 233 261 65 188 50 156 183 244 261 80 241 241 269 67 155 295 131 62 99 61 258 116 265 146 158 126 71 29 151 48 258 198 217 212 3 109 212 7 226 111 283 92 174 73 284 66 45 131 50 84 300 276 162 46 30 132 32 244 26 85 286 97 271 285 185 119 123 259 84 192 203 87 34 248 71 217 302 151 195 247 91 203 60 97 228 266 32 75 31 190 64 247 158 137 96 76 188 66 131 75 204 53 232 72 4 298 304 283 297 83 132 41 265 136 131 97 199 41 5 13 159 161 59 52 228 100 231 7 271 112 223 274 292 10 295 191 55 291 109 43 100 160 139 29 179 205 277 260 118 157 107 57 39 36 221 135 178 8 105 66 209 1 194 259 248 236 150 140 296 296 15 68 1 79 105 255 44 222 285 158 217 250 14 304 62 149 10 212 261 125 264 178 234 55 185 4 142 240 171 102 278 134 139 169 74 241 303 118 28 170 155 268 168 158 21 126 123 21 268 168 98 256 302 246 72 18 209 162 68 162 50 66 34 300 6 283 103 84 211 194 37 166 249 75 198 25 68 32 229 95 76 61 266 129 50 185 229 168 171 83 192 274 5 88 202 233 249 32 93 298 77 100 262 72 137 263 215 37 215 163 180 40 206 145 163 35 244 141 11 33 189 213 292 89 103 125 196 260 292 65 249 60 249 234 91 73 255 245 283 34 43 124 138 50 183 129 142 38 173 112 54 64 119 290 243 196 113 15 138 86 127 199 135 18 241 70 221 142 297 84 222 119 274 209 187 15 187 283 127 175 303 152 2 104 299 61 107 205 75 219 81 197 243 89 83 216 266 247 148 93 57 42 64 184 114 50 101 168 254 303 173 157 193 259 280 236 137 37 199 227 114 52 116 256 225 169 25 295 10 33 299 78 190 151 304 268 257 222 192 42 133 24 279 192 72 147 124 19 17 97 28 199 194 240 122 126 83 99 22 59 158 208 147 273 115 61 187 101 294 243 129 212 158 145 130 42 192 27 53 10 287 71 196 40 35 264 219 297 34 96 49 229 179 242 174 282 235 43 272 171 24 101 13 77 64 298 275 298 153 195 277 291 268 102 173 136 290 32 17 174 13 207 301 106 69 285 1 253 107 215 236 95 182 183 170 36 13 39 40 193 117 186 96 234 173 277 175 26 215 300 32 226 198 27 60 36 135 206 132 269 18 36 68 190 186 140 200 237 33 146 59 16 210 106 177 72 63 45 164 217 247 181 116 112 168 203 27 95 293 21 89 219 260 183 182 47 42 219 233 147 201 255 15 209 238 55 182 31 224 36 241 122 256 137 83 219 265 111 61 30 96 240 117 170 145 169 95 222 173 17 118 70 31 128 233 102 43 65 15 282 161 169 7 138 258 155 123 41 223 58 237 298 281 96 171 159 101 223 303 137 29 95 39 186 69 287 270 199 278 210 119 61 243 102 132 226 103 286 44 16 70 264 167 110 8 231 101 119 61 208 207 143 243 147 10 10 289 176 162 207 53 83 225 10 117 286 183 126 101 82 182 280 232 175 142 117 95 295 234 197 135 215 111 254 7 117 241 262 251 121 89 141 230 99 295 112 77 240 94 78 8 185 89 37 302 54 16 201 279 143 229 212 116 195 106 214 221 268 111 96 108 158 233 141 23 238 26 176 249 58 258 267 50 140 265 226 56 196 215 53 234 249 76 191 228 229 63 174 156 16 177 242 141 1 187 230 55 184 130 133 204 275 230 155 61 248 291 234 57 172 23 249 107 49 176 297 304 208 65 31 174 225 168 61 189 257 74 91 281 164 16 62 231 79 116 24 274 151 182 170 74 117 228 193 197 55 50 60 29 191 6 254 165 94 113 48 60 281 260 177 32 77 146 222 274 74 145 249 188 73 297 213 281 136 43 24 193 141 295 56 219 56 208 18 144 46 265 259 80 249 154 170 159 222 249 63 290 295 216 108 51 153 224 48 77 124 196 257 272 47 132 28 68 111 255 113 89 284 64 274 44 127 159 239 31 141 22 130 184 58 283 289 53 59 202 233 139 14 128 50 12 128 284 86 151 64 257 304 31 43 208 132 49 92 50 10 69 70 297 248 207 130 62 38 144 141 83 93 212 216 218 106 117 186 111 278 191 151 230 255 302 262 276 272 190 20 185 22 20 193 11 97 68 290 185 28 298 41 205 151 277 136 119 243 196 287 286 224 181 229 48 28 122 67 30 172 231 132 206 111 10 280 213 19 151 180 121 218 82 204 139 209 34 96 134 13 46 173 199 209 82 51 148 223 177 246 107 40 251 29 287 194 10 21 35 197 158 202 283 265 118 240 303 285 13 202 245 235 238 75 78 301 52 240 139 279 70 136 60 52 64 209 9 99 180 146 276 235 217 66 141 187 98 31 217 107 121 266 128 168 187 207 175 200 33 225 125 168 161 259 83 192 135 157 182 287 257 213 1 175 202 47 213 134 43 71 280 234 190 201 229 285 236 5 5 126 166 20 15 166 130 295 13 19 160 209 283 28 211 79 208 158 194 225 190 205 245 6 226 268 100 206 223 191 216 7 192 177 252 245 3 159 180 153 170 63 158 140 289 19 189 143 304 56 73 111 77 177 219 94 112 261 227 231 105 169 230 99 197 285 106 194 54 115 238 94 51 52 208 91 129 37 226 284 81 20 175 68 47 105 189 224 192 25 126 61 223 164 42 244 51 50 33 35 148 301 216 70 13 279 47 216 55 226 10 102 125 16 265 154 14 237 167 100 122 132 96 35 292 71 111 7 296 122 162 145 227 16 271 268 111 91 181 294 22 90 287 224 93 158 146 79 290 176 273 48 111 268 151 162 213 52 188 304 290 112 220 60 134 25 148 161 135 190 160 64 157 55 299 40 303 177 70 283 256 214 98 268 282 85 137 161 155 212 292 251 102 220 295 128 137 246 252 216 14 245 89 118 24 162 211 113 154 78 144 185 176 92 202 107 83 158 69 26 25 171 284 151 162 272 284 186 255 156 101 175 163 14 34 203 203 40 301 270 88 302 164 113 243 231 187 302 6 145 104 248 136 117 177 267 7 186 203 148 145 302 189 16 180 83 301 111 301 222 219 63 19 121 164 206 184 89 225 200 97 142 7 40 33 272 33 302 276 223 62 135 107 71 183 99 50 106 289 97 267 21 163 19 183 183 278 161 185 266 52 214 39 6 18 89 203 279 135 5 296 176 268 246 175 215 23 35 147 268 107 185 192 220 138 146 103 29 70 65 143 149 95 143 58 186 227 194 28 289 254 51 223 299 116 32 238 22 183 17 225 274 24 141 143 125 13 230 92 51 112 167 19 156 4 199 293 47 187 285 115 195 259 188 225 85 29 203 40 36 258 216 278 276 46 237 115 230 34 293 16 234 236 20 281 26 84 200 39 212 4 22 108 89 48 132 271 190 243 296 98 109 42 240 136 158 179 84 133 291 215 164 215 252 209 107 247 263 184 176 166 21 75 216 149 132 15 217 121 189 251 170 106 165 302 181 89 104 209 301 21 94 211 10 120 101 122 83 147 133 72 169 152 288 1 140 95 6 164 186 7 21 174 288 140 146 33 184 106 230 107 259 32 281 166 56 43 138 286 73 123 144 142 137 31 246 172 75 64 68 7 48 270 276 47 259 189 155 238 304 137 58 254 35 13 28 6 53 140 220 294 249 264 123 135 148 293 216 206 40 144 190 290 184 150 43 302 126 95 63 304 181 229 233 61 159 112 37 278 1 144 1 117 186 146 154 243 18 180 268 64 84 25 270 144 67 304 75 283 289 92 214 131 300 209 57 51 271 22 168 96 132 44 65 237 26 75 285 221 28 258 272 71 297 183 147 1 234 236 91 130 145 302 103 235 269 39 273 220 177 208 205 20 248 152 193 137 234 14 298 116 143 299 225 279 35 26 113 282 48 73 116 61 216 102 122 48 114 175 274 50 61 289 256 123 223 52 24 125 303 268 178 294 292 66 69 30 135 277 23 73 91 202 88 276 3 99 41 241 107 125 25 222 91 126 165 135 95 235 182 220 73 304 117 231 37 84 127 219 157 268 275 292 224 124 279 38 89 45 192 244 6 7 81 287 178 255 125 228 105 291 291 78 70 266 183 298 173 133 19 26 280 96 230 261 43 213 195 263 284 169 274 74 64 211 87 298 79 59 225 84 163 88 212 1 25 288 183 92 277 99 46 292 125 184 266 194 64 301 198 148 52 263 73 176 151 256 164 230 194 276 283 202 10 161 283 254 140 259 142 235 228 242 171 269 56 226 247 137 199 85 139 175 267 291 97 99 173 204 217 34 143 10 81 164 101 199 291 28 20 88 45 73 224 87 206 3 227 18 138 281 72 101 93 78 159 149 95 102 77 20 69 296 214 73 238 167 22 256 277 250 151 135 229 248 9 259 107 241 122 214 234 221 293 146 47 170 129 88 28 285 251 270 36 220 124 265 14 214 282 74 278 287 272 35 119 162 49 102 220 139 237 97 47 68 214 292 249 265 102 215 27 252 221 97 116 103 144 189 94 100 99 215 12 215 240 99 174 221 200 300 284 221 279 108 106 282 172 116 277 196 48 271 11 55 283 65 57 4 136 191 97 221 153 2 98 29 207 55 152 9 38 152 231 106 92 288 254 230 277 10 135 84 114 271 54 93 62 51 288 24 215 170 245 73 71 221 266 133 208 9 289 238 55 41 55 6 134 65 181 122 138 268 148 138 116 158 257 13 119 96 276 88 209 276 274 85 232 290 190 252 47 218 262 132 130 182 137 149 152 13 158 174 286 109 161 32 231 248 99 213 8 83 28 212 176 171 176 39 188 33 159 173 60 161 96 230 180 129 283 60 25 41 165 12 237 144 214 199 198 220 165 120 78 161 242 13 115 44 282 32 69 83 25 17 205 45 123 97 33 26 171 242 224 129 32 196 55 247 139 116 103 191 148 204 17 50 270 286 300 125 299 156 283 173 112 35 133 282 186 274 288 248 216 115 80 298 253 22 210 123 238 140 163 286 30 55 139 177 284 265 3 288 257 298 73 164 100 243 243 97 248 101 152 137 110 13 194 27 254 87 266 262 78 102 104 46 299 151 71 301 215 36 66 169 131 100 161 259 300 116 221 169 119 225 207 227 196 36 36 32 82 154 275 74 287 247 200 147 87 269 285 6 189 138 175 205 134 54 234 257 66 173 270 68 273 270 198 200 297 79 267 122 170 12 66 127 75 230 270 131 206 294 186 209 194 293 67 167 142 241 3 223 221 195 143 36 238 138 284 99 273 7 294 194 269 76 202 219 100 184 296 258 13 194 99 237 95 297 178 124 187 122 294 164 159 130 228 152 54 144 287 26 162 56 255 155 188 83 278 167 167 61 102 239 122 254 250 192 281 276 226 228 229 62 298 252 52 238 6 9 118 107 253 255 117 195 134 57 80 159 145 63 181 168 230 31 29 224 8 59 72 45 190 150 256 276 278 139 48 296 258 126 28 88 65 237 108 169 241 43 136 288 138 277 141 25 45 206 149 209 168 6 6 273 249 116 140 79 151 146 43 117 148 285 44 192 37 28 98 117 141 65 123 16 61 58 82 10 85 167 175 174 97 303 75 37 75 2 138 132 186 275 68 109 73 287 43 202 169 257 133 136 194 146 34 225 228 99 266 58 236 80 9 269 102 41 98 125 136 69 44 232 247 287 293 73 230 40 136 50 101 20 82 23 110 46 39 145 23 99 60 194 69 143 17 1 58 108 10 46 120 95 268 60 264 117 160 214 94 74 197 264 202 110 135 50 50 23 53 134 226 91 151 107 110 207 234 109 20 203 36 152 171 11 234 29 138 54 260 236 139 31 87 258 113 296 222 224 216 149 120 45 79 121 155 9 158 146 273 8 126 191 281 262 198 170 245 168 8 259 156 233 12 54 184 2 285 279 126 215 177 127 256 85 175 79 143 117 52 31 277 95 35 105 304 81 219 272 137 161 22 112 188 22 264 112 83 143 220 253 244 69 113 138 140 111 176 102 155 258 200 33 247 68 233 119 237 258 131 19 40 179 136 284 140 175 240 32 18 254 156 160 213 44 237 152 109 60 143 1 263 144 292 98 66 176 17 132 178 298 25 29 51 274 220 23 133 288 114 81 147 38 102 265 79 165 38 248 78 240 240 92 92 40 265 52 178 110 26 146 240 298 257 19 237 151 3 32 292 146 37 48 149 34 58 140 121 36 107 270 262 170 143 130 92 154 253 121 106 184 142 269 187 91 221 100 204 143 218 164 70 202 123 2 78 144 103 36 261 161 184 169 81 197 56 111 75 175 283 98 197 34 31 3 171 5 160 264 60 66 182 260 112 269 205 195 286 287 287 223 55 278 303 273 126 218 238 142 90 150 263 41 107 254 148 66 142 179 11 158 229 270 190 128 276 258 260 274 244 170 235 222 133 172 171 193 217 278 66 27 192 200 108 41 102 55 275 177 222 239 164 128 37 240 181 213 132 7 108 121 273 222 58 221 233 203 263 257 266 107 176 104 76 146 16 221 249 27 103 243 52 87 190 33 270 57 222 40 130 140 176 302 124 157 37 258 272 58 157 84 269 100 12 92 80 121 183 122 44 92 144 59 299 85 292 224 248 102 165 220 111 295 276 267 120 162 199 14 115 72 141 200 34 26 196 193 264 194 195 63 79 33 65 134 235 61 14 3 252 275 230 20 123 54 193 230 50 231 110 147 206 232 143 274 30 165 233 122 262 149 82 76 248 134 32 145 24 278 261 191 302 244 95 271 291 300 97 168 146 265 266 226 257 291 169 254 205 163 260 253 8 43 279 21 33 150 106 121 68 48 148 154 7 116 270 298 21 279 157 199 72 297 295 169 40 144 27 135 215 242 197 284 270 71 135 132 272 54 75 4 180 282 162 212 269 146 196 252 249 271 142 78 8 118 273 250 28 262 252 136 13 161 77 108 30 255 91 115 149 198 202 125 191 169 65 26 32 46 169 250 263 196 96 233 260 203 42 91 277 31 35 287 140 22 117 2 35 15 54 58 116 135 126 44 141 14 213 205 225 157 96 31 121 234 235 223 7 79 20 171 126 269 95 214 106 171 193 290 223 166 61 216 150 38 22 41 269 249 273 74 176 62 14 197 37 270 197 103 274 215 227 191 103 190 57 300 105 226 65 51 79 166 7 279 89 200 263 168 277 14 34 149 204 131 159 54 94 141 21 129 160 31 264 34 48 128 14 189 95 48 31 14 65 294 135 240 35 39 209 287 63 272 287 294 222 282 208 171 28 213 48 10 260 3 66 281 23 302 132 108 274 14 207 196 160 112 123 87 59 6 288 74 95 285 36 277 197 23 5 295 199 75 192 259 38 31 38 229 269 15 257 175 104 37 162 181 108 285 74 165 59 56 87 142 173 170 22 275 148 209 268 253 62 140 163 33 97 154 239 235 84 278 304 117 47 223 274 206 76 197 149 36 166 31 51 54 72 32 117 147 36 188 274 132 88 166 229 235 251 25 55 243 62 241 295 50 15 187 105 279 148 37 167 216 226 175 103 228 146 52 66 280 215 267 168 137 71 204 68 295 186 1 102 234 191 249 33 247 35 213 275 264 114 72 45 186 230 294 207 210 144 115 293 166 38 211 255 110 290 80 157 7 286 83 130 143 63 109 26 35 148 82 112 219 273 275 49 29 251 141 3 119 268 180 183 186 203 243 72 3 123 226 45 134 215 268 245 196 235 232 234 253 194 229 185 23 253 1 47 126 193 119 154 46 198 110 291 26 189 54 111 147 45 128 157 231 234 223 151 212 236 296 233 20 296 116 242 147 302 176 81 80 203 257 20 166 118 221 3 60 187 4 190 104 32 27 193 16 87 115 127 7 17 64 38 288 265 84 242 110 163 134 4 34 181 12 125 106 86 296 45 84 187 191 128 135 90 209 231 2 200 118 5 102 82 203 79 301 283 180 2 11 237 180 189 119 277 73 61 48 269 124 193 237 199 112 175 227 273 178 13 17 172 256 125 281 195 159 247 171 95 74 260 84 26 282 93 136 70 23 161 269 175 212 240 279 193 106 202 282 48 150 271 2 138 218 63 188 17 187 101 225 273 299 155 82 79 89 87 194 12 163 181 78 223 176 236 183 191 173 269 214 114 279 221 136 51 252 256 91 186 122 20 299 178 76 151 198 142 290 35 265 299 280 181 296 158 186 283 154 136 235 113 19 282 132 238 191 15 109 200 16 66 103 236 137 29 119 295 218 179 197 140 160 15 208 110 24 65 154 133 64 217 195 45 214 267 216 44 217 167 98 290 166 209 301 97 51 301 275 218 233 245 34 52 86 252 32 82 265 104 171 124 290 264 88 116 108 178 206 29 87 282 20 75 174 92 214 298 172 164 21 278 155 190 91 173 93 233 229 43 99 4 274 207 156 8 42 163 125 294 272 47 54 297 159 124 16 32 33 183 10 48 233 79 206 205 190 205 226 247 90 31 136 14 208 29 82 182 69 9 224 233 133 28 116 97 70 25 202 273 252 145 207 279 252 21 25 212 186 56 187 175 72 119 100 24 180 217 108 198 142 172 279 215 5 33 50 91 80 302 216 145 90 303 195 201 91 182 19 272 299 106 195 44 252 200 188 22 23 74 262 26 262 120 205 98 252 265 296 278 256 102 94 137 227 272 127 188 202 157 54 291 83 35 170 266 32 11 110 55 23 178 279 68 247 5 128 111 85 132 42 286 3 210 224 190 107 11 93 94 97 281 75 294 162 260 187 298 256 280 136 200 166 124 215 146 292 75 230 68 113 38 5 173 274 107 294 135 41 211 174 169 47 273 245 92 127 283 299 156 282 302 11 16 65 6 133 77 124 234 89 301 189 52 123 97 148 222 85 159 124 88 165 206 141 196 159 145 77 264 63 100 151 234 244 38 272 177 60 55 166 245 40 113 228 70 28 116 57 220 105 264 128 46 48 263 151 130 62 220 50 2 24 189 119 145 234 198 219 130 232 162 183 89 155 213 43 262 130 70 2 212 54 91 171 17 224 242 13 84 192 246 202 34 230 63 42 189 184 124 173 240 163 203 223 26 233 262 67 167 21 144 63 299 146 120 135 43 21 55 274 294 1 115 222 123 224 19 50 23 214 249 229 43 172 148 225 288 295 187 101 24 243 290 269 279 94 254 297 90 211 124 274 28 222 14 29 125 263 41 78 182 215 210 61 115 219 278 235 128 191 84 244 11 55 155 7 198 35 176 90 270 123 52 118 98 55 205 275 119 295 124 209 222 187 68 285 278 100 113 43 69 191 188 4 56 80 270 124 197 26 286 50 287 153 153 272 259 54 108 216 169 64 145 261 18 141 261 295 132 26 251 108 241 104 127 11 84 58 199 54 57 201 287 230 12 217 249 177 277 283 134 238 231 108 48 172 15 272 225 89 136 20 101 131 157 150 231 130 191 256 11 72 302 223 50 70 172 219 205 188 271 142 257 73 165 236 33 277 85 172 288 39 276 164 118 166 223 278 183 144 75 139 50 105 31 110 44 4 159 94 169 116 170 5 144 280 126 87 41 77 286 198 207 90 166 54 200 151 36 160 72 56 295 56 231 233 121 157 119 20 27 127 186 265 86 194 250 76 162 174 101 142 40 300 297 78 276 8 24 74 250 300 133 185 7 1 242 235 86 301 278 237 114 213 197 223 96 42 261 22 264 34 106 40 152 280 45 85 248 134 250 112 270 83 100 188 269 138 33 90 126 227 214 229 160 298 39 231 19 250 241 80 293 226 53 133 254 135 9 166 108 248 127 197 105 290 178 60 304 27 204 176 34 165 3 211 292 178 143 150 254 299 291 164 192 96 130 282 146 50 88 117 176 179 172 68 113 208 289 223 250 112 178 74 192 103 98 90 37 28 295 158 205 81 46 158 120 89 146 248 173 140 178 168 113 303 37 4 91 253 226 184 235 15 35 161 173 174 230 42 78 73 277 70 300 31 287 248 101 31 39 230 7 136 58 299 23 215 243 124 234 107 217 228 100 279 168 9 44 40 296 75 57 259 196 118 58 58 36 70 197 184 279 38 40 137 69 101 85 256 42 177 220 14 209 297 171 235 136 264 195 19 115 202 193 141 110 146 75 275 284 165 30 104 176 68 4 27 250 202 15 302 257 210 288 113 31 200 206 271 112 89 69 267 275 7 180 194 176 245 117 15 141 9 210 253 14 89 266 224 294 47 278 23 125 115 126 111 151 65 237 214 61 290 162 3 162 131 25 209 59 162 116 158 266 59 235 2 42 262 143 162 304 15 220 82 236 214 250 45 101 182 226 168 24 127 20 268 145 180 23 15 233 89 118 181 102 38 138 51 174 300 150 70 20 62 53 213 57 187 79 193 93 72 264 153 83 3 125 242 246 55 88 269 250 30 71 57 103 264 134 43 162 55 285 250 16 271 184 204 157 123 271 159 276 255 40 170 114 291 148 81 136 59 193 214 220 157 199 139 82 92 267 156 211 15 248 102 296 202 193 45 168 297 113 117 130 5 221 75 181 136 104 29 104 39 63 36 17 152 71 172 93 8 55 285 60 206 158 81 286 85 175 8 157 206 89 299 247 126 301 208 188 131 163 214 81 85 223 101 128 265 33 191 117 65 55 97 230 214 170 90 191 29 150 221 1 147 221 256 283 269 171 25 57 226 251 216 266 4 17 102 75 207 286 213 190 37 150 202 205 56 217 282 76 132 272 281 133 94 131 243 247 281 219 90 168 167 265 28 41 1 143 92 293 65 52 190 169 196 140 291 174 250 187 239 4 267 270 44 236 168 168 145 215 31 302 47 272 216 165 44 285 101 285 240 256 73 278 239 218 140 170 20 9 3 83 180 19 227 296 11 253 110 81 159 258 162 226 10 200 148 155 160 283 202 287 193 11 101 33 182 260 282 174 287 280 120 2 86 148 284 256 34 150 10 183 157 105 97 76 48 38 299 295 244 234 235 35 54 206 57 16 2 48 191 301 56 91 294 45 56 120 100 268 151 124 204 194 45 291 37 191 280 141 176 154 51 233 145 208 50 175 36 118 39 162 14 272 215 162 58 2 89 108 299 112 227 50 71 146 154 123 49 234 10 185 19 246 159 34 3 73 195 220 204 237 296 153 241 136 168 300 146 219 286 164 13 89 222 294 132 25 186 70 258 83 185 298 116 52 148 222 75 212 294 169 85 240 35 277 152 188 304 40 71 24 48 152 200 304 77 81 289 7 296 22 71 213 181 172 295 187 106 131 191 171 151 144 179 59 151 16 145 63 190 277 289 138 268 138 126 227 9 198 124 264 24 234 126 25 93 141 159 194 23 292 157 216 139 2 242 131 256 261 223 140 298 245 130 13 123 24 36 70 268 82 58 25 66 216 228 27 132 175 25 49 220 247 63 206 42 242 41 94 123 225 278 75 204 129 32 102 285 44 113 200 64 169 20 287 23 292 290 76 125 122 98 266 177 166 302 283 56 104 11 132 61 45 199 6 248 191 221 84 213 17 127 123 215 253 120 83 124 113 142 117 216 67 111 220 9 245 195 171 161 155 67 37 209 223 4 289 279 184 98 217 195 174 166 108 37 262 150 228 113 42 171 189 137 268 247 125 172 152 32 79 231 248 39 26 192 74 62 253 281 5 298 150 20 100 39 11 133 110 158 296 124 262 283 247 27 121 108 113 45 112 97 123 81 41 214 265 228 263 298 288 201 78 293 48 134 62 194 302 84 272 69 10 61 219 265 77 232 57 69 55 201 142 219 48 204 302 166 296 199 278 86 105 279 121 18 283 169 209 188 157 91 216 249 190 257 274 202 279 96 8 197 48 68 298 304 83 10 227 122 107 210 197 18 23 214 218 201 1 34 62 42 80 271 300 42 298 145 6 287 253 147 78 2 16 184 304 36 261 186 228 148 284 190 278 162 151 267 236 69 163 298 180 225 42 196 238 228 201 26 34 224 251 7 213 193 299 147 279 268 220 299 107 54 149 143 160 52 156 11 243 267 272 135 233 171 31 236 242 26 20 87 39 57 51 108 170 54 152 160 190 202 50 11 278 136 299 224 206 31 104 292 114 200 48 94 189 43 186 19 154 63 25 235 77 149 240 57 240 132 266 96 109 131 148 174 201 224 23 169 40 36 30 116 20 249 214 88 137 161 71 49 139 128 74 139 276 240 297 96 200 243 173 67 104 291 217 270 93 182 265 169 4 5 215 243 5 135 261 166 122 73 157 158 120 254 170 267 253 36 82 35 199 118 31 263 118 76 183 35 9 89 49 169 269 41 288 61 230 284 83 46 273 260 229 216 175 14 161 117 54 191 4 3 52 137 136 243 117 20 215 82 13 55 289 287 279 273 10 223 190 296 32 93 178 284 174 100 17 119 277 43 253 155 128 45 284 200 94 304 274 67 84 88 19 219 167 172 196 54 173 46 265 102 251 273 32 106 146 122 21 233 92 141 164 44 140 265 133 30 31 12 26 207 227 81 206 103 12 284 2 76 243 78 21 182 37 197 130 38 257 38 131 94 24 122 110 115 116 144 291 198 282 28 292 96 47 46 50 244 54 111 217 21 39 270 145 106 270 268 149 266 116 95 265 299 243 249 117 278 141 154 292 127 28 293 40 35 125 275 175 164 252 110 55 257 165 268 18 61 59 200 234 288 241 12 139 8 196 24 36 29 269 301 212 304 232 142 75 215 177 268 71 100 130 269 83 32 220 54 207 212 168 29 259 206 207 146 128 214 75 22 256 78 92 147 253 261 24 180 142 68 57 152 232 133 182 230 63 272 11 83 9 47 282 104 140 151 64 73 177 46 293 137 75 33 98 82 137 244 56 138 142 173 170 209 115 109 209 297 166 252 119 104 232 162 71 289 93 91 47 64 105 262 168 92 284 207 239 207 60 218 6 6 230 21 104 148 181 204 190 230 278 111 81 258 169 223 26 1 161 51 113 246 121 75 269 96 213 141 163 155 12 160 184 167 232 84 94 11 297 146 304 77 257 291 90 57 108 101 158 11 116 244 248 149 111 213 53 303 163 176 105 131 97 209 64 126 291 37 14 289 44 100 15 11 59 90 163 242 277 17 47 246 26 296 107 30 39 244 80 60 106 117 24 183 289 219 54 73 131 148 38 293 188 114 281 231 170 37 217 255 20 27 22 146 153 71 89 15 206 74 203 196 104 173 127 130 283 164 2 195 248 236 190 4 95 251 173 176 16 137 11 127 118 165 255 265 19 33 36 225 221 11 153 285 150 47 272 77 5 191 204 219 163 120 173 206 122 91 231 51 277 168 254 53 194 81 245 254 6 232 146 113 48 153 265 135 68 126 302 194 18 16 243 37 172 149 119 229 259 213 101 144 33 155 196 73 8 144 31 201 146 280 169 236 267 112 98 230 226 257 301 253 303 72 215 229 233 241 265 1 94 247 209 233 215 238 285 209 117 241 285 124 66 89 101 180 109 80 262 5 103 85 38 230 267 208 85 35 291 172 179 71 56 141 215 26 116 39 291 200 289 206 136 170 64 286 176 115 163 201 77 60 78 78 217 284 81 82 287 187 1 57 29 301 242 211 164 93 201 143 302 144 253 93 36 41 131 8 293 13 169 289 173 127 62 304 143 178 265 67 2 8 65 208 33 103 92 150 199 118 103 32 111 141 244 229 82 295 214 153 52 276 21 286 248 9 280 212 298 185 253 133 220 65 285 8 163 304 99 59 223 227 25 108 236 22 27 49 224 193 114 205 250 40 210 193 77 83 3 219 285 85 271 203 303 98 169 33 48 15 14 40 190 191 31 124 75 260 52 173 79 136 281 261 267 169 179 102 204 157 129 126 167 237 140 67 173 261 86 133 14 33 243 50 92 129 62 259 111 196 98 230 295 140 241 30 69 14 157 190 298 279 70 18 279 90 303 201 122 179 76 158 229 260 203 189 44 181 217 163 184 278 109 228 36 213 295 34 276 168 68 106 223 29 298 297 267 187 76 104 202 81 289 176 278 71 152 122 304 12 129 271 56 298 142 185 280 163 102 248 10 1 10 299 292 76 84 288 295 186 195 66 175 29 181 80 164 128 106 1 140 162 103 258 181 187 62 303 214 71 244 267 194 63 106 6 293 35 288 79 3 151 241 116 257 261 79 120 20 141 222 145 250 188 274 209 131 252 219 90 207 37 6 223 219 279 134 147 177 190 269 55 266 285 137 289 17 287 180 241 134 118 13 132 284 55 187 255 275 237 231 201 285 190 235 164 144 88 152 193 295 189 151 44 218 286 230 56 26 231 227 143 288 107 214 30 122 61 238 151 21 193 113 204 254 265 104 38 44 299 200 39 295 150 134 101 221 111 205 208 300 58 124 268 181 32 155 266 92 153 159 126 9 187 187 53 82 73 254 229 165 120 102 112 216 75 200 286 12 30 47 259 174 200 136 71 178 97 40 174 214 302 39 192 49 304 50 304 158 294 273 211 298 263 151 145 106 136 233 163 264 230 55 183 271 181 151 73 301 212 14 153 226 241 10 235 35 124 164 210 126 7 195 16 257 83 68 80 163 184 198 208 41 267 237 149 104 161 116 140 279 102 131 79 94 56 69 200 16 197 304 294 28 216 92 119 162 116 201 302 240 240 151 213 158 25 173 212 262 174 234 230 16 145 235 79 269 162 48 125 101 71 108 273 43 186 178 92 12 58 122 34 235 118 298 273 287 258 232 138 38 71 25 157 214 302 57 40 73 151 115 111 247 264 209 3 119 208 153 89 49 21 53 24 186 37 194 168 43 74 271 166 208 119 281 219 167 20 210 267 256 158 270 242 31 110 268 166 100 56 13 141 278 86 236 206 105 134 156 252 8 216 226 261 101 179 149 94 220 147 142 160 101 172 72 282 87 184 205 98 53 87 190 57 245 10 10 298 150 289 142 177 199 109 181 111 237 205 136 206 148 27 87 102 80 159 284 78 232 134 99 141 245 213 225 117 88 239 176 51 98 3 282 47 290 1 32 236 58 256 185 6 257 131 253 214 27 158 221 160 42 297 156 155 117 77 285 125 69 153 271 125 52 61 141 235 168 243 105 43 65 198 159 95 258 162 60 100 221 275 237 19 115 2 297 227 156 241 294 15 39 169 65 62 172 148 250 27 202 30 182 98 6 40 22 133 304 175 193 171 11 27 173 115 46 118 242 80 257 27 78 148 297 39 111 249 235 195 163 170 211 142 70 221 36 91 126 21 209 111 89 31 15 110 8 16 171 179 255 302 299 16 275 1 126 225 14 285 247 96 289 266 270 169 217 87 80 277 135 79 93 298 258 19 118 24 163 206 156 92 228 299 55 175 163 120 170 246 13 161 16 208 224 248 217 251 26 151 144 208 118 106 102 72 112 65 78 117 13 302 96 298 153 270 91 200 175 76 164 110 92 202 131 126 37 197 23 243 56 8 219 210 105 303 136 232 20 138 209 297 163 90 190 160 54 238 136 125 46 127 102 282 177 117 112 274 108 292 29 275 91 233 267 193 146 218 253 93 141 148 186 187 275 208 159 46 272 271 116 234 291 154 200 19 58 264 229 31 108 36 218 65 126 24 169 113 16 47 147 105 134 235 11 200 88 301 254 127 165 261 255 161 234 173 12 52 249 34 277 183 41 3 44 269 97 237 58 210 81 157 187 72 163 101 71 228 133 175 40 136 241 14 145 303 114 255 261 293 282 142 91 200 34 292 26 94 251 201 17 69 177 128 74 272 43 102 85 122 303 37 52 223 60 121 291 152 260 43 91 55 30 124 294 300 263 99 91 300 262 50 27 168 88 132 14 151 212 12 120 289 231 174 219 245 234 147 102 268 10 82 102 226 290 106 86 101 78 122 67 13 265 193 255 220 16 7 29 273 101 80 67 89 222 231 146 73 103 204 82 187 120 9 149 210 205 125 214 254 277 13 123 118 267 136 75 122 89 94 119 140 59 151 207 194 123 22 231 236 55 15 193 22 69 55 140 13 237 53 120 48 11 268 157 229 189 7 184 24 213 178 251 292 262 198 110 144 78 136 16 145 20 117 126 144 211 70 249 56 178 243 208 29 298 133 159 231 289 70 45 263 182 138 205 96 133 109 151 116 287 59 182 115 140 136 113 156 242 264 101 86 185 34 36 272 16 258 21 88 28 219 276 46 204 298 43 298 29 120 243 127 30 246 292 5 241 280 17 135 205 104 71 32 60 197 239 79 51 97 12 304 91 69 303 2 245 219 190 158 116 74 197 302 289 113 80 182 283 138 139 252 213 222 124 301 102 293 111 6 300 133 281 236 58 22 284 25 304 292 284 281 202 97 235 60 98 221 279 223 301 214 39 21 67 142 91 146 115 109 91 304 13 171 158 117 71 240 23 212 5 200 169 181 19 138 186 208 29 8 198 46 212 184 251 160 125 34 291 142 295 107 146 12 103 138 35 228 10 251 102 138 205 105 106 60 15 103 162 34 258 68 15 227 129 157 167 47 1 52 128 113 3 19 277 128 72 49 272 11 289 203 73 192 170 143 163 5 277 63 110 153 284 32 31 199 134 245 42 14 19 37 133 21 149 203 266 47 252 81 24 175 5 63 177 97 256 38 274 46 142 6 188 173 217 108 174 49 142 145 208 166 41 11 109 74 152 136 220 43 281 164 18 131 266 202 134 249 104 226 163 246 83 21 167 46 123 1 123 127 204 70 132 212 241 88 288 303 274 113 63 107 186 234 91 299 120 115 244 43 205 53 14 77 261 93 14 103 209 250 223 158 271 230 112 138 221 3 8 237 167 205 197 164 249 173 78 264 91 275 22 68 142 216 70 281 153 182 285 178 200 237 205 255 223 111 47 44 141 50 303 56 24 263 116 298 108 132 117 172 190 236 7 102 160 38 49 57 34 175 165 121 259 295 167 77 299 64 163 138 251 243 125 284 10 219 304 70 200 152 110 208 217 304 88 150 35 28 97 93 81 264 37 46 157 82 261 88 62 225 31 9 85 151 155 104 97 26 201 239 94 202 39 230 179 39 152 196 108 218 229 253 33 258 253 229 204 74 187 54 276 143 9 269 101 110 269 103 41 82 130 288 36 91 279 267 23 100 271 264 98 157 172 153 229 250 191 14 214 30 187 5 128 211 53 89 202 167 110 237 19 155 42 249 263 157 145 246 249 38 82 16 145 257 39 173 145 99 96 238 299 301 293 91 225 111 7 239 294 38 194 302 61 303 16 48 138 240 267 274 50 91 244 30 168 28 43 147 180 74 207 248 221 32 150 285 84 2 138 274 158 60 101 74 287 289 19 24 96 236 202 210 198 30 88 238 145 168 135 252 289 233 58 213 232 55 130 288 281 85 121 95 124 97 155 47 123 9 75 63 197 13 250 81 79 104 206 271 139 285 303 79 227 49 171 35 169 31 84 245 137 67 117 93 164 117 156 131 127 261 75 150 257 275 236 226 185 299 47 292 262 47 301 180 249 65 258 191 300 18 258 11 18 87 227 252 247 264 228 10 79 233 164 229 41 135 150 236 236 274 189 83 106 61 106 49 280 22 80 81 280 106 210 271 113 278 62 226 113 275 112 216 209 291 162 294 195 238 206 128 1 233 128 34 223 289 110 194 90 266 284 173 234 155 122 227 278 46 49 277 243 13 11 145 229 70 152 111 200 236 85 20 90 147 266 53 293 147 75 195 89 10 178 278 23 255 53 33 176 92 257 130 92 275 28 175 178 188 79 131 223 132 12 2 38 73 264 130 25 247 217 99 80 73 182 128 15 71 248 121 195 116 237 38 217 213 28 167 281 115 36 139 268 188 27 45 89 86 150 274 130 279 48 139 74 288 121 267 295 174 270 134 143 44 16 60 260 164 99 194 28 129 79 195 198 115 66 240 13 137 57 228 125 73 152 165 106 117 163 39 165 280 229 83 274 24 169 282 52 260 112 28 191 46 293 7 192 255 100 169 32 253 296 67 238 197 107 42 204 202 44 149 212 223 200 184 190 166 77 91 35 65 16 41 255 91 10 148 224 130 190 188 252 152 115 229 153 212 84 101 248 144 48 264 135 248 33 169 143 13 270 206 29 26 259 291 69 130 130 24 287 86 23 278 114 91 20 105 293 110 219 59 27 196 155 216 203 150 18 71 10 127 150 48 51 101 264 191 48 259 186 88 74 37 234 127 60 58 212 173 185 160 148 127 211 129 233 85 284 98 6 118 104 52 219 301 25 135 200 279 34 267 28 109 23 124 179 296 241 302 288 225 131 302 145 185 147 87 206 111 142 157 168 105 255 221 125 109 197 98 198 103 116 189 147 260 297 247 79 50 286 71 141 22 145 36 291 28 30 176 27 245 96 120 22 198 84 172 246 42 70 249 58 80 125 60 72 276 24 156 65 11 243 278 33 69 248 149 160 154 195 12 282 242 14 162 229 261 179 11 130 29 178 45 161 226 238 199 14 180 51 15 70 266 191 292 166 100 115 285 220 225 109 119 275 131 175 30 72 233 161 254 42 293 131 204 206 126 243 281 9 47 16 62 52 290 125 302 266 101 183 158 42 197 119 263 129 136 33 101 241 203 178 238 71 296 39 241 287 82 124 235 113 66 50 109 137 214 214 267 195 83 98 278 228 159 75 210 33 27 301 75 268 89 104 123 277 161 139 154 37 140 98 296 267 112 21 295 55 55 229 23 227 241 97 211 260 203 158 24 37 211 75 232 197 69 280 6 6 155 124 238 135 51 250 183 94 116 101 243 264 80 290 126 29 141 84 82 51 249 203 60 128 16 293 95 193 170 14 181 205 232 263 11 150 210 264 73 282 213 232 149 121 85 213 62 159 131 211 1 82 144 119 79 248 89 296 10 266 12 179 285 150 181 265 39 258 183 297 85 154 79 170 193 24 87 138 166 162 242 226 90 95 163 110 231 194 216 110 223 268 66 136 290 132 288 277 93 26 259 222 122 127 179 183 256 274 247 159 290 59 123 101 39 1 88 232 115 300 78 81 203 238 22 107 241 4 183 56 279 200 171 203 253 203 158 214 223 270 126 4 35 4 298 53 109 92 19 49 277 300 195 154 122 214 24 233 231 27 41 117 90 53 224 176 162 38 76 264 127 78 59 221 101 7 243 114 133 144 262 64 188 93 22 127 302 52 222 256 152 161 287 240 56 189 33 221 27 35 261 278 108 231 296 103 193 194 178 99 43 164 20 289 143 5 199 143 258 171 91 113 55 152 102 300 73 240 231 112 173 85 194 204 68 264 101 92 62 150 273 148 136 242 116 65 178 99 201 282 278 149 261 14 37 130 103 214 243 103 192 16 60 215 126 195 70 178 218 63 280 274 268 273 161 83 164 98 49 39 101 136 216 282 28 282 202 14 109 180 38 201 89 105 44 301 296 129 201 169 18 78 22 150 269 149 294 140 275 225 82 103 224 42 94 299 295 248 232 111 270 159 201 231 244 42 126 104 294 171 114 33 104 171 5 190 296 114 100 186 112 49 255 181 144 35 222 30 269 74 223 254 122 155 209 26 34 135 22 204 261 295 191 189 282 130 63 280 69 131 5 202 48 106 25 230 149 24 120 111 81 132 181 284 78 282 59 184 91 25 272 122 146 158 229 264 177 115 118 106 303 104 242 155 58 64 86 138 29 78 62 7 11 17 238 302 150 109 109 58 42 235 158 67 32 137 140 114 213 76 302 193 244 178 273 56 36 149 206 90 260 195 190 290 185 73 141 45 257 38 12 171 32 236 123 72 42 18 14 191 189 177 138 233 8 147 108 162 280 243 296 20 259 25 171 247 41 196 83 101 71 140 185 119 269 16 175 134 179 18 130 242 232 81 212 102 210 270 245 57 42 304 107 169 219 209 261 209 51 74 200 261 15 181 227 204 94 167 126 71 18 71 257 107 273 83 103 217 85 41 199 101 97 41 239 161 129 29 46 174 251 232 126 43 20 15 16 117 74 101 119 278 144 162 220 148 220 120 281 286 89 33 164 195 8 188 18 138 78 288 225 138 191 64 45 175 286 294 109 227 253 164 46 88 261 240 8 288 303 136 63 282 219 245 17 62 119 7 8 252 161 149 148 19 91 207 185 15 270 181 192 180 233 119 39 211 156 137 166 47 197 105 73 120 142 48 126 249 191 50 130 174 241 291 232 80 153 86 294 162 33 197 235 291 181 256 141 179 66 99 258 54 22 235 27 216 186 132 143 167 164 91 261 202 234 169 16 279 149 17 178 128 95 300 67 170 13 174 229 41 105 148 226 234 27 213 293 106 250 24 12 7 298 280 238 267 221 284 82 115 195 5 75 248 268 143 231 281 99 62 252 43 180 245 98 251 250 291 166 131 138 121 294 206 5 125 303 115 150 173 300 252 17 124 181 15 293 111 69 1 127 77 16 205 296 92 144 39 265 45 29 9 53 202 128 58 44 151 86 51 75 208 3 193 271 132 162 269 205 208 205 187 253 13 268 98 218 187 65 167 265 54 115 172 237 128 247 16 164 130 276 170 66 174 78 217 16 96 186 252 24 202 148 14 232 256 28 176 77 55 93 102 268 168 59 233 296 123 126 85 101 85 37 231 234 119 73 216 290 138 69 54 203 217 137 94 69 80 57 127 188 63 242 49 174 117 27 106 102 182 62 246 229 51 46 31 101 149 245 59 180 192 152 241 173 110 152 230 286 174 22 148 215 176 188 230 132 47 172 204 176 204 48 126 173 159 146 54 271 249 137 129 133 235 28 217 230 192 276 98 11 130 26 215 285 186 220 34 223 8 32 304 222 178 301 123 30 203 15 298 120 115 104 224 132 51 229 298 42 192 90 270 97 142 210 40 236 270 94 86 272 66 286 178 268 39 31 289 279 32 134 278 291 14 149 125 114 232 184 184 179 199 171 185 215 118 73 93 219 102 146 28 36 10 290 295 178 281 65 226 29 169 198 36 258 274 133 25 80 80 179 236 267 231 90 21 28 183 298 199 270 111 157 25 172 260 112 105 287 5 127 156 33 145 265 297 262 62 96 79 251 3 102 131 267 298 235 197 258 163 205 267 287 5 139 151 217 231 179 101 191 171 241 134 76 169 253 125 200 158 86 23 114 31 168 56 56 16 185 23 97 34 190 83 181 73 195 90 42 74 224 142 24 13 174 100 63 112 220 183 191 226 297 29 94 207 207 244 2 285 291 160 153 54 145 140 24 41 78 282 100 150 108 44 205 133 137 191 295 205 196 43 50 105 94 187 84 112 195 12 49 51 214 70 87 221 296 273 152 293 199 134 295 89 265 163 228 185 304 198 187 156 98 273 104 151 142 266 84 15 213 94 212 287 246 157 262 203 272 189 204 206 95 73 177 304 178 239 126 274 67 24 301 22 147 34 36 274 200 12 213 227 160 59 53 251 169 111 73 7 304 100 136 32 77 296 138 141 74 23 218 41 235 197 212 66 271 72 63 172 193 103 174 49 265 222 278 31 259 175 45 89 161 38 75 263 188 115 67 237 171 235 53 84 265 37 267 215 150 72 6 129 169 293 87 143 61 237 95 171 163 100 8 222 150 13 128 50 167 140 249 11 239 22 216 40 146 168 150 29 225 11 247 232 275 261 21 170 49 253 25 5 217 37 214 223 36 118 196 88 3 64 5 34 67 27 200 73 265 68 115 168 194 112 82 102 229 261 75 78 58 237 136 192 162 164 163 285 32 16 142 204 266 184 19 27 56 196 126 132 170 16 59 121 52 23 161 205 300 248 250 302 148 42 103 47 304 92 57 163 132 132 263 34 139 294 111 130 279 187 95 95 101 279 65 283 260 16 278 187 219 293 163 167 292 291 56 81 82 92 36 279 154 260 286 114 255 233 57 17 278 19 168 68 227 272 5 244 18 37 8 69 152 16 237 170 113 189 15 16 173 27 224 92 178 37 169 211 31 230 178 100 4 266 301 31 62 145 199 98 66 157 225 178 179 110 217 153 91 128 165 1 40 235 47 67 51 303 56 17 24 141 66 136 18 48 117 147 31 97 66 69 157 258 114 30 73 13 269 303 222 180 230 123 108 185 240 300 79 17 12 152 2 38 302 178 108 40 277 203 246 17 112 45 175 286 288 188 57 250 36 112 10 94 212 81 243 186 115 66 208 196 184 172 299 8 30 275 140 176 292 247 18 148 190 2 230 12 179 1 156 115 279 148 28 81 146 283 297 267 164 30 232 144 159 278 298 140 75 70 166 185 298 51 185 276 138 234 178 60 194 230 67 287 165 118 261 48 147 151 194 293 296 191 269 66 63 281 148 166 132 46 109 272 13 299 250 148 285 18 30 147 102 190 1 15 19 147 129 31 39 113 100 164 270 169 224 103 148 44 189 298 275 253 24 242 298 94 94 26 15 35 246 275 182 146 104 197 88 280 46 12 164 186 175 55 127 145 36 278 167 9 237 253 205 144 206 47 153 202 34 203 10 80 281 158 297 233 268 267 64 125 303 8 255 192 288 21 167 138 57 258 91 99 25 232 213 137 133 255 112 235 115 35 73 275 100 47 36 218 186 195 283 77 205 243 236 82 20 248 57 189 208 4 149 66 26 243 125 155 304 19 176 287 44 246 114 129 169 13 181 139 212 288 187 92 15 135 21 219 50 201 184 279 33 90 98 303 121 99 153 205 73 268 290 63 31 40 213 173 148 121 105 142 289 221 59 100 196 77 66 267 189 186 294 191 108 284 283 115 228 132 267 181 287 60 298 300 1 235 245 87 111 54 31 112 271 49 66 56 46 252 225 109 98 10 171 252 59 233 112 125 245 196 303 244 189 143 56 299 240 33 174 116 53 122 171 209 91 50 109 223 155 203 199 5 121 40 140 201 153 12 99 189 115 190 238 228 17 119 220 236 128 118 1 34 268 253 251 300 258 282 134 280 257 95 225 188 112 9 217 135 172 225 14 285 91 73 294 148 76 187 126 215 96 225 210 10 7 273 156 115 172 291 7 267 254 278 280 105 148 30 137 232 176 31 259 66 8 239 178 262 14 53 122 171 190 286 32 21 186 231 224 105 169 32 209 241 221 116 181 213 266 9 111 194 136 190 220 297 224 55 111 203 65 247 59 283 232 119 61 183 80 83 300 114 160 96 188 118 264 72 2 251 165 169 299 282 206 125 30 143 276 302 80 23 237 60 217 221 97 50 18 149 61 106 293 239 288 207 206 299 164 69 250 62 97 223 260 228 19 58 286 172 272 240 131 40 3 12 35 235 126 12 274 43 58 108 255 184 87 68 141 228 226 6 214 295 14 227 9 237 284 139 15 296 91 146 279 106 145 296 73 162 12 107 155 210 48 81 240 209 120 190 299 124 226 92 181 170 44 129 132 281 8 57 58 95 15 252 145 55 288 47 261 57 224 127 18 192 58 122 93 117 84 82 97 26 54 34 262 140 270 187 248 5 64 99 73 55 80 263 297 283 81 214 74 194 143 183 56 294 265 289 221 16 181 44 122 248 269 289 151 144 221 104 29 165 234 292 12 206 275 270 98 156 184 5 260 203 231 299 186 59 269 44 31 142 222 289 178 210 88 179 192 303 147 220 135 100 46 295 62 234 156 283 239 68 163 113 91 87 229 240 6 301 226 285 61 137 69 98 252 161 159 186 141 195 82 234 120 207 90 37 235 123 1 181 2 31 211 211 210 279 241 123 219 24 99 14 284 178 162 231 149 288 95 136 25 273 142 78 96 288 146 192 206 8 21 302 303 71 78 172 173 212 268 81 63 52 284 255 57 175 298 139 22 108 33 260 84 261 151 147 71 238 53 114 170 290 114 133 68 73 149 247 192 248 207 262 62 87 167 55 103 15 294 260 82 224 3 145 4 150 173 214 115 208 83 153 262 154 67 237 213 278 221 6 91 3 208 155 251 138 211 102 227 239 5 272 169 158 280 253 76 249 167 228 293 273 100 132 154 33 272 46 10 158 93 211 85 162 1 210 145 242 256 65 199 184 172 194 138 77 215 284 199 224 217 134 12 80 215 247 211 130 147 172 36 259 286 107 14 192 164 25 203 258 9 26 236 273 299 136 113 241 277 39 230 116 87 175 191 145 289 271 191 232 194 170 75 84 283 210 221 194 126 15 20 42 52 239 123 292 155 42 86 92 214 87 227 254 35 21 124 97 62 45 76 90 176 238 55 209 249 108 222 304 12 207 164 34 24 195 178 300 253 291 257 83 121 179 32 284 224 168 211 107 59 127 83 83 112 250 155 184 29 222 285 162 109 169 278 199 262 56 164 136 99 56 237 167 1 268 100 194 187 71 299 35 177 106 105 244 250 63 68 301 217 127 25 268 216 51 239 257 94 172 132 69 89 200 58 107 292 154 285 266 63 231 173 41 62 139 196 44 73 187 278 262 194 300 293 240 83 218 272 230 21 106 287 28 42 228 162 204 127 166 282 92 151 131 243 207 143 255 97 258 294 201 19 42 245 286 38 230 106 283 244 52 114 179 191 82 112 248 139 116 277 246 87 71 283 287 269 186 284 126 25 263 168 193 125 195 13 282 37 273 165 174 237 124 57 75 2 57 204 148 46 83 99 74 266 186 118 99 14 173 53 73 111 227 117 196 42 263 34 64 22 123 119 171 139 76 77 234 107 114 26 117 26 180 265 264 59 77 101 96 63 176 173 50 210 244 105 291 39 282 122 215 153 13 193 268 14 115 51 166 43 195 85 114 163 15 250 196 112 15 220 229 119 164 75 234 179 282 106 30 106 188 293 10 74 178 60 255 195 178 170 37 232 93 204 24 185 48 250 80 221 294 96 234 262 240 290 18 272 30 123 16 33 96 294 267 11 12 232 42 284 185 255 255 87 228 140 166 255 216 233 228 298 141 78 127 89 55 103 63 254 287 238 254 227 164 171 158 46 290 102 36 239 93 254 97 193 190 97 244 10 116 182 65 61 123 213 258 200 39 218 18 75 172 210 99 55 255 300 251 262 196 150 285 195 232 303 214 256 116 150 114 286 287 243 140 132 106 92 179 149 292 115 280 1 97 66 235 212 103 141 172 82 73 30 290 298 153 185 243 112 296 203 302 48 112 280 58 245 168 290 58 117 94 229 152 241 226 200 289 152 242 79 62 117 186 286 205 237 76 196 178 97 2 51 126 304 166 281 203 67 72 262 192 226 164 276 115 233 164 218 19 73 203 40 147 301 207 258 134 90 293 151 186 273 172 24 297 247 263 231 79 221 164 82 272 266 212 148 229 269 206 184 26 22 250 16 158 49 285 43 172 176 162 64 263 289 250 253 246 259 256 10 282 182 158 246 259 273 88 228 192 149 260 223 193 147 240 24 42 30 58 61 57 122 247 66 153 182 237 270 292 231 301 62 109 78 274 101 87 244 231 217 221 239 2 20 227 247 243 22 174 124 267 128 86 124 239 102 15 130 187 222 173 293 154 218 103 204 44 2 126 117 215 242 167 95 270 93 221 98 282 65 261 296 139 157 12 173 189 302 186 101 49 214 281 230 135 270 88 49 170 228 8 275 154 35 34 156 225 284 294 275 262 220 16 1 217 233 274 133 31 227 25 36 251 34 148 146 23 125 21 232 125 237 8 141 264 95 219 232 168 234 228 263 10 147 267 246 155 116 189 161 297 264 193 139 60 153 26 149 266 65 199 17 197 298 92 16 48 281 230 271 297 69 153 43 243 71 284 47 197 18 285 216 155 183 109 285 196 283 87 83 18 22 60 296 104 297 49 84 152 55 161 212 290 145 253 188 102 207 234 48 217 107 212 190 6 242 237 254 281 218 246 24 187 125 50 26 279 25 149 201 47 67 299 216 184 275 215 92 198 10 240 29 51 181 170 16 143 115 169 31 77 250 75 171 155 49 11 65 100 140 277 50 289 275 66 257 159 177 23 64 2 43 76 224 201 272 290 284 246 99 246 72 207 113 91 131 286 28 41 152 269 210 34 102 66 285 92 150 79 229 163 94 212 131 212 124 108 134 261 215 141 19 253 94 291 271 248 86 236 78 65 155 25 160 28 283 119 57 229 107 13 83 286 225 171 304 239 168 235 130 188 282 11 241 241 126 241 57 254 218 181 55 136 41 47 264 112 149 154 182 274 296 162 216 160 256 28 193 261 47 121 194 171 69 182 195 79 199 109 44 182 199 263 120 55 76 48 141 185 32 3 17 68 143 108 82 35 266 168 275 178 181 283 95 96 62 10 60 110 196 38 119 236 281 131 105 31 202 202 232 51 67 256 219 1 257 240 279 167 106 262 231 229 258 83 93 211 106 161 133 158 77 88 49 77 183 260 125 11 87 69 251 104 214 259 119 141 224 71 227 168 242 3 147 295 50 300 6 25 38 270 158 130 264 189 96 135 4 214 129 270 190 248 252 29 175 44 1 294 264 157 44 78 87 264 23 222 195 253 80 270 225 3 290 77 85 121 109 33 124 21 54 228 292 132 38 219 258 198 129 110 242 175 144 217 213 37 262 162 142 108 92 16 123 142 8 44 72 141 292 9 124 148 282 247 25 103 17 260 15 115 263 254 101 63 138 170 271 37 145 72 198 124 127 80 63 146 285 302 226 218 19 22 294 91 145 266 158 233 60 221 85 7 192 100 142 51 15 211 269 69 146 269 10 12 153 99 169 29 269 296 60 93 183 260 102 269 132 236 198 116 12 30 13 202 221 81 161 150 182 207 17 16 160 265 45 257 119 149 267 75 142 262 28 12 153 154 171 74 296 97 187 276 191 21 287 100 241 164 234 298 162 249 151 201 20 238 12 63 76 139 107 242 283 224 198 11 236 266 16 129 89 114 20 105 163 200 148 233 102 162 223 265 122 150 178 145 268 266 83 193 89 35 204 97 28 181 210 212 95 237 294 67 206 158 179 265 265 72 181 23 251 207 148 189 62 267 96 294 286 235 234 303 33 283 15 203 14 128 180 145 73 61 293 15 133 249 70 120 123 303 278 108 254 273 191 12 120 92 203 251 96 116 273 12 150 143 271 255 24 184 302 176 98 10 291 122 167 299 207 34 197 77 281 290 68 178 261 164 127 243 292 213 171 174 270 69 98 289 87 37 125 43 51 98 68 19 65 235 74 77 246 53 223 110 256 153 96 52 300 72 242 304 216 15 70 246 204 86 98 34 65 274 86 231 181 39 148 122 66 237 221 7 259 268 28 191 266 127 290 27 189 82 300 18 185 261 299 175 57 190 171 285 91 101 75 298 175 29 223 304 127 121 167 130 287 106 264 152 244 192 122 208 152 3 83 29 281 115 60 273 197 259 102 35 282 176 12 185 84 254 284 185 269 90 59 74 254 221 50 225 152 248 109 293 154 125 278 260 277 98 168 215 80 266 65 24 263 260 52 267 221 260 65 111 179 163 178 96 143 156 207 300 32 1 244 262 129 212 182 34 44 105 52 292 211 148 20 101 251 285 27 279 77 181 9 70 169 290 222 89 185 226 125 54 3 48 146 139 128 270 56 239 50 38 250 234 133 302 113 107 122 110 221 200 302 171 32 23 75 142 69 276 244 258 302 287 290 141 46 18 279 258 222 38 55 89 128 156 70 60 181 15 10 136 22 265 198 88 62 13 11 33 210 56 121 241 195 194 293 241 186 6 263 72 95 302 123 224 32 83 191 262 278 14 160 82 26 242 155 21 281 111 231 145 41 282 196 134 152 95 131 49 239 157 16 298 282 68 24 18 85 232 226 62 294 109 196 52 280 188 271 198 118 113 90 28 87 138 53 28 238 179 9 55 225 77 11 25 39 56 120 180 122 9 147 282 246 290 282 61 156 106 208 40 136 280 80 165 178 87 96 269 117 294 283 66 23 105 188 125 51 189 100 220 248 3 44 20 48 156 157 240 134 279 284 228 234 138 83 147 68 219 41 38 36 162 114 301 172 125 63 27 83 253 83 121 261 273 168 97 213 54 210 43 40 182 200 11 92 288 160 133 108 155 50 45 117 122 73 52 260 160 108 109 258 9 142 296 158 119 81 148 40 202 235 202 58 28 108 122 248 269 105 180 253 280 28 283 118 231 227 52 118 221 50 9 266 45 163 157 140 119 117 226 94 125 10 237 194 172 259 261 49 242 90 198 143 212 83 45 138 122 168 57 32 4 230 273 252 240 94 38 77 150 302 279 149 110 107 265 210 236 146 231 211 110 3 301 178 233 77 236 5 191 139 98 136 198 90 182 238 288 246 276 53 81 201 32 254 188 115 231 166 117 239 142 122 124 300 8 6 129 119 9 33 110 66 129 68 104 40 15 80 199 162 216 287 150 231 183 36 105 153 238 188 65 116 263 68 202 56 161 126 162 128 7 11 213 249 121 36 76 62 110 31 167 139 174 290 72 11 215 175 260 261 91 272 95 81 13 297 266 195 286 163 44 154 171 34 244 21 282 160 285 29 147 78 251 121 259 253 41 110 69 135 176 133 50 103 256 56 294 134 135 37 218 239 282 204 99 26 140 231 259 165 82 88 37 221 262 96 61 246 84 29 289 246 57 249 36 253 51 243 279 175 44 254 46 254 203 187 132 220 22 119 21 107 177 80 199 60 181 278 285 292 147 235 21 277 250 250 164 267 49 134 38 30 28 193 282 129 81 43 121 191 62 258 143 41 34 147 89 83 4 223 279 296 184 128 288 135 114 113 254 25 156 257 75 156 175 179 12 203 77 99 128 289 238 202 226 42 168 261 73 220 136 24 304 90 173 189 240 152 22 270 191 198 234 32 169 47 168 141 31 235 158 210 16 53 260 171 243 203 142 47 37 257 22 250 283 94 239 176 89 264 150 303 73 174 249 103 222 226 99 51 66 162 22 39 287 110 190 107 1 169 15 140 301 66 113 297 169 52 246 206 214 1 107 147 51 125 155 74 75 35 236 32 270 99 152 208 167 286 274 206 275 265 86 209 148 242 170 101 212 31 18 260 287 267 278 47 155 106 84 50 113 41 256 211 131 242 84 295 64 170 223 176 190 47 179 53 21 34 8 229 65 291 264 7 34 176 175 280 173 39 66 118 293 132 15 117 201 255 302 125 166 98 14 160 252 200 297 6 145 203 202 267 265 144 289 105 55 281 268 98 46 170 258 234 27 244 55 122 55 124 116 235 66 59 104 293 294 47 290 61 84 171 88 189 179 161 8 220 125 210 95 57 195 237 88 34 200 167 130 132 60 259 27 133 5 205 114 142 50 143 27 156 111 44 28 184 223 121 101 219 283 133 42 25 63 33 275 1 115 277 125 37 207 154 174 222 95 196 175 184 239 31 252 297 22 245 187 1 276 168 53 91 22 188 171 156 271 8 218 145 9 150 282 177 131 173 134 217 146 24 156 52 224 192 9 266 187 123 292 116 215 149 185 24 124 108 75 241 80 57 163 304 133 219 267 278 186 105 107 46 149 185 7 35 257 161 30 154 165 74 87 43 212 302 73 293 290 23 5 218 27 33 145 293 297 144 90 299 160 104 191 72 6 14 265 217 95 263 226 59 212 110 207 298 128 37 145 293 282 145 76 79 202 134 50 255 124 192 252 16 44 243 111 291 177 197 71 228 297 236 65 254 120 225 154 36 227 8 251 289 138 302 30 102 228 94 8 253 278 84 29 75 63 129 185 129 267 228 30 253 8 176 269 278 185 57 118 58 31 157 208 141 104 195 243 153 214 112 35 4 68 164 235 40 10 118 138 20 227 70 105 268 279 157 134 176 2 96 182 220 141 158 299 57 81 69 4 221 247 73 11 115 79 297 18 229 10 130 61 213 292 214 127 226 65 104 234 244 220 229 172 271 142 245 166 198 302 9 198 217 226 72 67 102 49 33 262 139 128 56 95 223 68 22 34 283 282 268 252 32 56 55 63 166 257 78 149 136 94 32 281 115 104 47 116 227 88 295 194 218 18 138 224 182 186 30 228 91 236 54 32 269 81 147 118 192 68 222 52 160 64 273 133 2 49 64 131 156 189 147 86 48 54 117 246 60 222 77 71 289 137 50 111 21 81 240 218 246 209 133 68 164 8 197 185 15 245 298 280 238 227 298 185 258 55 221 93 165 93 9 238 8 81 280 215 238 220 199 261 118 48 42 73 194 83 81 212 115 45 17 148 268 47 134 166 236 168 2 240 164 225 117 241 132 70 102 257 299 137 237 95 165 30 111 258 135 168 215 91 116 225 57 64 86 146 20 24 151 116 157 99 146 74 63 188 56 302 30 293 145 174 148 77 152 72 263 66 265 130 229 23 136 15 170 128 176 88 52 193 263 283 66 117 285 181 217 27 289 300 105 109 167 205 17 75 179 199 128 166 63 100 140 116 297 15 31 289 89 140 216 54 68 269 49 71 299 257 45 66 142 170 293 113 105 292 154 289 243 188 149 200 77 250 235 228 285 266 184 75 35 199 92 248 204 254 182 302 8 301 114 56 303 121 82 119 283 152 281 68 298 94 149 118 151 48 176 224 71 192 289 57 12 275 79 72 235 280 298 233 285 97 206 275 54 258 146 39 251 269 111 73 183 235 275 159 73 259 197 296 178 216 248 91 88 153 261 147 214 278 200 23 154 239 194 48 220 228 260 130 211 268 291 238 249 22 65 203 296 128 39 39 295 102 133 40 117 129 97 130 236 64 135 116 263 84 25 51 91 265 160 74 8 283 213 81 231 88 199 265 12 67 92 290 8 31 103 178 68 211 203 107 160 34 239 144 136 128 84 138 248 247 219 268 80 247 295 237 249 220 168 102 8 259 286 171 64 267 236 238 36 219 88 111 19 131 12 91 273 293 121 140 185 49 65 56 173 284 62 8 40 94 88 126 113 37 23 79 211 157 90 40 107 273 101 280 233 304 140 177 133 198 132 125 167 68 241 255 271 133 67 246 155 166 23 136 72 286 58 52 81 255 300 34 122 59 155 32 291 138 93 79 143 234 289 201 107 50 138 195 158 135 56 34 6 104 260 66 175 212 101 223 52 70 202 236 124 252 256 248 176 203 286 122 192 128 293 212 146 87 250 116 72 56 256 144 139 189 101 95 91 84 57 248 8 29 180 283 304 180 97 183 28 304 104 184 100 136 100 272 43 44 295 33 133 237 217 174 225 100 285 26 97 105 180 265 121 66 284 252 270 14 35 116 161 63 225 290 233 237 105 47 219 89 50 293 161 192 270 8 148 241 149 157 123 253 67 265 50 117 17 216 13 136 159 73 301 299 94 119 231 257 65 49 266 127 189 225 282 216 12 163 262 244 132 150 274 228 174 55 205 60 303 36 304 172 69 207 15 264 191 169 260 28 244 149 29 153 215 174 255 188 103 221 67 74 118 92 241 175 103 216 164 162 35 275 95 149 59 249 169 173 272 56 12 282 54 28 28 301 13 97 169 90 75 116 76 188 172 76 94 108 298 117 152 219 182 304 11 292 50 211 110 212 87 33 235 265 110 67 79 160 83 167 139 112 44 261 107 224 65 218 275 93 251 7 90 246 233 244 240 102 188 157 192 178 35 252 218 170 227 209 167 297 146 57 132 293 143 3 124 159 124 298 293 151 86 102 106 49 19 238 216 182 190 120 213 208 51 237 18 241 244 274 148 268 141 176 144 231 60 145 212 212 108 229 280 64 10 16 140 131 242 151 193 210 71 250 135 20 46 141 126 289 72 123 233 159 222 97 162 200 23 292 264 125 88 97 81 275 169 111 205 236 271 173 44 144 140 229 113 49 58 134 206 260 39 233 82 135 298 254 50 198 122 117 223 182 259 38 100 103 180 104 298 245 166 42 143 254 101 284 3 100 291 97 88 298 86 276 195 299 182 208 75 204 206 10 174 194 275 189 187 14 155 22 100 53 148 9 2 268 90 15 255 216 271 231 259 287 119 271 242 214 289 207 157 260 117 133 125 68 42 79 216 245 203 110 42 301 189 262 14 287 94 245 65 142 160 270 3 177 94 1 76 25 303 85 20 109 179 260 63 167 238 81 253 300 134 200 117 264 5 228 50 222 60 203 145 17 253 179 22 266 233 301 239 5 172 127 50 120 131 63 239 291 289 298 254 197 102 62 158 251 61 134 19 118 166 9 24 260 7 267 96 15 65 109 16 103 235 88 264 186 8 211 149 240 168 269 124 4 59 11 205 258 156 164 173 157 285 177 167 91 225 241 4 1 82 102 275 210 301 115 147 101 241 283 229 74 53 285 283 29 46 283 104 267 38 180 132 241 293 129 280 207 100 172 4 14 21 14 13 205 24 239 265 239 161 170 252 53 285 188 26 78 197 117 199 239 151 141 269 134 14 211 20 160 75 232 84 203 62 196 50 293 250 126 119 262 228 179 127 80 73 78 133 81 61 240 204 202 194 124 159 112 215 299 154 121 102 272 253 293 159 127 193 280 280 264 206 194 246 149 137 251 285 88 161 226 246 170 38 89 119 227 134 284 143 198 141 177 297 6 98 107 73 131 153 60 182 262 196 75 171 36 106 174 11 282 248 6 285 16 35 218 20 44 112 76 112 179 1 247 101 49 281 279 246 129 149 36 290 203 200 83 61 217 186 257 62 149 114 257 187 92 281 113 144 4 200 99 19 259 180 265 228 85 9 289 249 35 276 219 171 60 133 178 161 69 146 58 51 194 1 304 91 166 158 58 236 129 188 198 237 145 248 269 254 173 57 266 251 154 170 255 53 110 43 90 211 128 239 213 46 86 204 78 218 253 275 28 176 222 158 11 272 72 190 283 67 161 250 69 275 298 213 242 114 134 216 221 39 253 156 297 262 72 186 105 148 54 218 93 241 114 105 202 18 250 303 170 145 38 275 170 143 151 193 295 74 300 220 283 90 177 84 207 74 14 7 200 260 170 87 213 41 139 28 185 267 24 159 107 133 184 78 94 258 44 148 262 9 92 69 146 69 124 186 294 303 125 137 164 16 261 291 181 92 185 180 44 153 146 88 178 190 262 107 298 99 27 270 304 14 99 302 139 114 84 125 39 145 135 110 23 20 203 302 43 261 261 46 46 135 180 50 140 141 117 238 66 252 219 295 95 127 206 18 278 92 18 49 304 114 32 71 153 97 230 278 9 9 238 136 103 225 188 12 275 115 145 247 91 300 125 269 89 112 164 70 48 106 35 89 202 113 147 104 206 79 180 92 294 213 33 287 59 235 219 142 53 93 285 50 254 175 275 150 294 128 64 233 170 168 82 100 301 136 286 53 238 19 231 298 61 284 140 284 174 213 233 242 106 249 16 125 137 32 123 116 176 97 198 179 303 259 285 272 184 203 255 109 237 245 60 283 268 129 171 211 80 159 258 31 110 300 232 58 98 303 95 121 147 15 111 276 204 102 179 183 148 227 14 118 216 137 110 286 44 91 179 182 272 170 174 227 59 22 175 133 172 213 286 202 83 52 262 57 277 183 109 87 262 100 244 192 9 191 218 267 118 20 4 109 295 65 124 207 107 73 123 221 115 92 94 65 209 11 101 151 278 111 71 135 29 196 53 268 281 53 256 119 50 219 211 10 111 294 108 59 290 88 1 103 221 150 44 237 296 118 281 4 15 145 27 80 46 43 89 274 140 194 167 8 123 73 184 203 130 167 279 105 236 31 148 145 133 19 196 276 248 175 22 216 14 87 133 5 112 234 255 153 115 294 26 170 300 301 285 25 140 7 301 145 304 101 135 8 262 247 242 223 122 281 255 15 181 288 40 116 101 66 87 289 255 230 130 274 250 2 199 136 138 150 125 241 297 167 94 219 276 42 106 71 105 46 77 118 224 147 205 16 179 178 113 184 259 153 123 147 289 192 185 60 25 285 236 172 46 182 216 62 184 245 189 131 253 107 265 38 293 236 73 89 134 5 301 6 81 104 165 64 283 264 23 222 190 266 191 175 189 104 288 263 244 213 140 209 119 270 175 80 96 96 198 203 208 15 145 210 264 267 253 53 242 108 235 154 303 198 253 160 291 248 297 90 37 61 279 145 241 33 10 99 190 15 235 61 290 193 25 230 158 287 47 100 207 238 188 201 101 297 132 195 149 147 201 99 304 251 115 7 208 212 302 186 148 66 132 254 248 247 106 19 277 74 224 245 220 152 265 98 55 201 243 122 132 140 285 238 72 285 192 94 55 53 263 12 203 297 84 268 287 79 289 284 147 17 191 84 83 177 237 77 119 28 124 151 78 209 143 264 185 110 39 137 69 140 242 277 64 182 236 97 247 292 215 234 266 83 173 284 72 26 268 287 170 181 202 126 211 165 193 264 291 119 196 118 83 243 39 294 13 206 216 52 12 271 285 278 14 170 189 117 249 202 248 20 240 153 45 16 55 46 68 214 272 245 117 18 133 161 22 198 107 88 120 93 56 39 165 162 248 246 235 147 294 251 57 173 43 31 292 135 213 72 220 193 35 227 296 86 295 262 204 148 215 163 246 10 244 186 105 143 85 303 288 215 146 242 35 129 271 155 86 93 26 222 112 217 287 219 201 116 135 43 83 198 201 175 255 156 98 27 59 262 247 280 45 31 297 20 211 242 1 118 272 133 92 170 266 245 70 13 166 52 156 171 55 254 138 1 294 182 240 265 131 82 242 266 45 233 261 194 101 277 285 203 38 254 189 58 101 268 225 76 51 48 280 154 203 212 39 163 290 279 28 249 6 178 294 234 53 289 141 10 159 284 254 211 240 159 55 77 186 73 144 265 291 80 28 226 87 100 281 64 272 206 81 142 170 10 250 231 168 61 299 211 140 233 38 1 163 67 40 155 287 253 238 250 101 293 58 168 25 275 212 3 125 119 263 224 237 294 39 265 88 191 168 123 148 146 279 274 297 36 87 114 136 87 143 141 178 271 255 66 61 49 46 64 245 48 104 156 290 196 172 78 29 25 195 177 294 225 72 151 225 156 7 255 297 108 51 287 111 201 4 83 99 268 280 117 173 277 173 256 55 206 36 208 134 9 7 205 34 3 255 38 290 86 236 238 110 143 294 2 194 176 165 134 148 119 187 287 250 137 270 182 220 303 258 209 105 195 101 61 7 78 18 97 17 107 219 176 185 195 283 158 173 254 133 140 145 7 149 107 273 7 213 6 196 58 284 251 91 43 21 79 29 148 130 255 298 7 68 229 203 160 72 100 127 2 14 69 35 199 181 3 67 301 270 119 215 191 267 251 200 148 194 1 214 174 137 196 57 38 41 51 262 279 185 41 101 66 183 304 171 256 94 192 192 29 82 89 201 76 138 224 249 4 179 245 197 173 76 303 281 209 263 34 35 68 228 287 30 229 30 103 90 273 275 156 93 89 91 246 213 127 95 231 243 17 49 99 255 91 156 162 20 6 152 103 1 69 77 24 299 89 74 224 205 31 119 268 292 269 25 16 172 54 58 227 80 203 155 25 148 113 251 275 277 178 175 272 49 55 207 168 219 61 188 138 62 249 268 178 201 44 179 85 210 267 101 270 94 127 233 70 84 203 286 74 50 282 240 236 257 253 117 242 161 102 126 63 42 78 70 39 304 192 244 288 131 30 106 54 99 106 199 102 86 220 295 111 279 270 125 64 54 290 156 40 55 20 104 47 91 206 270 222 159 160 289 153 15 294 260 215 182 145 184 5 54 278 163 278 87 139 75 270 42 234 294 146 175 237 256 248 147 146 214 153 272 127 168 247 42 192 99 261 147 37 20 303 274 90 104 47 294 235 65 231 134 212 20 265 121 279 261 201 101 185 118 246 67 252 255 204 270 133 96 102 160 100 279 96 103 71 115 287 42 183 271 59 228 129 292 156 226 224 122 254 174 167 286 35 258 82 197 56 161 1 122 247 8 33 247 15 76 54 33 144 235 258 149 286 87 101 280 241 157 229 58 143 257 49 211 95 119 28 212 225 106 31 96 19 11 176 24 304 263 19 72 263 214 290 218 122 45 238 83 62 117 194 255 102 25 60 33 171 279 68 31 257 256 267 13 47 12 94 296 78 255 54 279 163 218 253 212 251 275 164 60 21 301 68 172 93 224 179 131 152 267 264 34 201 299 96 151 52 76 130 206 96 252 76 53 246 160 104 161 178 44 125 84 165 10 182 283 71 252 212 96 154 98 60 238 297 153 169 244 282 188 192 275 233 266 54 271 149 67 291 192 304 252 127 141 114 180 215 255 127 185 181 229 116 303 62 90 223 109 85 265 46 222 183 2 78 49 13 291 122 152 223 108 49 44 131 28 184 67 163 188 24 59 19 60 176 36 17 41 98 287 259 229 165 103 289 166 186 227 266 302 78 75 17 282 244 216 303 232 144 259 124 150 95 12 165 251 23 74 224 104 298 47 75 69 67 191 222 226 202 19 223 207 38 240 291 221 200 91 178 265 300 25 18 174 159 215 68 99 219 36 2 175 220 259 248 146 1 275 83 110 236 76 221 29 198 153 147 294 124 46 189 286 68 59 101 205 5 164 148 33 91 55 81 232 245 298 160 203 182 36 193 222 161 25 52 206 25 35 277 140 227 267 136 185 83 47 58 59 140 107 146 227 292 277 155 263 281 247 137 261 238 233 48 265 206 268 94 245 258 112 47 4 197 241 158 9 215 17 197 67 252 80 37 240 96 184 240 43 144 74 278 124 100 159 149 186 182 60 162 269 287 37 105 106 32 169 181 16 294 196 132 200 203 51 58 38 37 213 153 236 18 275 8 226 60 130 57 199 236 282 124 204 297 75 71 289 146 46 198 32 236 8 271 14 99 154 72 45 32 300 75 180 238 222 240 295 33 214 139 303 149 285 144 81 166 107 27 284 251 291 35 196 170 216 53 173 58 277 51 248 252 51 157 133 149 54 11 54 240 1 219 11 125 207 50 161 124 142 166 260 95 295 215 68 221 54 107 142 179 248 3 91 163 59 294 250 189 51 96 196 285 297 75 71 244 228 268 262 201 6 289 94 242 240 211 159 144 125 167 147 166 101 129 146 263 113 237 192 247 65 16 270 102 127 293 46 189 287 152 93 38 214 145 20 60 17 111 279 52 5 180 274 204 33 204 195 158 6 159 278 116 250 16 191 137 228 47 61 188 42 216 41 180 124 222 183 32 25 107 106 67 91 63 98 245 272 33 202 268 75 277 127 234 94 24 195 113 64 247 102 122 199 229 11 77 148 195 285 79 56 246 137 262 28 163 148 119 71 57 32 98 271 157 107 9 133 294 221 298 200 78 26 104 235 9 129 18 270 279 265 149 116 44 99 206 161 186 45 234 34 285 9 88 280 26 215 275 144 35 68 216 67 47 177 168 178 75 299 225 90 255 151 94 16 33 218 175 157 256 52 95 203 54 129 284 102 117 36 171 110 296 291 256 242 88 46 64 45 135 72 142 122 272 1 23 92 246 124 253 99 145 270 131 24 61 71 304 90 164 13 221 206 199 233 126 163 200 25 243 157 84 61 256 290 260 233 228 63 70 206 161 177 227 288 121 300 133 105 223 149 281 123 82 234 26 270 178 74 116 111 34 23 184 161 148 156 193 201 71 293 61 188 131 208 190 9 43 50 186 174 10 279 215 302 270 154 180 300 155 158 218 77 73 48 152 110 234 46 174 139 12 263 88 243 16 107 177 237 150 75 55 133 167 258 217 44 300 152 41 178 104 13 289 162 229 113 303 40 271 86 99 13 217 2 266 241 210 69 203 41 32 202 2 22 32 40 76 113 192 121 81 31 271 154 111 74 252 244 60 254 81 32 258 22 129 184 199 163 98 258 197 200 126 132 194 127 285 24 208 207 224 144 48 12 37 297 138 134 271 127 121 149 31 285 153 235 29 286 188 185 236 173 174 66 39 126 29 114 121 252 128 216 206 62 49 171 108 95 217 274 162 35 203 160 251 141 37 137 201 191 198 83 38 296 291 29 253 73 213 252 55 216 115 132 288 135 53 118 286 21 257 230 32 197 110 197 130 277 177 265 278 85 76 157 235 64 69 84 80 87 192 162 239 294 195 300 225 89 227 79 27 87 257 2 268 150 16 152 72 226 231 263 247 90 8 165 303 284 270 122 158 64 94 198 129 92 86 97 280 21 256 93 299 221 7 67 233 290 53 291 284 102 225 9 55 224 32 142 10 278 67 108 180 9 30 281 185 167 281 189 187 258 50 200 144 154 50 236 91 296 190 111 296 203 219 44 23 123 44 240 115 175 128 203 60 284 147 299 239 34 145 198 193 15 12 289 175 295 92 41 240 148 296 233 126 34 91 179 242 222 203 39 130 12 256 115 206 265 252 128 284 257 165 115 184 48 114 55 35 237 228 64 111 258 279 142 288 131 202 193 129 205 48 237 74 188 63 296 274 254 300 171 198 224 288 220 162 179 241 198 39 3 153 229 192 67 255 76 61 258 146 243 121 250 14 208 170 55 38 15 56 299 134 296 224 122 103 158 184 217 11 218 35 21 269 178 16 163 149 174 240 102 173 16 126 94 72 1 86 249 23 188 110 269 103 215 135 290 106 169 11 152 213 284 41 53 60 83 161 132 110 293 212 95 285 182 93 192 153 275 18 122 189 136 73 150 167 154 50 205 28 66 129 217 246 204 197 208 25 41 296 241 123 268 24 44 37 221 222 230 211 101 93 274 171 183 268 279 63 93 285 189 11 173 60 86 5 96 125 72 209 277 285 71 104 16 35 227 199 99 24 48 3 229 17 291 84 234 260 85 31 179 148 148 278 100 172 178 160 254 194 91 244 276 124 21 22 126 274 133 94 234 201 45 275 11 14 136 194 140 20 8 266 136 68 87 55 50 78 57 280 273 260 11 284 138 9 250 303 276 160 191 53 77 206 293 60 5 227 206 172 35 4 114 43 53 247 125 64 38 297 62 20 280 304 128 78 100 288 124 236 171 192 96 268 67 128 17 124 226 151 300 25 161 189 270 8 73 63 26 104 170 296 278 250 147 253 298 213 238 288 26 74 59 140 211 286 6 157 226 8 28 195 267 105 271 269 270 149 204 118 81 163 239 63 165 66 192 123 135 242 196 134 229 260 208 58 147 202 268 264 203 100 144 56 240 58 215 80 96 213 150 208 32 117 155 32 182 264 249 100 98 173 290 273 140 249 197 256 133 250 99 104 277 132 65 11 231 33 285 186 10 294 248 116 266 212 20 130 81 83 33 23 141 82 207 148 88 21 93 95 174 166 66 57 240 138 142 85 35 60 129 176 125 143 271 273 42 183 81 244 195 169 142 191 229 55 227 222 146 121 35 240 101 287 274 107 131 67 248 284 21 30 26 46 292 153 285 112 207 64 227 4 52 35 201 43 100 102 247 254 31 129 261 258 90 161 123 216 139 232 34 286 169 127 65 83 84 203 147 125 181 94 87 28 165 267 190 43 139 80 146 231 261 237 133 182 149 43 21 275 20 198 157 278 58 2 148 285 216 280 209 23 25 183 91 184 88 263 29 138 88 47 280 227 131 206 84 138 183 153 40 226 79 275 189 136 116 48 154 270 21 160 126 179 215 207 139 263 43 32 141 4 67 155 21 286 26 125 107 239 264 49 289 1 56 76 123 60 234 143 64 63 227 85 18 285 36 74 234 34 295 128 65 97 186 22 2 160 150 268 148 26 158 200 88 65 7 203 182 78 130 159 142 182 21 48 285 14 99 30 169 284 184 178 238 174 143 97 59 267 216 74 131 122 167 134 77 279 272 135 234 100 289 118 43 58 144 32 246 252 251 162 152 172 230 129 257 265 70 106 24 68 183 300 289 248 1 248 301 188 281 187 259 296 83 264 203 236 236 175 148 166 197 174 213 260 134 127 288 220 72 277 49 82 46 289 141 122 196 282 203 137 270 57 113 150 172 301 291 40 41 97 80 152 27 241 187 256 123 193 191 113 154 58 270 23 16 68 139 60 235 78 283 168 184 269 153 147 173 210 128 240 20 189 229 39 303 66 108 193 11 124 71 69 79 40 31 226 105 257 103 173 130 170 42 214 102 127 164 228 176 140 41 266 234 209 286 153 291 156 289 92 284 224 176 167 163 99 42 272 90 142 217 85 91 84 274 191 214 129 268 212 104 10 116 150 41 27 35 227 110 211 181 72 285 174 88 26 229 141 7 239 144 14 169 263 109 28 227 66 173 303 269 43 126 20 108 106 178 188 148 124 1 141 259 67 286 301 137 52 180 206 219 207 302 195 245 250 223 165 19 209 275 56 6 208 41 68 289 278 147 82 275 142 262 208 235 190 212 161 178 124 32 199 65 220 117 34 276 104 161 89 180 3 174 285 239 7 82 304 241 37 12 70 150 14 263 300 63 224 259 91 148 186 155 36 256 171 61 24 40 122 293 180 187 195 93 23 12 87 98 30 66 287 76 8 27 70 297 301 203 76 26 301 24 251 115 254 246 199 168 184 64 130 95 149 120 14 77 135 166 135 129 119 52 263 272 87 18 43 302 202 98 177 259 290 208 204 260 137 198 200 212 103 231 172 128 184 109 10 231 190 225 155 19 147 196 116 191 81 174 230 300 136 148 126 272 12 138 104 165 96 210 96 210 170 127 189 160 224 258 148 243 57 34 245 52 265 247 97 283 254 87 257 244 206 50 98 85 133 116 45 220 100 187 206 89 208 259 27 297 281 199 197 289 225 196 183 175 19 216 245 184 88 24 151 48 150 280 220 148 155 194 87 218 202 100 200 193 42 296 278 233 253 144 226 133 123 4 237 116 72 228 210 204 296 116 115 250 38 205 239 182 138 288 62 148 135 7 177 199 287 216 152 212 134 240 125 179 89 177 21 83 247 226 122 177 116 130 273 214 240 72 214 42 285 53 46 49 60 192 271 239 270 189 204 213 125 79 33 34 301 22 148 30 237 89 24 96 83 155 208 239 82 137 49 24 60 231 207 268 269 44 29 99 130 218 139 135 12 94 3 236 299 172 83 182 13 83 50 149 196 76 255 297 37 187 251 127 153 259 82 52 117 208 5 111 130 130 124 223 10 130 149 246 121 98 273 241 142 138 263 244 7 94 192 68 295 107 58 243 244 172 128 63 298 23 214 112 11 277 36 216 216 268 265 274 209 116 289 300 9 87 114 298 176 106 138 224 233 225 242 28 217 10 236 247 86 252 13 64 301 178 125 109 55 22 61 274 160 208 94 102 187 39 141 48 215 271 4 188 216 64 253 260 255 147 185 278 299 118 41 302 279 237 290 224 124 87 243 31 99 195 198 41 201 239 161 299 291 289 86 115 188 71 285 139 194 114 259 30 229 56 106 76 226 182 239 3 19 179 151 290 280 140 215 224 256 179 228 168 292 229 173 114 232 294 105 193 181 110 273 145 250 40 279 214 39 255 90 197 284 187 218 219 189 141 59 131 300 124 258 162 194 128 44 134 250 50 302 69 3 190 210 186 47 179 34 183 200 278 74 185 124 98 276 208 235 142 144 1 72 119 148 133 92 58 42 150 252 290 290 175 285 55 105 13 94 291 189 25 243 188 289 83 109 247 254 226 130 81 114 55 276 299 277 9 204 75 56 299 233 279 50 23 6 191 281 125 1 44 204 112 147 141 162 26 303 296 272 299 67 209 290 93 100 152 280 224 9 300 36 224 105 285 209 257 266 64 29 111 94 150 20 233 27 191 300 63 113 253 163 3 166 148 111 172 167 106 302 237 47 67 264 108 31 265 28 264 39 250 223 206 130 117 89 253 100 213 85 97 263 236 120 269 229 55 8 107 237 161 161 151 192 295 69 211 192 139 157 160 56 105 61 231 122 220 155 268 130 176 282 73 237 117 267 23 23 163 273 86 109 52 264 220 187 261 209 117 182 159 266 133 297 209 50 132 298 131 152 167 82 140 69 233 65 142 18 189 244 136 70 96 238 86 7 264 137 96 166 293 151 164 204 28 104 57 184 92 237 39 282 7 49 11 208 27 169 58 171 231 300 269 243 176 246 140 220 123 43 100 1 188 71 162 68 115 74 98 196 80 271 230 62 286 204 101 27 139 12 35 55 97 114 78 219 244 251 108 67 127 275 237 55 254 187 19 43 11 22 299 67 15 63 274 84 231 83 288 17 295 48 20 23 236 39 210 218 183 188 298 121 11 144 220 240 86 145 57 166 78 104 123 77 270 55 145 27 198 55 281 129 167 191 148 82 256 196 81 217 266 174 54 127 57 7 237 264 236 207 117 14 270 272 58 239 61 205 240 11 179 171 107 164 170 156 14 13 219 176 251 255 290 50 70 85 15 277 187 150 81 246 90 225 296 154 281 16 188 35 212 42 208 299 114 136 239 225 100 251 155 218 134 88 96 21 167 216 282 50 17 149 195 250 72 170 136 44 106 12 131 166 8 164 162 43 162 133 288 67 118 108 175 209 189 21 184 298 210 265 142 155 272 120 48 237 3 8 138 86 207 212 230 245 109 128 39 293 217 60 58 73 13 79 2 192 244 238 169 94 201 152 200 282 101 154 100 91 237 175 139 180 241 82 15 39 254 126 113 107 217 36 187 295 157 65 138 231 33 289 26 198 151 18 61 99 164 18 224 213 105 98 256 85 166 159 45 36 54 2 191 111 171 260 56 15 259 231 115 114 119 70 270 90 168 185 117 97 144 80 144 294 128 221 139 84 301 51 31 249 216 148 25 62 20 238 107 240 83 16 253 197 82 229 300 160 72 162 19 115 76 143 240 102 220 247 137 261 141 91 53 266 236 287 230 80 260 186 277 123 248 182 188 165 13 135 247 36 73 81 246 243 171 53 69 230 16 90 170 243 228 68 217 170 196 25 90 215 210 52 150 83 6 53 34 42 211 276 109 133 216 150 6 197 72 54 217 199 268 87 301 277 65 177 107 45 98 70 90 276 168 304 290 59 180 116 151 43 18 138 136 53 175 216 12 201 300 185 81 45 216 147 25 241 62 170 176 65 265 45 254 101 242 53 207 127 58 193 260 95 228 272 22 179 221 85 221 245 157 27 109 154 10 271 24 175 77 73 298 89 133 41 150 34 148 13 191 257 152 33 35 153 192 108 163 133 37 101 202 166 298 88 59 264 100 108 163 294 36 70 168 32 278 150 111 24 14 92 198 222 62 160 216 48 290 227 139 210 139 189 238 114 73 67 101 241 131 254 129 282 191 234 182 109 225 116 197 91 121 279 131 145 12 46 282 188 131 16 173 286 23 34 109 242 179 292 286 299 48 196 40 71 123 95 2 298 64 113 83 156 83 231 249 171 234 56 105 191 302 51 140 254 245 13 133 270 219 65 76 217 100 174 233 220 167 232 79 230 219 169 270 44 58 52 100 66 77 116 116 210 302 201 290 281 128 230 298 273 169 65 156 152 118 121 17 257 155 96 4 277 96 6 159 23 62 303 205 104 302 260 91 65 132 71 226 61 244 233 201 303 197 99 249 193 142 281 136 103 41 264 82 216 239 236 158 90 40 15 299 226 219 263 85 119 197 152 111 261 227 181 75 183 156 276 38 26 5 23 82 49 46 12 251 138 297 228 262 216 208 22 302 284 262 200 197 271 75 6 64 70 243 251 152 42 226 257 67 148 100 300 132 161 203 262 265 11 264 159 22 23 208 63 172 274 174 75 165 217 180 147 120 255 285 25 183 160 95 24 11 159 176 51 62 46 213 88 12 66 249 177 86 257 236 40 131 131 103 181 278 74 21 65 124 130 45 141 9 82 29 247 203 173 271 101 9 304 63 210 162 134 152 259 212 290 48 183 196 286 121 69 264 109 225 274 110 20 131 238 129 189 1 274 233 93 126 300 26 230 168 113 224 23 142 125 120 116 52 264 67 220 185 229 98 75 46 68 114 62 96 120 137 100 62 125 113 22 297 189 87 61 170 277 241 101 115 45 3 45 257 210 227 283 293 126 22 233 102 26 263 30 229 196 245 201 161 252 58 117 25 209 13 10 270 218 108 2 65 123 248 19 200 59 245 103 216 197 21 195 283 73 230 70 190 96 294 13 240 214 64 194 10 215 135 40 31 251 261 158 93 35 185 59 282 47 281 136 23 207 189 66 253 259 190 106 167 142 129 285 122 138 37 168 73 156 154 58 157 278 226 61 220 110 110 138 102 114 33 90 247 199 177 180 100 48 27 63 20 19 61 241 88 222 115 71 145 268 57 36 170 7 117 160 174 161 277 104 11 96 163 266 137 211 83 297 170 295 53 253 87 64 173 83 303 252 186 253 161 273 55 91 205 74 261 75 15 82 122 288 257 198 182 42 213 198 80 8 130 218 261 163 132 201 159 235 246 227 68 241 156 205 257 18 82 43 196 49 287 274 88 171 138 152 159 54 114 153 281 5 218 100 26 217 258 30 223 246 48 145 187 25 254 163 256 211 218 133 113 38 176 44 179 155 247 222 255 262 177 281 100 287 112 114 224 304 283 25 208 177 303 6 106 179 133 289 203 161 188 181 28 12 163 189 177 164 278 62 27 267 214 4 264 9 174 134 211 276 174 1 56 115 155 227 186 169 3 150 138 242 297 240 32 221 79 42 25 66 168 119 11 292 56 41 182 156 244 271 83 197 157 126 88 99 103 304 110 141 139 22 37 291 40 74 206 272 44 91 152 41 105 279 250 61 112 275 56 130 128 153 124 141 210 24 283 72 6 253 33 174 279 44 255 231 284 28 184 142 104 239 230 41 57 226 7 94 63 54 117 3 236 10 300 114 267 194 48 303 127 287 156 281 51 228 125 82 156 270 14 46 39 276 192 124 97 199 118 258 134 95 8 63 57 243 62 50 169 24 292 34 103 126 178 101 72 244 95 119 279 127 4 212 142 224 122 258 151 24 184 229 231 78 153 118 160 40 193 101 219 217 76 14 242 90 111 298 292 184 72 265 144 127 20 155 90 149 108 265 17 130 18 173 150 208 77 171 148 222 84 184 275 11 183 67 116 231 68 180 288 272 244 304 263 259 78 122 298 45 157 55 198 203 137 177 120 299 23 55 47 67 216 163 12 258 86 248 242 215 304 95 141 271 291 279 124 171 46 96 188 215 87 39 257 123 206 40 87 120 285 3 88 301 165 215 238 98 132 19 296 179 78 255 11 20 35 29 237 208 233 220 18 138 57 86 33 28 282 301 48 60 164 43 127 150 82 156 145 191 252 132 267 231 166 164 55 40 272 257 176 124 287 195 274 9 96 40 16 171 262 13 168 107 276 296 293 103 139 146 25 112 7 121 40 291 61 208 253 38 223 181 221 253 203 149 94 42 66 224 147 48 164 122 239 253 279 239 219 246 296 303 141 195 95 57 225 286 138 4 165 262 73 259 251 174 272 256 214 7 303 163 224 131 113 126 170 27 154 195 231 193 227 137 260 145 96 24 57 50 295 118 107 303 202 18 111 42 181 92 98 68 92 5 167 291 218 236 103 32 249 287 294 188 6 231 135 90 238 285 21 19 300 172 284 288 261 38 189 156 189 226 252 137 290 105 248 136 303 63 291 216 278 24 16 199 162 50 232 197 6 40 170 138 261 205 54 186 61 288 160 255 21 243 188 139 169 89 218 181 59 107 115 101 40 139 47 88 63 95 15 204 199 299 269 102 58 30 284 87 232 42 217 278 120 72 158 203 126 47 58 185 185 96 297 15 161 46 227 232 273 165 214 295 146 113 235 30 41 158 68 137 243 43 276 95 288 269 242 244 139 92 81 182 259 269 190 127 153 165 265 200 259 265 174 47 183 189 197 108 274 91 193 2 113 180 125 244 27 184 91 173 12 17 278 163 111 260 278 109 277 275 226 230 80 57 18 191 110 283 41 138 29 6 108 251 179 164 36 34 219 263 15 190 244 200 148 98 243 186 234 87 170 7 38 20 36 30 145 3 4 165 287 82 297 298 215 169 286 15 271 39 43 176 119 214 275 219 58 254 160 159 65 209 88 66 121 183 33 86 38 37 216 228 206 10 255 103 157 84 226 137 80 226 288 63 151 281 94 91 302 172 296 82 169 174 260 156 277 230 152 246 117 115 3 119 202 249 180 203 42 60 40 92 301 277 18 56 64 207 217 69 170 297 191 30 25 207 301 151 34 173 150 62 90 136 224 185 124 132 60 63 79 270 2 102 292 160 39 198 267 264 281 84 70 205 209 281 301 207 128 114 105 98 96 18 191 24 52 43 230 235 130 186 137 231 280 266 129 102 42 190 163 124 156 212 115 198 150 293 136 239 30 181 171 56 204 61 262 19 12 28 142 145 119 207 232 180 49 102 103 181 78 134 170 3 144 112 32 79 66 182 233 15 262 44 72 202 244 274 258 75 78 261 115 287 50 175 290 120 144 90 161 91 10 9 271 249 51 144 38 244 105 287 293 280 192 92 87 250 251 211 192 43 98 113 113 73 128 201 300 258 266 4 134 69 137 97 153 138 244 95 264 41 142 236 114 175 263 205 264 168 122 276 20 46 259 1 161 256 276 219 167 15 19 59 193 156 52 196 243 139 173 122 278 232 114 65 139 102 250 2 80 37 228 108 95 8 253 197 168 223 301 148 237 217 270 252 177 289 292 41 210 238 12 227 100 197 297 261 298 283 113 183 51 81 82 51 1 81 273 301 93 110 291 243 133 233 205 137 255 122 296 64 273 34 270 233 198 141 3 243 52 238 212 139 222 248 260 132 101 190 55 152 273 66 128 53 42 281 104 8 23 193 170 24 175 219 144 230 205 68 270 58 90 142 16 282 266 122 18 214 71 137 249 127 70 204 44 9 138 113 239 140 257 272 232 118 197 285 115 43 9 84 87 92 58 143 63 284 56 257 162 46 297 97 203 227 166 151 134 262 99 260 126 32 245 252 292 160 300 194 100 88 82 123 269 231 280 189 2 164 4 89 79 78 70 191 233 60 163 4 287 204 271 223 281 141 294 248 286 212 133 41 136 134 104 157 25 302 152 4 267 125 142 264 216 32 269 146 138 55 5 158 47 83 141 239 40 155 277 64 296 133 115 210 163 232 230 142 59 67 233 20 174 189 199 136 46 72 183 125 286 12 54 216 22 128 88 75 189 154 151 103 125 52 21 190 88 30 88 51 87 83 254 14 41 76 238 237 74 114 253 135 193 192 238 8 289 299 288 287 172 196 76 163 107 21 83 271 107 220 248 218 34 23 157 102 245 268 63 156 179 128 247 213 156 250 32 267 93 247 299 77 94 282 123 180 192 61 53 109 143 92 84 51 69 178 163 100 91 172 268 46 289 121 194 62 183 268 57 126 134 303 182 251 236 62 94 34 182 174 95 228 181 141 209 8 182 12 111 202 62 90 248 229 300 123 228 12 48 295 84 169 143 304 227 138 251 62 148 93 60 242 29 158 244 96 86 159 91 4 67 86 243 101 49 198 287 267 175 187 80 189 113 261 153 208 267 54 195 273 304 236 176 216 230 303 18 292 56 30 69 162 226 262 79 96 1 20 275 146 187 225 166 55 253 195 76 153 31 234 40 193 85 89 282 252 265 198 134 90 185 238 237 268 147 93 268 164 156 221 15 108 219 46 199 169 39 268 95 108 115 31 214 12 232 44 181 89 54 193 259 200 40 247 124 144 158 224 99 290 110 138 241 143 259 260 54 50 286 253 297 281 141 172 121 28 168 34 81 38 209 179 256 64 222 251 48 241 225 266 285 32 288 142 219 105 15 28 282 69 232 168 290 125 181 212 213 117 128 62 28 49 298 21 63 102 143 57 228 2 183 10 121 231 6 14 155 289 279 7 157 193 117 53 36 31 93 213 80 262 157 276 141 288 203 88 152 211 97 245 61 107 100 145 34 137 285 296 47 48 81 302 142 25 282 183 285 233 213 38 121 20 194 179 55 150 286 139 301 29 264 124 211 22 151 122 194 122 284 213 284 56 245 89 38 188 250 240 244 106 16 248 221 48 170 1 184 93 102 234 34 215 292 151 17 41 296 233 275 162 277 23 195 113 141 293 122 85 65 247 235 26 296 64 170 212 144 180 38 50 154 213 287 233 104 1 53 7 275 251 236 232 278 27 59 251 90 240 275 68 101 263 127 45 288 4 121 27 101 21 283 36 234 103 231 197 297 227 243 141 166 23 281 136 282 216 279 263 222 90 155 214 276 203 109 78 154 240 282 207 255 207 260 282 109 26 278 105 63 192 82 93 212 243 148 20 125 31 72 33 125 1 226 6 203 75 236 45 45 151 42 116 121 178 2 251 217 204 108 275 101 67 25 219 290 34 275 45 211 57 264 275 138 75 145 298 206 244 219 112 131 289 123 202 98 291 112 185 94 128 277 174 62 73 198 287 168 189 213 207 129 35 203 139 138 17 128 200 52 100 210 217 42 179 37 40 150 126 90 11 62 156 76 199 22 47 207 286 95 90 175 263 120 273 269 149 248 73 20 208 119 49 278 243 48 32 16 206 284 112 218 97 78 68 208 148 168 7 144 216 121 261 111 31 105 293 103 59 223 245 22 93 222 30 247 227 42 256 290 199 142 72 128 138 285 234 61 61 67 203 261 181 82 107 8 243 7 66 303 28 51 200 79 179 173 289 67 259 36 119 61 140 21 283 260 21 17 131 213 233 39 159 160 210 82 202 8 130 304 285 93 207 248 151 211 160 276 178 216 25 191 5 178 261 172 107 186 66 57 297 25 10 215 84 150 16 245 73 7 216 188 153 90 288 166 193 238 166 250 1 103 33 273 181 152 88 145 283 23 68 273 290 208 297 273 117 28 38 48 59 297 255 16 289 148 24 268 289 238 141 222 37 40 119 171 36 70 234 170 258 180 193 268 264 280 47 299 272 211 40 183 150 165 185 39 296 139 247 198 173 108 141 95 264 159 244 2 103 258 260 241 144 112 195 167 237 245 243 263 218 304 266 146 267 220 115 195 139 188 169 139 181 64 131 236 169 256 103 32 131 113 194 202 136 195 73 277 297 296 188 249 122 98 273 288 48 114 24 304 290 290 16 72 29 156 132 60 232 90 139 137 14 293 17 246 93 263 175 179 75 120 245 240 101 289 288 301 76 161 217 91 149 242 146 244 138 22 74 273 233 56 199 289 84 4 221 251 143 233 125 142 230 76 51 186 26 301 94 174 66 161 195 101 262 19 9 124 99 249 3 78 17 174 76 23 54 157 12 296 154 74 81 243 175 136 31 159 133 220 96 259 37 101 40 81 142 246 37 113 293 71 289 103 264 150 167 232 215 10 152 109 297 6 278 11 223 78 94 288 81 111 244 101 21 172 217 167 263 89 27 229 91 275 208 291 123 252 105 26 157 164 211 96 280 288 158 192 39 194 55 219 126 38 262 170 140 176 297 249 287 262 246 230 298 273 294 67 168 158 277 61 166 132 304 57 10 118 288 287 277 252 37 16 132 27 238 224 134 16 258 60 76 150 141 277 192 4 276 5 107 264 183 177 119 271 23 96 267 115 165 76 12 9 189 203 166 19 27 169 77 228 303 145 40 163 246 193 199 83 74 181 159 183 19 118 130 38 21 140 132 299 294 182 179 72 185 227 51 193 303 33 56 153 67 304 37 164 297 250 181 220 131 71 255 180 200 29 15 157 6 153 56 49 162 135 28 128 71 302 14 274 242 115 192 262 97 108 99 175 252 86 87 242 291 248 2 301 60 295 80 120 295 250 11 201 119 13 177 12 163 209 175 3 266 99 191 142 270 1 95 171 101 283 170 157 177 48 48 142 250 152 36 100 182 166 40 71 44 263 284 245 147 101 77 67 201 20 178 245 96 223 283 252 301 275 10 127 67 290 16 203 108 70 99 80 296 206 240 124 154 60 270 255 22 111 238 115 160 26 214 88 40 213 104 250 100 282 277 160 107 276 170 201 3 216 140 148 77 31 120 18 124 103 87 165 244 74 296 101 188 290 13 64 191 230 221 21 302 104 222 1 187 196 124 70 139 242 277 247 101 108 298 88 92 101 228 23 226 187 126 271 242 300 138 115 108 116 295 233 70 95 282 186 220 149 145 287 66 79 243 122 188 11 19 194 53 30 270 236 50 123 129 151 246 173 272 88 14 219 14 270 221 138 92 99 234 143 253 200 134 289 222 235 44 13 24 274 281 294 175 177 179 104 221 273 270 147 40 6 20 126 233 37 218 230 76 240 184 280 131 290 24 91 79 258 114 8 117 89 58 29 97 2 41 199 108 46 205 197 176 142 35 110 89 57 135 111 214 89 122 50 148 175 275 145 244 113 83 276 89 212 256 161 300 4 41 150 77 212 75 112 195 13 46 246 91 218 233 71 7 295 153 9 101 24 90 150 244 89 204 276 140 155 285 146 74 15 35 202 259 174 58 99 21 152 44 278 145 30 231 6 69 105 149 297 14 41 51 167 231 4 185 13 134 200 258 160 93 267 26 264 208 211 41 16 197 190 112 172 188 112 42 60 246 241 80 255 278 264 203 152 64 302 42 1 174 277 259 84 177 57 184 67 259 231 304 7 13 144 85 249 123 171 207 269 67 50 193 173 295 163 111 177 252 103 5 219 115 112 165 240 217 116 104 148 293 19 82 169 199 194 54 219 232 227 141 267 106 71 127 81 61 84 38 177 222 132 156 281 41 161 279 58 166 54 203 122 173 105 47 146 67 191 53 159 282 235 85 298 1 88 138 24 103 241 208 44 33 100 120 16 15 199 196 152 122 67 160 247 227 42 275 260 268 253 68 220 263 37 119 186 293 156 130 10 74 243 206 21 216 262 233 240 103 29 6 278 246 152 304 160 300 224 82 104 164 245 163 112 80 299 154 181 83 105 293 205 115 105 42 294 103 230 132 303 223 151 182 283 151 58 29 256 270 94 120 86 123 273 148 104 282 143 183 90 76 38 125 44 279 146 143 271 150 182 153 292 37 145 172 296 70 164 25 158 5 204 197 41 179 260 184 177 216 190 127 279 182 282 64 186 162 204 217 292 283 42 222 150 184 34 7 203 244 300 92 267 128 278 278 295 253 133 222 152 264 90 26 274 49 93 174 164 74 83 225 117 178 158 52 282 64 141 137 60 107 273 246 43 271 278 291 36 259 19 225 224 76 180 149 95 6 133 64 26 277 120 17 169 237 268 296 203 62 168 54 109 235 172 180 131 69 200 92 106 22 103 70 239 12 10 5 101 98 154 16 17 189 165 231 187 2 262 196 14 258 278 210 290 59 208 12 53 119 299 159 6 66 9 282 155 183 177 95 171 221 294 48 263 206 145 154 54 175 187 296 125 248 58 78 66 34 59 254 189 133 155 166 94 77 52 35 51 268 66 39 85 214 62 142 62 221 208 89 292 40 75 97 49 12 93 147 26 269 100 95 83 275 243 14 275 4 19 290 83 216 125 159 82 265 234 222 18 109 97 219 58 26 34 64 68 102 227 7 251 17 79 128 194 239 252 24 286 96 219 63 106 227 25 212 247 160 202 47 145 143 137 16 270 118 146 40 275 303 40 19 253 279 215 191 54 148 194 103 175 258 102 295 24 140 88 241 214 208 119 203 64 260 42 73 109 7 140 200 120 234 6 270 202 56 131 273 239 16 6 85 83 165 30 236 227 173 122 15 53 225 301 1 34 86 244 183 115 187 160 2 5 256 58 150 18 289 148 148 270 183 80 283 65 207 153 60 129 65 69 230 139 245 132 150 203 114 183 203 181 21 161 74 35 84 86 304 294 262 90 279 269 216 68 266 196 148 112 269 213 250 9 29 140 262 143 271 298 38 55 116 227 124 166 142 203 189 205 208 238 230 16 266 31 288 238 263 166 130 65 14 272 208 129 200 217 61 240 44 244 25 286 143 194 112 183 205 295 189 290 236 64 205 237 167 147 173 173 190 278 160 135 272 205 24 188 115 257 105 111 93 131 22 55 204 245 56 214 283 261 66 224 14 195 199 57 201 189 224 270 17 192 292 147 108 195 138 184 79 230 97 146 64 119 82 287 83 206 85 173 284 58 108 145 50 202 203 243 21 120 130 248 243 18 126 108 279 117 175 149 47 150 206 82 172 189 229 196 9 213 120 93 192 213 31 211 290 108 78 195 60 210 175 69 134 34 260 150 193 141 226 89 138 53 179 74 138 298 104 214 299 219 52 222 242 87 87 63 53 145 59 140 270 225 292 304 248 207 201 186 75 243 94 67 56 237 290 202 207 214 169 182 100 299 247 267 38 133 282 84 127 130 71 249 11 223 165 97 199 102 74 260 22 71 12 103 124 49 235 29 252 116 183 153 113 281 168 166 66 233 6 88 195 47 132 227 176 276 66 61 44 226 60 212 171 205 150 114 243 51 60 248 57 25 139 32 85 8 211 200 96 34 34 138 139 42 88 251 12 187 126 170 138 254 173 155 152 96 81 98 37 234 138 62 270 265 159 129 245 37 190 159 73 199 150 279 198 115 98 191 149 24 33 144 165 286 246 163 261 200 146 180 268 303 17 15 26 244 65 52 271 110 16 154 117 249 211 287 304 63 60 158 1 257 225 3 266 283 96 153 86 58 79 107 197 71 281 21 304 46 197 134 55 100 276 131 53 242 206 274 5 194 11 266 84 248 119 245 215 246 121 294 293 211 176 269 2 224 185 53 20 231 175 15 168 73 171 103 108 186 227 244 6 233 196 144 145 13 289 25 95 260 93 182 118 73 198 38 187 210 119 176 55 268 230 184 279 11 301 57 192 194 204 154 84 2 250 145 166 166 302 102 1 277 88 130 164 24 5 124 141 47 213 191 259 260 24 110 292 110 9 169 94 10 276 224 57 168 276 218 221 115 10 148 244 95 234 255 86 301 231 228 134 199 137 74 127 19 133 62 294 99 50 37 3 114 2 13 262 145 178 121 95 222 177 88 282 148 105 88 71 34 11 124 115 246 189 277 161 30 70 112 161 265 189 38 267 122 171 260 6 230 140 163 272 87 131 51 128 248 63 86 301 160 18 131 296 291 253 48 22 259 47 8 292 86 174 184 150 37 286 119 252 266 7 180 152 115 174 236 76 128 37 225 63 199 149 119 2 225 24 155 252 284 205 65 40 53 172 1 62 274 224 278 281 53 87 4 228 15 29 27 77 133 153 213 69 286 77 250 171 284 13 50 259 66 71 117 82 254 200 53 282 225 140 196 11 276 143 130 251 92 250 135 249 296 89 254 31 34 209 210 1 199 280 187 10 106 209 134 202 58 215 4 1 12 121 191 283 274 111 96 192 123 179 298 278 82 40 104 253 140 205 206 270 298 176 164 245 228 304 189 28 161 91 158 113 8 219 193 142 249 183 163 8 111 198 274 223 193 187 55 285 56 268 21 209 4 157 279 281 182 224 262 38 128 49 141 84 12 183 193 222 147 105 296 215 294 76 223 146 77 151 58 268 161 24 63 82 80 90 57 262 196 41 20 172 255 129 220 141 54 77 270 259 243 140 194 129 81 225 181 91 17 53 235 82 110 287 38 217 263 211 224 145 117 265 195 274 242 197 275 292 56 224 69 151 74 210 12 150 247 112 272 79 10 199 104 78 278 117 127 79 122 82 276 16 159 81 28 52 78 2 159 225 256 34 103 39 164 3 148 147 102 84 138 178 93 48 169 117 49 182 66 115 244 232 32 174 156 269 65 64 5 47 98 260 62 164 49 17 266 107 255 60 28 291 31 217 11 64 112 244 227 284 11 300 25 6 184 299 130 212 158 196 81 28 159 221 240 272 69 283 203 160 250 154 257 107 122 228 178 243 85 185 195 288 259 105 175 98 47 303 10 223 152 184 235 155 235 171 155 42 121 86 8 210 5 98 274 30 241 176 29 106 160 244 70 239 66 176 179 288 292 274 100 70 107 19 40 18 140 54 7 194 179 91 218 243 214 300 260 94 283 99 158 171 194 142 154 102 138 75 70 170 168 225 16 167 286 172 126 203 142 142 264 176 35 71 134 181 23 174 294 272 61 81 264 77 50 183 63 46 215 95 272 149 59 190 29 274 128 300 201 249 27 1 244 132 168 169 130 222 62 112 191 117 244 34 1 13 255 45 251 151 99 41 270 33 101 189 87 88 253 138 142 60 38 111 263 290 50 117 149 214 136 159 87 172 248 132 155 151 77 237 4 293 128 123 103 224 182 194 113 167 71 137 239 23 51 83 297 97 297 260 292 256 33 272 239 250 275 57 72 46 78 44 73 185 172 267 250 275 204 139 160 191 295 114 87 167 13 206 101 202 142 284 264 167 303 185 227 175 21 10 32 39 123 147 17 17 83 284 72 86 187 173 178 134 76 35 85 83 67 216 16 125 186 54 156 4 178 253 157 117 185 107 240 71 71 162 223 17 236 227 16 149 299 89 68 188 264 45 185 199 93 149 118 239 117 74 11 110 255 55 176 304 84 4 104 118 189 133 272 27 56 52 205 191 87 38 280 85 225 54 299 289 237 282 256 35 48 238 189 199 238 170 206 209 24 302 277 279 72 294 159 221 160 103 121 139 69 94 64 164 222 50 92 113 290 142 17 242 185 231 120 151 285 23 203 284 302 263 240 157 52 108 23 31 21 301 130 14 285 88 227 56 193 14 201 127 278 209 288 258 173 236 286 134 155 16 58 221 39 213 24 83 280 141 270 16 107 234 38 123 183 289 279 72 142 83 272 202 64 34 179 294 183 30 255 247 196 49 183 188 294 67 52 1 205 248 9 73 193 197 291 75 67 206 34 206 263 82 46 158 29 27 240 193 243 182 143 227 244 68 261 93 210 231 94 189 142 292 19 23 272 79 100 55 229 3 249 93 239 99 12 85 160 220 62 29 286 24 152 267 135 42 7 24 298 279 211 201 166 300 4 280 273 184 265 185 242 30 186 182 116 86 62 49 260 149 256 97 183 64 198 23 285 65 214 273 19 28 1 117 299 68 105 223 144 85 25 83 155 158 159 279 183 227 11 21 291 192 45 78 273 296 254 54 169 238 237 113 157 12 253 262 257 269 9 296 303 72 253 43 295 56 142 192 123 260 287 214 292 139 272 285 238 240 304 141 282 249 286 91 113 245 192 191 297 64 188 77 272 122 199 126 83 297 84 229 35 222 287 1 43 216 122 258 245 138 199 241 220 96 243 43 245 222 249 142 25 65 182 81 253 178 224 42 31 299 286 226 70 282 78 98 111 61 171 246 246 5 287 82 71 130 171 229 21 158 140 127 225 218 266 301 193 274 49 252 137 50 97 241 97 256 133 47 64 94 180 287 241 155 216 119 261 205 52 27 277 158 230 190 179 137 169 180 93 17 110 172 139 90 170 72 86 34 159 27 58 81 192 130 93 234 197 298 207 17 1 133 180 247 172 188 6 132 66 289 183 67 11 1 135 212 150 294 40 238 149 164 289 99 279 54 56 61 36 48 242 288 120 2 250 249 243 94 260 138 145 240 117 204 63 147 41 171 159 218 223 166 259 57 296 73 296 225 279 197 187 4 100 302 131 283 121 177 201 57 237 90 210 144 275 134 242 93 51 125 264 68 34 242 34 141 26 100 53 22 30 52 25 77 40 270 74 158 8 245 61 85 249 54 298 66 131 98 235 269 194 76 68 37 81 72 205 109 168 77 7 85 199 266 95 95 50 52 19 136 177 269 214 83 194 78 53 269 260 150 281 74 217 171 195 68 224 222 191 266 91 284 24 240 149 8 211 271 138 224 75 26 274 164 281 293 53 34 9 164 274 115 296 151 97 91 5 278 95 100 154 33 28 59 11 266 185 299 285 135 269 154 31 111 242 93 175 225 82 64 200 204 143 285 40 271 279 34 297 81 21 85 12 43 214 267 58 299 211 234 213 223 81 129 209 267 171 104 175 200 223 95 271 284 282 78 207 39 12 201 154 141 108 197 106 265 281 194 179 243 302 139 28 173 189 19 197 87 210 34 195 196 232 99 159 51 183 25 4 24 46 263 78 115 301 174 15 25 192 199 131 240 43 50 53 35 262 207 25 194 303 25 234 116 243 135 11 230 289 73 168 272 274 153 117 13 30 283 45 102 164 147 206 216 84 254 190 60 79 289 113 159 235 200 67 40 10 205 57 103 147 47 189 263 148 264 300 26 246 296 157 205 41 31 249 191 282 47 1 130 138 283 287 234 244 97 262 193 170 96 112 86 281 78 248 25 288 30 150 260 240 110 66 181 237 258 69 45 96 76 270 131 160 235 213 96 190 185 81 27 47 151 252 187 47 50 204 180 198 84 272 288 293 48 109 235 298 185 222 98 132 273 43 90 209 211 161 158 236 155 104 40 107 74 10 44 84 190 14 283 3 135 252 27 54 258 189 119 2 111 85 190 67 254 237 94 281 303 91 65 287 162 40 202 252 192 222 101 181 254 125 150 206 138 266 153 150 189 5 223 111 243 109 166 263 177 296 209 61 205 209 86 174 295 194 64 176 256 296 45 132 211 180 118 241 232 114 29 104 234 283 261 103 90 201 275 83 170 64 215 1 22 146 258 232 88 80 189 265 285 164 169 85 12 304 284 250 245 142 237 28 295 271 102 36 269 211 107 83 23 55 143 135 76 177 146 195 90 206 302 40 157 218 72 289 198 167 20 214 16 124 18 265 74 45 30 225 151 243 50 239 168 245 275 151 270 208 16 136 292 262 139 199 262 226 111 241 297 75 154 100 157 61 176 170 68 215 153 153 273 169 20 293 193 25 148 296 202 171 54 70 281 66 295 31 95 25 246 161 54 135 237 163 122 24 11 54 9 193 107 304 11 216 28 29 100 124 121 246 183 283 32 215 105 208 204 204 125 20 197 235 144 106 271 11 202 261 94 206 148 103 118 1 181 141 191 196 149 59 172 220 213 301 47 270 47 37 225 115 9 183 29 209 60 233 253 25 54 113 271 194 20 34 150 129 224 192 295 128 78 122 204 34 203 205 201 54 190 48 8 188 66 175 89 241 191 167 228 260 152 30 108 269 196 198 299 135 46 8 82 91 21 2 141 51 19 279 234 36 103 56 156 243 244 133 296 173 284 211 143 28 184 170 236 103 142 55 24 159 189 187 119 280 211 269 229 9 207 253 45 51 242 27 9 142 225 282 16 14 44 24 27 76 124 251 298 195 178 291 104 213 242 168 204 67 247 177 71 221 180 242 131 222 269 175 141 59 208 290 108 175 91 68 293 109 278 69 23 182 33 272 150 154 24 80 9 242 115 42 209 138 39 50 137 204 281 259 107 84 130 15 247 96 292 178 298 59 194 89 18 302 106 182 134 162 130 48 254 23 60 282 147 275 268 51 17 28 148 12 34 21 180 154 186 68 91 115 119 17 20 19 24 145 138 238 114 259 215 142 235 97 218 13 31 22 69 35 135 277 49 3 238 135 58 14 36 113 228 289 138 187 4 12 79 205 170 63 22 274 277 37 94 172 71 188 278 40 291 16 159 125 33 53 242 253 195 239 116 208 222 196 17 112 283 231 134 114 280 193 83 167 125 17 293 44 65 36 31 106 272 115 15 38 75 257 46 158 2 177 200 276 128 45 61 148 61 143 116 6 218 19 119 223 277 190 27 41 36 4 112 10 43 297 65 244 38 295 134 36 113 233 176 196 113 55 267 202 169 135 132 54 207 224 62 74 133 155 8 114 16 283 204 118 224 248 240 188 48 125 160 150 284 153 133 303 224 92 243 83 183 256 160 86 271 105 9 194 256 237 301 10 231 38 74 22 67 190 254 160 116 168 61 194 254 153 104 172 87 156 236 39 262 246 3 88 85 253 113 97 79 153 239 255 45 110 126 272 139 30 65 269 110 170 211 147 203 283 126 138 93 187 174 304 165 154 138 109 96 122 84 148 39 128 162 69 76 206 124 33 30 302 172 121 67 250 141 174 175 270 297 42 265 40 274 102 28 63 243 120 215 301 95 110 60 255 91 119 224 15 56 92 67 71 130 265 127 283 132 33 85 166 199 125 40 43 115 110 73 122 57 22 289 176 90 148 102 192 21 162 174 207 85 217 18 178 157 49 133 142 168 184 7 228 139 43 158 264 91 259 300 150 246 132 283 136 105 283 94 245 27 253 252 206 157 72 125 137 10 151 41 110 179 304 216 234 21 51 185 40 269 75 261 60 128 167 35 193 5 39 294 281 209 272 85 69 203 25 221 259 19 258 141 74 241 135 27 216 277 244 194 146 243 41 104 90 193 191 245 17 78 114 44 182 242 259 151 135 146 215 119 54 252 39 150 283 10 170 264 217 129 80 204 17 207 20 122 43 303 128 136 79 250 257 5 123 27 102 179 219 115 112 79 78 298 257 138 208 218 179 63 65 227 259 161 155 241 251 5 182 237 55 97 250 201 197 88 111 81 191 189 81 211 234 210 172 258 202 53 56 95 149 187 265 243 9 73 125 282 67 86 213 176 155 24 70 270 119 265 177 238 282 84 303 12 161 117 215 109 144 132 62 130 222 232 168 249 155 101 141 72 220 106 154 207 124 201 127 117 191 295 48 304 190 212 232 176 8 228 90 275 279 172 150 103 303 234 162 275 283 240 23 152 271 99 272 155 268 53 274 250 108 206 4 116 48 223 260 2 81 95 76 61 268 89 208 62 44 1 72 172 260 3 243 252 115 132 41 60 226 237 260 126 94 82 105 213 163 37 86 160 101 245 165 108 211 243 302 212 252 185 207 254 93 70 183 249 140 272 102 90 208 173 140 66 234 57 8 224 104 260 148 238 48 278 195 97 93 227 276 95 108 164 212 127 124 237 22 133 182 246 131 262 55 46 229 149 273 116 281 88 259 99 232 16 142 112 6 178 157 99 4 34 150 120 2 220 278 73 110 95 295 289 73 8 57 151 29 18 72 258 26 296 211 102 154 231 26 88 58 112 69 57 160 208 249 115 189 16 82 149 196 199 272 97 136 128 19 242 40 218 203 99 15 163 71 172 280 187 151 1 92 39 200 276 242 82 103 145 86 70 126 98 170 48 205 292 48 129 301 270 88 233 260 100 226 89 13 195 92 87 197 267 183 30 42 213 171 246 46 122 269 137 36 258 128 9 120 230 244 104 295 16 38 293 172 216 49 227 161 47 49 143 7 251 31 214 53 234 265 218 139 121 71 99 174 150 80 112 69 93 123 157 222 186 197 275 192 159 201 44 40 297 69 18 6 6 151 75 109 15 25 56 22 156 49 15 32 47 56 22 179 265 148 5 103 228 113 169 160 274 213 6 87 17 166 279 231 18 69 275 288 248 16 49 27 116 106 183 251 37 65 18 260 102 53 246 239 170 141 285 275 11 123 37 156 25 138 141 135 87 235 232 169 150 13 167 38 263 125 93 274 215 147 265 192 209 248 64 254 93 255 27 91 45 27 289 239 26 153 210 234 171 198 289 205 78 74 217 243 227 228 138 198 268 118 245 159 19 153 288 211 228 241 60 242 268 142 250 255 235 186 203 244 147 176 283 84 221 237 114 217 243 274 260 266 57 187 46 228 138 288 276 114 304 101 226 190 302 33 129 52 28 117 9 282 165 20 153 241 302 196 131 35 297 292 49 272 286 46 137 62 90 260 204 2 40 106 282 258 145 272 134 94 175 1 221 42 183 47 174 18 298 258 299 48 147 123 230 179 133 37 247 130 241 139 175 226 231 229 266 148 177 263 93 254 267 165 249 57 245 63 75 106 15 94 214 109 109 196 291 147 91 61 279 40 280 22 41 7 36 167 173 152 232 49 204 26 262 279 227 105 242 88 187 221 212 177 241 74 78 201 10 218 70 27 110 284 278 4 245 242 4 120 41 155 100 173 261 210 164 126 223 78 41 84 28 144 29 242 184 195 20 259 175 260 40 283 105 158 300 176 254 296 259 158 79 262 195 180 148 145 147 140 126 153 151 13 28 32 177 247 276 15 298 208 145 99 157 162 206 34 141 190 244 66 227 220 112 100 205 139 175 44 190 252 28 103 233 299 64 61 230 51 114 60 262 190 118 48 188 68 175 202 263 101 47 96 289 37 128 275 12 153 140 114 235 28 257 153 110 170 112 42 44 149 111 230 190 294 241 94 135 96 47 200 140 284 84 91 49 59 149 96 183 273 64 12 3 154 200 178 228 123 114 142 86 206 69 287 134 74 44 121 81 165 199 103 160 117 21 146 41 126 202 223 9 131 235 258 49 137 245 73 266 294 238 206 184 133 259 142 113 236 292 192 7 52 143 257 217 106 73 16 86 83 123 66 74 160 158 94 237 189 90 253 118 139 31 255 302 268 209 71 208 52 279 105 16 195 233 158 14 28 135 68 239 23 55 170 237 60 76 21 235 52 116 152 75 46 292 6 229 300 27 37 239 99 129 28 102 162 38 78 108 184 80 297 26 294 109 149 280 284 54 136 259 241 222 203 150 303 103 38 18 133 123 213 145 30 229 6 195 35 7 195 7 211 103 264 133 59 213 114 11 142 117 18 111 27 129 180 275 295 302 149 294 203 190 178 59 268 108 10 82 24 159 7 198 252 107 35 97 202 161 291 216 5 303 245 183 178 191 299 69 293 151 37 8 2 197 277 177 20 89 78 88 17 24 288 256 238 187 114 292 137 79 183 71 7 226 78 115 260 211 200 154 5 3 32 131 150 11 270 129 25 1 67 204 159 143 302 154 93 104 282 100 80 19 257 8 261 48 111 276 46 262 197 238 235 181 57 209 112 179 3 141 49 135 121 302 155 291 52 296 73 101 238 291 241 196 128 1 186 248 157 210 125 125 232 265 102 151 1 224 71 13 302 96 9 109 185 217 95 54 304 90 196 31 285 68 135 161 228 282 85 186 249 298 91 227 27 227 69 265 251 201 64 214 107 127 202 209 245 19 165 291 155 253 46 107 285 146 74 184 147 91 86 269 80 236 132 22 151 157 90 258 127 92 196 211 70 73 288 29 175 252 226 75 118 61 28 186 26 157 37 126 36 289 63 6 154 85 5 196 10 137 212 164 54 190 118 279 90 274 204 244 165 190 271 176 163 56 123 262 106 259 37 141 101 256 280 105 105 200 119 287 274 109 19 16 214 69 260 257 227 184 229 222 113 162 21 151 284 38 299 79 106 27 75 241 23 218 265 207 234 89 1 297 171 232 196 216 200 79 2 128 89 260 303 169 283 289 226 201 127 95 137 25 276 236 259 296 255 8 50 300 250 293 213 221 31 85 217 127 116 137 92 66 139 124 88 276 199 83 211 45 170 200 261 10 92 59 57 102 35 81 299 18 225 106 238 195 119 12 4 297 43 304 26 116 19 254 301 261 232 302 36 172 212 223 279 297 210 19 237 171 101 30 297 141 74 122 185 7 267 155 168 287 103 56 216 214 247 66 299 150 267 293 300 18 206 271 281 99 231 191 210 158 136 221 74 188 90 42 301 187 181 293 80 183 83 230 188 157 126 149 169 18 267 63 164 103 152 239 290 119 185 127 178 268 187 66 124 98 274 208 161 70 232 157 70 86 66 150 77 59 250 20 1 167 55 234 125 3 237 53 74 287 192 87 46 46 257 46 78 92 62 57 195 273 209 99 210 115 5 43 79 176 258 260 270 130 9 272 36 210 203 119 69 84 151 252 8 49 228 55 99 66 91 257 282 78 143 77 293 49 215 301 10 116 206 302 94 28 195 248 147 137 8 103 70 193 67 104 193 172 167 11 192 218 139 86 214 40 175 293 212 294 253 147 42 97 291 99 213 10 258 171 149 244 17 35 247 222 186 26 170 48 165 235 197 47 6 7 110 146 30 280 181 117 79 25 291 258 99 186 43 115 34 299 10 88 284 254 186 270 298 289 65 258 19 30 11 252 255 43 45 85 183 116 163 92 195 226 59 170 242 182 154 78 40 172 179 272 301 268 158 196 195 118 229 120 168 241 5 91 72 131 107 220 245 150 77 285 151 92 64 113 9 229 77 204 155 144 19 244 215 279 289 175 194 109 260 260 278 226 268 235 145 31 106 111 117 131 99 228 218 162 60 281 45 299 6 155 81 87 275 136 200 71 176 128 258 83 265 132 288 23 6 129 141 196 174 217 295 191 42 252 159 276 62 118 302 39 48 117 220 114 297 170 265 261 84 177 37 58 64 213 187 115 174 19 95 187 4 145 44 150 125 108 52 264 238 266 302 249 232 238 119 161 16 157 109 175 12 31 191 132 85 115 75 38 113 235 18 156 207 189 155 25 39 35 139 32 120 230 169 143 166 293 202 113 140 206 300 110 18 39 8 190 214 1 166 284 177 247 274 70 220 299 273 256 26 250 98 15 114 69 78 279 29 194 64 14 217 16 88 134 100 275 226 249 131 19 108 113 111 195 234 301 127 80 126 173 148 157 172 149 176 13 93 31 274 175 33 167 93 245 135 90 99 151 163 42 45 106 158 134 166 103 73 199 166 49 128 27 248 256 132 237 167 98 23 86 216 175 83 77 182 174 244 100 227 257 3 206 107 223 275 90 136 60 51 196 181 90 144 176 49 73 200 167 120 197 129 182 198 229 20 247 93 12 262 270 35 177 158 118 195 101 116 68 292 59 41 178 181 176 43 74 100 232 157 46 216 291 61 207 194 49 46 146 171 68 126 46 127 58 176 67 32 183 132 101 26 143 25 111 136 280 38 255 43 137 237 160 297 198 230 166 23 85 43 114 108 8 76 170 77 59 203 68 76 211 45 207 226 304 287 17 102 32 8 45 247 258 247 179 8 171 55 286 14 34 279 60 217 261 252 185 160 156 205 77 140 71 208 75 46 96 219 203 1 7 2 303 276 74 304 223 36 248 40 100 287 198 162 158 278 129 211 16 203 45 83 82 99 116 41 278 90 101 140 183 211 295 40 3 16 231 96 138 3 22 294 57 113 291 93 105 154 193 270 208 103 207 236 243 232 103 242 171 259 249 180 88 48 103 101 62 286 18 68 34 7 256 29 96 202 218 228 103 174 82 169 60 177 52 65 233 97 169 63 102 196 48 252 295 261 78 101 228 6 54 213 84 292 203 229 276 243 205 72 203 249 155 253 187 155 127 154 78 302 131 158 110 105 304 194 245 244 165 280 265 279 2 92 223 127 17 55 217 226 3 170 293 58 187 65 60 255 57 97 105 33 257 92 159 164 120 12 101 95 172 18 249 99 60 167 88 115 35 248 180 51 85 104 20 45 270 195 205 33 43 186 51 189 55 64 298 224 176 215 142 132 284 217 77 226 50 249 227 244 302 116 203 244 271 138 101 257 228 207 200 140 221 139 169 49 267 174 175 91 68 82 197 254 285 72 217 287 265 35 167 159 189 66 140 66 136 256 118 100 168 113 17 244 207 176 164 169 225 179 16 40 7 200 174 189 252 91 211 114 271 65 134 39 248 184 57 290 199 171 209 207 4 203 142 257 178 284 32 285 244 256 245 144 206 148 56 17 286 170 170 279 166 226 195 137 266 50 106 268 146 267 14 256 261 80 243 8 207 290 51 223 255 29 287 211 178 194 144 97 77 206 32 197 292 149 10 32 214 5 12 151 280 190 161 73 281 86 181 272 219 59 55 297 92 234 33 227 124 285 31 140 38 194 206 250 119 35 170 277 297 169 245 221 123 263 255 202 225 71 132 52 300 254 27 83 220 141 277 14 81 223 225 227 9 9 237 195 265 278 73 103 105 70 46 255 146 54 245 132 59 176 83 44 125 97 297 257 205 190 76 152 17 187 283 110 87 143 47 210 119 90 145 239 180 212 301 185 197 270 31 168 232 4 27 224 139 263 268 271 232 91 223 253 301 267 271 140 232 303 167 259 3 61 60 87 85 101 246 99 156 214 172 220 215 194 240 11 135 212 178 114 304 7 302 223 171 183 76 79 30 278 271 288 281 166 12 122 298 72 154 108 106 284 68 28 93 113 216 95 243 241 186 84 41 158 18 62 97 114 91 122 143 82 269 284 48 116 221 245 288 299 201 104 258 295 268 211 83 60 263 185 157 24 258 173 139 81 66 274 5 222 191 69 185 265 48 188 100 13 229 49 103 171 216 294 281 145 64 56 59 109 52 56 182 216 197 212 112 272 77 120 228 260 233 61 244 70 157 50 15 198 239 129 21 144 121 221 191 293 92 212 230 217 60 164 248 104 31 272 9 126 133 37 27 86 269 255 280 66 74 96 257 277 199 131 186 189 195 178 191 62 128 251 57 141 180 115 173 240 131 104 29 1 145 27 228 76 270 116 61 151 164 107 112 294 41 53 38 9 20 205 51 120 162 20 59 132 280 214 131 75 201 24 292 252 45 171 294 210 202 29 76 156 41 101 76 195 277 258 269 180 235 201 187 195 299 239 32 125 141 34 10 255 171 13 95 60 297 60 286 40 51 37 113 51 47 262 51 255 116 302 19 87 228 4 171 235 92 205 288 227 64 144 268 205 291 289 185 60 255 113 185 268 88 208 29 207 250 43 117 238 229 271 268 163 157 149 199 216 188 86 80 261 282 152 237 257 34 290 126 260 296 211 293 260 149 14 40 112 259 102 255 282 281 192 234 257 183 90 75 43 61 48 173 85 166 298 224 212 215 270 13 146 248 9 157 33 128 45 33 185 139 69 303 286 103 63 210 45 230 137 193 18 33 83 240 103 67 7 278 264 65 250 239 240 76 296 89 37 257 51 86 247 259 107 301 46 79 207 97 231 295 150 222 297 97 21 281 51 72 100 80 60 55 298 130 241 170 134 114 243 241 215 77 116 62 124 94 106 261 119 127 277 226 72 246 133 134 35 114 254 76 14 63 101 180 141 98 216 55 91 88 275 82 199 234 56 298 201 69 251 133 279 130 122 80 86 48 279 8 297 10 297 281 94 55 299 279 3 298 19 243 279 3 175 173 16 25 32 68 51 188 48 226 56 35 9 130 195 275 83 173 185 83 65 21 81 96 133 303 289 294 159 101 244 18 283 219 230 166 172 31 5 295 109 174 257 294 35 182 131 35 150 165 173 33 141 83 47 107 150 232 300 239 86 62 153 80 145 273 120 185 134 56 221 42 286 74 271 56 255 105 41 176 298 156 282 170 161 67 58 185 65 21 20 48 211 76 232 81 184 167 5 177 178 209 62 4 210 19 190 21 41 116 156 129 39 14 37 289 69 45 279 117 278 232 30 53 50 167 178 89 83 226 73 88 212 289 100 15 44 64 8 205 256 92 213 1 127 123 37 255 99 152 300 184 18 295 58 15 45 226 134 113 86 274 271 51 7 190 138 259 52 209 291 195 188 247 32 291 5 246 170 197 284 213 15 59 164 190 299 240 98 140 96 99 148 110 214 143 149 279 222 286 180 188 25 268 198 304 284 266 69 36 54 99 252 49 41 265 233 189 105 113 178 249 135 159 147 6 239 22 91 148 226 294 53 263 297 212 249 250 92 105 215 170 87 265 165 162 228 94 136 39 52 61 62 258 243 273 124 160 281 255 15 56 38 54 253 151 134 172 152 161 203 38 80 45 214 10 93 195 81 254 273 294 157 91 142 272 197 7 113 206 116 187 208 14 54 294 124 270 103 51 72 98 301 86 39 207 7 183 53 262 248 162 276 253 282 129 55 258 276 291 286 252 83 95 261 114 130 122 88 64 15 193 82 213 163 95 221 292 296 267 95 151 75 58 136 268 2 71 9 61 163 123 209 88 164 214 38 124 229 18 13 22 236 141 200 250 151 227 295 216 72 154 268 63 153 166 42 116 285 87 165 229 159 26 281 79 79 57 55 163 29 183 120 119 135 72 90 84 296 161 90 100 22 270 61 304 120 226 225 219 43 193 188 28 192 265 228 146 165 101 5 165 299 139 51 221 37 172 53 240 1 240 170 230 204 129 53 44 248 92 203 106 228 117 285 185 5 205 253 240 7 128 110 100 127 11 151 303 180 203 191 224 71 60 235 68 154 131 284 11 282 248 42 155 250 47 158 272 8 194 157 36 158 202 198 174 188 241 140 137 45 212 210 23 37 110 29 28 202 6 105 284 214 237 277 72 261 45 114 229 126 145 42 60 193 252 83 121 134 163 178 63 141 14 304 41 164 303 107 225 117 231 4 23 137 301 235 121 282 237 168 65 16 143 179 64 92 66 71 37 277 214 221 81 49 232 170 92 181 297 248 176 253 124 249 207 247 66 60 101 44 20 86 56 239 284 58 292 286 163 55 66 59 265 59 225 149 200 137 248 73 29 182 46 164 297 28 143 236 23 277 103 204 79 136 205 177 29 151 176 13 100 261 152 134 20 10 264 187 118 97 140 54 300 130 71 206 116 200 40 217 205 231 246 53 47 257 66 42 283 65 16 218 123 17 234 143 52 131 273 150 241 21 229 8 185 215 241 56 218 164 296 71 285 205 302 57 135 11 170 227 74 85 160 56 179 31 130 272 116 127 229 84 90 55 265 159 87 250 233 241 152 166 247 184 95 243 21 60 223 133 153 47 170 261 242 301 66 289 243 226 235 295 116 243 182 290 156 118 10 172 269 125 75 257 178 25 257 88 38 255 299 21 252 214 44 97 245 268 44 296 131 182 133 112 102 163 191 143 215 5 74 90 272 9 152 146 234 234 71 269 281 81 30 92 29 41 140 213 279 117 37 163 251 207 46 285 28 36 187 37 90 27 51 304 41 90 267 217 289 3 293 58 258 255 44 208 56 123 143 71 42 83 276 216 268 15 138 72 199 166 54 267 21 230 163 72 290 125 215 61 29 232 187 100 116 276 293 169 299 66 294 242 47 133 294 275 140 70 214 168 104 23 51 285 254 209 213 18 33 273 42 98 11 198 185 214 232 252 208 258 150 185 166 138 124 155 220 129 231 100 30 138 75 129 123 21 179 231 104 92 286 54 103 264 185 11 289 211 270 245 62 198 256 250 297 115 141 16 22 92 66 56 172 30 231 261 163 134 99 88 107 65 97 210 147 212 197 94 204 8 38 257 175 210 158 264 203 2 190 291 276 44 284 105 167 47 147 229 130 73 264 178 124 149 273 258 255 21 115 115 299 41 275 277 197 69 280 45 19 166 67 127 234 166 88 217 272 145 289 61 183 292 254 104 243 149 300 52 203 117 4 20 123 220 91 270 296 61 132 293 303 39 15 8 34 83 1 291 45 79 136 148 66 69 225 268 216 144 199 179 229 225 181 2 155 124 1 119 243 260 77 41 262 22 27 291 123 273 120 17 209 170 201 28 241 247 210 113 202 251 171 108 146 221 173 78 151 177 43 167 240 279 19 152 302 37 174 212 111 288 146 57 265 211 22 70 51 202 271 33 165 159 69 107 195 135 229 257 68 101 13 48 200 21 138 109 148 32 224 49 152 90 68 163 80 69 168 11 12 207 139 291 42 211 245 195 145 181 3 260 37 166 28 101 86 131 5 300 224 21 42 249 55 85 163 181 177 269 63 67 175 271 201 120 288 213 63 266 223 59 133 53 120 178 96 206 43 277 4 247 280 130 165 69 276 192 278 258 230 246 54 249 279 234 60 105 35 151 244 54 278 118 300 199 145 130 245 61 4 216 145 273 26 280 276 291 166 41 27 102 82 271 105 272 92 106 51 249 235 265 6 241 162 94 15 171 257 140 176 190 3 173 300 169 143 190 93 288 165 175 172 119 221 106 115 254 256 251 119 278 274 6 262 120 128 278 43 282 206 207 219 19 137 146 261 45 52 146 81 115 256 209 182 55 86 142 8 129 70 56 190 2 261 299 201 212 113 179 164 275 81 37 36 35 130 252 289 250 15 14 277 301 206 304 220 214 165 258 106 234 152 128 76 125 168 257 216 295 34 282 260 167 133 110 158 44 6 185 288 77 195 57 151 207 183 68 171 170 77 118 270 179 154 202 45 137 102 291 48 119 99 104 144 207 32 248 41 153 22 241 56 270 68 4 232 222 151 44 297 188 262 2 8 17 34 2 284 16 276 266 41 239 215 94 205 106 286 138 64 220 201 292 189 221 189 302 229 155 154 167 16 144 238 152 69 193 226 250 210 222 285 126 116 92 156 224 72 139 5 155 248 202 170 215 63 126 107 204 271 174 54 30 193 226 93 285 75 87 103 301 237 211 227 151 53 150 38 183 200 233 269 215 272 167 96 302 29 139 140 38 120 238 126 153 285 54 115 79 272 102 96 211 208 4 158 282 301 17 264 215 275 22 247 109 138 272 2 57 132 124 173 212 164 40 57 12 85 245 194 231 209 74 223 59 63 197 78 27 156 66 50 152 164 273 3 201 135 81 78 120 236 146 13 45 291 231 276 210 28 135 164 85 182 148 54 138 224 113 178 10 142 222 35 219 63 180 230 229 304 108 236 295 34 38 171 160 94 212 232 200 113 257 195 282 295 12 172 209 288 2 235 128 34 303 282 210 201 99 207 132 180 299 231 157 22 64 20 85 26 42 133 199 222 295 4 215 249 35 303 178 304 67 225 210 74 126 87 106 50 153 33 42 194 221 100 140 151 38 235 233 123 285 263 3 271 178 39 169 187 66 27 21 140 217 180 67 41 301 286 52 15 21 9 92 248 122 21 304 245 175 99 238 296 158 27 208 177 224 186 56 82 257 25 224 82 22 88 72 192 203 189 248 162 125 282 5 190 154 36 211 147 223 21 97 218 214 277 171 188 265 160 70 136 84 230 217 8 224 242 148 50 159 37 11 28 233 98 32 252 17 276 6 272 250 194 240 259 125 260 101 114 159 15 246 115 143 102 89 268 75 169 134 148 276 46 109 71 216 206 88 103 207 216 77 46 191 235 87 5 277 68 80 227 95 249 24 2 290 299 202 159 92 157 147 84 135 246 158 237 235 46 70 211 92 172 155 156 106 195 285 51 126 138 265 45 89 223 45 239 234 50 131 133 267 218 211 30 82 273 236 287 257 128 49 195 298 291 78 192 280 69 139 190 8 176 164 112 208 209 40 178 303 92 92 233 173 304 278 304 191 185 157 254 99 301 14 109 255 292 169 288 108 18 105 293 262 41 70 167 123 233 227 238 107 86 8 213 102 35 262 290 60 251 211 135 214 248 3 99 164 211 18 128 298 290 74 244 225 196 216 32 218 107 125 22 24 76 16 221 114 124 266 207 130 138 35 143 73 35 90 216 112 193 4 206 125 252 227 80 116 285 15 219 85 84 68 291 234 22 116 120 32 21 24 115 290 179 253 188 22 271 45 134 199 234 192 249 50 45 80 286 97 116 181 177 139 256 149 201 86 78 180 238 303 49 142 154 300 45 197 158 206 158 158 71 193 169 37 6 66 288 173 38 298 245 260 299 208 98 11 45 75 289 174 225 44 116 70 276 77 83 98 32 29 84 27 80 88 137 152 142 17 229 57 27 168 48 50 129 129 223 265 231 177 173 238 57 139 156 228 157 13 238 243 96 30 120 221 40 138 107 256 234 127 295 186 217 124 196 247 41 145 141 67 295 8 209 128 278 234 215 20 97 296 25 180 6 221 262 35 68 146 25 66 131 231 81 95 164 67 79 79 152 238 55 281 33 258 242 1 122 292 234 4 36 42 7 267 159 271 245 13 109 120 26 252 203 135 31 272 184 215 96 143 54 93 168 247 95 87 80 115 213 155 154 34 156 120 101 39 264 303 1 39 3 156 37 115 108 72 66 38 2 38 297 38 204 125 89 113 211 91 224 204 24 146 283 84 243 289 49 39 228 290 228 59 66 221 123 132 62 31 238 297 31 232 289 81 184 49 191 232 81 197 142 100 75 256 169 106 7 56 173 104 93 125 85 304 295 32 270 177 144 186 41 221 60 299 96 14 239 63 119 118 207 268 151 163 173 70 218 250 58 90 143 301 294 262 83 178 69 248 34 17 255 83 216 80 298 170 209 177 265 282 192 215 160 29 107 101 43 159 238 283 218 94 112 27 2 148 245 58 16 50 109 179 286 42 211 229 239 196 85 251 282 207 84 287 140 80 261 48 18 153 271 198 133 80 215 182 59 73 39 249 226 193 214 189 269 163 18 119 179 218 108 270 5 36 57 145 10 278 36 252 295 203 227 71 287 8 226 216 249 7 254 252 22 41 278 283 271 44 269 183 30 186 43 210 169 171 272 112 283 5 202 238 19 158 168 94 22 184 222 102 168 184 232 253 267 61 33 228 28 89 15 287 241 296 12 285 185 77 4 191 291 178 257 53 180 16 178 108 140 303 53 213 220 174 194 18 242 192 283 293 259 128 105 143 294 174 215 69 61 77 78 122 223 69 196 213 68 58 25 94 288 124 127 33 296 144 287 32 66 9 239 212 52 52 215 274 83 79 178 50 111 231 97 17 122 183 190 65 33 5 192 148 115 180 166 31 237 189 297 64 20 46 4 180 23 29 284 209 209 105 232 156 235 254 296 240 267 256 38 172 75 122 149 189 138 176 46 210 181 201 47 79 80 87 228 82 9 252 263 9 195 295 296 231 82 267 118 275 6 74 111 108 57 214 136 186 8 162 224 76 222 176 126 290 14 257 252 286 34 126 106 254 214 287 157 229 204 80 304 265 103 104 210 29 134 17 96 23 52 291 250 78 60 151 79 207 262 211 55 156 30 155 237 81 107 95 170 25 38 77 47 91 288 182 34 282 54 278 195 279 244 95 244 268 201 235 24 265 2 170 50 251 222 108 50 70 175 265 57 210 261 156 162 97 38 83 282 156 21 70 297 181 247 208 104 176 142 88 65 141 220 227 280 130 118 129 43 243 72 212 152 244 216 296 268 233 85 102 145 266 1 7 150 210 230 119 296 115 272 50 56 210 237 110 180 241 293 265 150 118 78 9 249 141 148 242 197 175 255 3 194 108 123 143 253 110 57 185 125 60 55 128 25 154 261 192 57 46 290 201 266 105 277 159 109 125 36 251 2 208 195 252 58 285 25 72 144 85 164 175 283 215 207 140 301 31 58 78 130 46 48 227 84 181 271 227 144 253 156 15 17 75 55 143 147 247 48 46 287 152 239 242 270 284 198 149 114 161 175 66 64 248 286 213 232 4 136 25 240 175 270 303 153 20 299 273 199 299 160 277 218 155 23 176 233 165 7 17 16 239 167 243 155 26 100 209 36 284 134 45 87 301 157 88 224 151 170 88 65 209 239 107 58 220 196 299 160 167 165 56 62 12 194 76 192 54 173 174 219 131 2 26 32 117 110 5 209 18 289 97 182 131 173 169 77 177 285 213 157 230 217 212 122 61 67 220 112 111 267 186 255 121 218 116 211 111 293 228 86 171 194 158 179 191 36 119 137 39 46 291 136 178 133 21 210 303 263 283 176 172 200 124 17 61 163 36 117 163 191 245 238 280 250 263 86 12 194 4 194 104 196 6 229 208 246 21 282 14 105 254 236 260 263 68 40 139 96 4 141 216 210 43 114 6 99 66 250 79 69 125 107 157 168 228 183 229 270 92 46 156 283 137 43 36 101 159 136 84 229 257 220 252 15 248 232 73 20 111 107 247 18 51 191 126 157 55 288 80 234 106 207 155 24 49 221 18 80 82 290 10 100 186 253 120 17 19 189 265 302 45 143 63 192 8 265 176 27 97 170 187 154 287 45 272 236 295 193 270 128 109 110 289 285 257 270 199 36 270 61 39 35 160 16 83 287 93 291 259 86 234 78 43 281 129 140 200 52 89 229 72 165 115 34 277 240 130 142 225 142 224 123 154 130 127 87 299 285 114 263 180 76 83 202 164 277 272 261 201 269 177 276 237 296 262 68 210 27 260 250 43 51 99 268 219 246 274 155 171 284 113 278 302 8 294 257 285 176 158 4 273 236 200 89 87 170 113 288 116 144 295 169 266 87 8 55 102 171 229 28 294 242 257 145 304 191 150 100 92 143 186 64 105 180 304 30 75 222 104 181 175 100 11 251 162 41 11 242 251 125 284 71 296 245 182 39 264 258 288 14 52 265 84 161 193 83 159 289 288 250 288 138 87 82 206 153 190 168 121 228 238 133 141 270 194 43 11 235 177 77 208 105 293 274 154 244 62 53 151 130 100 132 15 86 117 252 144 76 136 266 1 269 136 84 198 162 152 231 242 239 133 82 9 253 173 111 50 194 183 56 170 176 39 79 267 39 208 196 287 185 145 274 180 285 274 165 282 12 9 10 96 79 63 14 159 45 110 182 173 186 165 22 201 250 117 304 140 241 48 298 126 69 140 126 120 287 22 205 76 179 72 141 15 217 63 144 297 266 54 279 231 289 196 78 99 235 122 278 138 233 209 113 164 290 189 52 193 162 147 52 18 224 61 218 108 195 122 175 79 248 273 64 278 139 61 30 267 148 62 2 260 41 152 9 291 6 10 3 270 292 172 120 136 162 300 146 151 282 100 118 66 152 240 272 142 207 202 280 113 295 111 262 212 56 22 113 177 210 293 160 177 35 300 177 181 129 144 69 43 26 153 48 60 22 266 36 106 141 22 83 153 87 84 296 278 57 196 243 236 58 180 237 69 255 276 202 104 32 152 7 144 107 212 199 100 208 170 274 243 76 82 203 117 235 235 288 267 153 39 38 130 26 193 74 208 116 184 42 134 275 40 182 32 91 266 207 249 105 94 21 184 284 238 82 274 251 100 137 100 204 82 91 123 48 91 246 78 112 131 99 237 189 77 137 295 11 55 135 60 157 178 150 55 27 140 142 94 80 27 136 140 145 102 213 282 153 95 145 189 72 240 135 70 113 66 105 116 176 165 255 179 235 84 57 10 164 208 18 237 275 34 296 155 70 4 189 47 200 271 249 67 290 283 147 291 226 188 304 193 16 175 133 189 167 273 268 294 262 64 73 248 15 274 181 225 225 96 171 141 125 65 2 75 134 177 139 92 156 83 182 173 157 130 60 159 32 163 43 101 232 249 92 34 67 111 192 73 145 285 61 276 178 259 209 248 60 82 171 128 101 78 107 147 48 79 227 150 226 52 130 14 198 127 289 6 93 195 148 201 82 83 251 132 7 127 117 106 71 234 223 160 116 211 24 273 185 228 16 146 24 132 168 19 202 280 84 55 86 128 16 9 9 261 127 285 118 22 130 221 85 242 161 225 158 211 100 268 147 148 150 147 287 205 107 44 32 12 166 75 207 205 258 268 153 2 159 266 109 164 157 229 130 167 3 112 155 129 265 169 212 230 66 51 101 197 262 103 8 194 109 34 125 285 143 161 253 119 81 30 149 128 23 264 144 146 242 252 41 26 86 4 301 122 151 25 293 97 140 40 104 289 10 146 171 244 169 189 253 196 183 106 101 257 177 98 204 148 278 213 18 161 293 77 213 228 87 272 66 236 215 79 185 276 110 196 151 265 125 16 147 114 226 215 16 110 299 234 253 141 173 168 127 250 38 261 91 130 298 96 170 88 200 88 41 303 195 206 210 108 43 132 290 214 239 175 138 10 148 88 272 34 255 219 165 53 225 202 113 119 231 260 68 256 188 299 183 229 156 129 96 31 203 68 219 281 139 206 224 18 266 210 79 147 52 70 282 286 94 27 103 178 33 292 213 211 214 293 141 286 40 256 5 116 59 31 104 206 54 111 150 238 55 212 129 206 56 183 143 215 34 107 131 31 151 219 180 138 124 189 291 211 36 60 104 283 26 9 167 76 286 87 73 202 304 126 130 101 41 293 169 87 223 252 9 108 34 269 167 155 25 57 46 298 98 78 135 25 224 43 89 62 159 112 10 108 105 229 298 96 100 1 78 70 182 155 204 40 252 259 154 255 180 261 159 80 252 280 62 232 16 279 271 39 183 117 35 97 163 50 215 95 238 233 132 285 217 293 51 147 176 70 216 27 295 206 35 263 140 159 154 270 177 185 180 95 76 159 136 50 87 99 142 32 36 127 51 282 30 252 225 91 162 185 91 220 68 233 1 205 131 172 131 122 205 214 50 302 12 247 58 58 98 83 64 23 267 210 12 140 268 125 138 195 178 58 36 158 243 8 173 18 293 139 31 151 24 36 46 176 277 23 88 153 133 17 113 120 54 237 286 143 208 42 252 63 285 142 148 226 99 70 132 42 270 178 195 146 171 57 110 255 70 63 201 15 71 136 84 13 282 153 189 241 161 98 129 199 165 273 238 232 220 228 27 217 70 87 103 290 38 2 253 58 192 191 167 161 144 9 48 250 67 65 122 85 107 140 169 97 134 72 116 59 93 185 47 274 76 200 65 180 260 250 263 34 297 91 150 134 141 101 212 137 244 42 281 21 94 61 76 267 105 200 253 91 186 143 137 267 107 85 113 209 3 264 53 181 273 245 211 225 157 196 224 88 174 182 193 288 158 68 249 156 16 36 149 192 107 176 99 180 115 235 278 124 14 253 205 290 126 254 298 88 252 169 252 286 239 102 101 115 138 173 23 278 68 179 149 257 2 200 47 122 9 56 267 260 299 205 199 273 242 130 17 283 171 70 133 286 68 132 47 156 214 32 277 269 192 272 146 207 64 124 301 132 53 75 298 171 235 43 137 55 26 37 85 102 35 141 241 154 162 252 74 87 95 189 153 180 3 110 63 179 59 104 257 221 207 112 275 49 51 244 248 192 58 195 235 35 254 178 179 97 29 192 125 53 99 141 67 189 110 63 52 66 166 129 276 76 299 25 5 61 164 208 230 222 226 231 146 82 236 238 82 145 163 78 43 95 140 101 84 212 74 134 25 234 102 260 42 73 172 170 163 162 195 79 62 190 91 40 62 227 59 63 128 23 249 207 88 132 117 270 237 29 100 195 183 293 229 282 94 88 47 187 78 18 294 187 179 182 276 210 110 90 196 15 285 255 147 239 174 48 154 160 195 292 285 47 221 147 111 287 57 187 44 40 162 6 286 98 292 182 139 103 268 299 225 234 183 237 127 170 5 83 26 256 114 282 157 232 40 277 172 187 198 145 7 268 72 253 5 2 33 230 13 217 103 284 30 55 126 304 170 245 116 209 232 122 229 128 72 293 240 302 93 185 24 63 174 37 96 169 257 108 96 32 89 83 237 79 59 69 168 91 17 296 272 19 75 285 182 181 301 28 33 132 47 303 167 131 82 65 23 104 270 244 136 254 100 47 7 156 103 25 130 221 171 304 215 150 156 262 113 240 71 36 153 134 170 194 173 150 283 122 15 226 38 31 162 181 61 120 104 192 3 168 170 30 174 161 273 267 176 46 224 84 13 140 197 198 119 61 104 103 176 18 206 237 211 233 186 42 175 154 211 119 196 16 114 266 240 49 282 37 64 164 13 216 92 158 173 146 273 174 110 243 55 295 23 237 211 193 166 100 200 40 279 80 30 33 16 148 123 160 276 174 226 69 24 227 75 7 215 46 186 210 303 104 75 227 164 270 168 31 285 240 61 288 255 77 168 129 51 174 210 288 83 229 213 295 76 137 17 239 225 251 182 136 241 164 269 67 266 90 142 263 236 134 90 205 109 271 12 29 250 1 154 199 37 79 146 18 220 16 280 168 230 81 50 81 290 221 273 94 140 261 65 266 191 82 194 95 230 206 228 14 216 46 257 35 133 73 36 221 173 49 193 201 26 168 36 101 40 166 252 187 146 227 20 247 290 51 145 249 82 281 114 105 63 8 144 248 140 268 250 269 292 104 60 6 21 230 38 79 5 100 134 217 301 279 297 188 197 136 27 18 49 84 183 141 32 105 213 56 28 94 180 85 45 120 99 221 51 44 283 183 37 79 8 197 64 221 289 44 61 167 110 160 84 303 168 163 227 56 293 81 234 196 146 28 75 14 290 200 114 163 230 195 14 6 16 44 173 250 57 32 40 248 303 83 295 228 218 205 69 295 217 294 113 17 233 21 155 285 48 142 27 10 128 44 131 200 138 72 119 4 24 18 297 123 81 245 96 243 162 2 178 179 6 218 108 138 29 83 261 58 157 113 48 74 124 161 246 90 164 287 134 206 151 69 198 107 65 167 251 269 254 47 171 203 178 65 286 103 267 3 232 227 234 55 252 104 46 210 203 225 24 222 295 5 196 65 242 114 232 285 49 236 96 175 98 232 119 26 23 119 72 263 74 80 161 262 82 132 181 113 128 150 279 116 265 191 286 37 98 93 240 287 181 150 224 37 10 258 74 259 8 26 196 176 1 91 71 142 178 91 79 19 141 238 227 284 275 262 239 107 130 6 22 174 280 41 192 273 231 192 77 226 292 262 159 93 17 256 203 247 260 303 126 144 260 108 142 259 236 21 205 87 8 243 47 62 257 76 147 109 187 289 101 140 212 36 4 221 167 193 156 104 124 27 46 56 129 99 304 258 193 248 71 74 25 238 231 126 288 237 231 187 26 248 167 202 60 271 191 250 71 41 33 31 140 234 304 131 212 165 44 253 273 104 70 159 143 229 130 40 140 51 22 215 180 80 118 53 29 243 189 171 170 13 137 290 29 170 221 176 68 60 173 303 212 72 225 175 41 234 298 171 180 286 130 97 88 262 252 114 209 90 208 233 211 2 15 198 299 159 128 273 67 148 89 137 5 93 265 191 45 250 148 278 131 93 169 210 18 34 277 150 294 81 216 252 56 139 208 60 158 116 205 193 237 164 280 34 45 263 44 74 183 187 22 181 248 213 303 230 279 204 157 39 73 6 219 60 159 248 23 29 241 280 87 273 278 16 13 3 90 140 192 198 85 133 151 153 201 210 204 169 17 163 179 151 53 47 157 136 68 281 293 261 242 32 187 299 80 49 43 83 284 299 138 303 263 209 259 232 87 4 184 109 202 271 48 166 184 69 162 91 3 82 171 276 140 297 127 51 227 272 73 237 151 283 119 2 235 217 198 219 50 253 285 126 263 268 290 273 50 268 243 232 39 249 103 144 164 20 145 277 20 64 292 191 61 77 205 219 117 128 194 213 162 280 268 174 10 175 275 181 166 86 298 205 289 264 206 183 248 214 226 189 174 245 209 243 240 105 85 212 226 211 141 90 65 229 111 286 116 29 251 35 267 296 208 281 170 24 83 205 244 274 231 164 171 90 43 257 274 129 34 107 18 115 256 206 189 216 193 272 279 173 36 113 2 263 61 258 125 246 70 65 135 57 49 48 233 41 36 81 133 263 84 70 297 103 195 140 254 226 38 147 134 191 277 111 195 221 142 64 202 285 98 233 211 51 110 113 72 171 27 112 96 195 75 172 156 43 223 290 75 74 98 84 175 222 36 58 131 299 4 103 191 197 270 292 161 234 49 107 211 52 101 141 129 127 246 21 171 284 152 34 37 139 212 203 165 79 270 212 208 76 91 44 123 54 167 83 16 295 218 37 150 172 89 262 229 33 1 140 264 62 28 265 86 92 215 243 39 184 235 287 143 208 141 172 9 128 225 243 214 28 126 151 142 199 72 164 247 44 167 170 92 124 295 23 125 270 289 229 230 51 251 122 282 304 203 237 204 34 151 103 245 148 161 241 137 1 263 67 222 48 274 148 144 301 284 260 9 82 16 232 263 264 156 293 54 8 241 186 203 150 268 53 264 65 48 185 203 225 252 213 178 170 263 271 164 133 29 18 168 189 221 191 83 241 70 127 247 211 142 222 239 118 160 18 14 271 105 275 290 15 278 229 90 253 165 84 178 25 129 9 63 274 6 244 114 202 67 132 254 133 53 117 93 111 87 89 105 110 178 35 272 7 175 82 227 21 69 15 122 119 59 129 254 12 174 190 88 73 124 290 152 200 239 162 72 68 144 163 107 294 73 225 142 108 125 128 241 207 301 220 130 84 52 66 170 165 240 296 222 211 287 256 118 102 109 222 2 121 255 200 80 239 47 96 110 176 150 1 149 273 185 156 52 99 120 126 166 52 207 136 265 57 118 266 236 175 2 161 170 42 296 44 107 159 67 104 173 260 233 70 215 251 103 140 150 208 213 112 144 69 3 158 225 43 82 134 59 129 81 290 126 227 291 161 84 301 245 32 221 55 171 301 19 22 48 111 129 10 240 172 302 26 240 293 135 115 236 238 115 81 239 296 293 192 8 65 137 249 97 199 59 104 237 254 116 128 286 28 183 154 197 142 303 41 12 287 154 182 139 229 103 214 184 65 179 29 255 144 70 184 265 240 290 115 264 155 204 49 37 224 16 70 168 147 234 177 218 85 177 145 103 76 295 73 62 59 73 156 132 196 143 201 167 301 143 72 210 64 186 106 295 170 161 117 46 83 201 231 165 222 253 176 37 270 281 284 118 284 50 228 166 207 191 3 284 207 218 290 92 228 174 253 98 179 114 206 172 208 97 31 202 298 268 141 233 137 270 283 121 241 254 174 135 93 182 269 184 33 93 247 137 90 280 21 72 256 282 237 213 245 120 46 16 73 237 2 291 127 267 64 27 43 299 168 7 294 94 135 68 215 208 292 197 85 167 139 138 91 297 248 265 170 196 54 213 6 177 141 11 264 280 241 174 200 190 133 154 236 5 262 135 232 163 262 109 102 216 136 1 59 65 145 258 279 185 251 133 20 82 179 276 191 103 31 279 301 253 130 173 42 9 23 82 86 260 246 12 33 197 285 30 54 287 252 84 235 85 68 164 272 53 161 231 61 199 4 274 84 258 78 175 123 223 77 114 76 189 204 179 157 182 208 268 128 202 126 197 46 127 267 96 294 10 278 296 263 205 131 11 283 182 69 160 127 233 38 73 67 144 269 127 197 302 124 4 248 238 2 82 85 234 54 213 255 72 210 140 301 148 234 50 169 297 36 80 272 143 243 90 69 145 252 282 163 60 233 111 180 175 193 32 1 40 138 18 27 176 25 99 181 62 222 109 215 208 58 55 298 218 158 228 19 207 147 243 36 186 292 142 245 79 37 143 62 300 204 73 198 295 181 19 280 238 164 18 79 254 177 16 114 88 276 70 133 298 155 45 86 82 201 97 271 298 179 250 223 85 155 72 88 284 115 168 206 266 116 148 65 61 296 83 115 118 238 153 300 261 157 95 164 274 173 30 163 75 226 7 103 52 114 122 303 131 149 269 286 206 108 145 210 262 152 66 193 159 264 93 142 110 173 174 115 267 71 142 216 136 92 278 259 49 282 66 198 186 160 253 107 157 12 107 230 16 118 48 300 132 61 61 166 20 47 188 82 133 175 79 30 216 23 38 119 272 27 117 287 224 57 257 176 111 115 14 1 32 62 285 74 13 293 234 122 178 290 261 124 86 251 239 110 112 263 155 68 34 283 235 144 239 110 112 74 177 274 267 148 18 112 302 88 219 147 171 14 56 126 84 33 241 83 171 22 179 258 272 122 166 2 14 137 85 296 133 217 248 50 50 141 17 155 97 161 170 102 248 269 187 131 62 235 14 85 270 165 214 282 40 93 119 265 24 47 7 104 148 189 304 297 49 18 301 226 240 129 88 284 256 172 121 249 303 273 148 75 227 290 28 159 122 36 81 202 104 190 214 71 7 188 56 288 125 232 181 38 236 73 203 182 64 136 299 221 71 204 274 89 188 165 79 45 94 95 252 83 278 257 204 35 110 160 200 22 59 150 58 199 284 219 175 231 106 207 30 137 33 242 117 143 15 52 103 192 277 130 259 105 25 159 14 103 12 171 104 69 28 43 171 101 301 131 269 197 213 11 191 65 245 157 239 114 22 273 286 114 263 110 243 39 37 17 262 202 284 230 249 212 14 196 159 2 260 156 95 132 258 80 218 227 148 18 275 273 281 129 216 187 213 243 43 291 80 248 241 213 21 7 91 262 121 215 124 125 110 135 50 41 128 101 148 75 226 205 138 235 182 2 220 175 21 74 38 285 44 286 259 37 244 7 127 1 296 114 235 186 300 200 245 151 284 126 99 90 63 59 12 15 119 204 77 9 234 164 51 187 269 67 146 267 52 303 218 158 172 110 102 299 101 200 219 47 291 101 257 288 40 99 32 217 74 211 25 96 15 188 93 207 202 154 284 304 70 262 99 78 244 174 133 243 91 179 146 194 248 268 173 284 74 249 111 18 21 32 138 100 263 151 206 209 16 171 261 59 33 251 245 181 117 275 227 3 71 145 38 107 302 160 3 243 248 108 202 111 192 59 108 79 61 178 301 248 190 1 219 211 138 29 134 84 169 296 48 127 172 231 211 57 146 280 185 13 179 154 294 196 229 126 169 47 57 137 150 5 302 242 291 6 129 61 215 275 110 189 33 67 33 165 38 178 199 26 100 34 124 6 100 177 136 172 97 125 105 20 145 256 123 144 82 138 237 115 280 71 87 273 74 88 238 123 190 169 101 101 291 166 191 234 248 62 137 202 231 219 65 214 166 176 93 253 233 303 118 45 11 165 211 130 227 92 146 294 233 132 63 190 203 281 8 192 69 176 214 18 219 236 149 150 285 155 8 276 21 289 64 289 176 136 296 105 252 20 250 234 178 202 208 52 255 114 212 88 177 183 148 148 188 57 181 271 10 242 47 23 172 276 100 29 14 294 13 220 199 89 146 140 38 18 30 158 5 253 100 246 176 8 215 162 135 264 184 288 174 99 54 108 190 140 269 12 60 294 69 196 304 65 48 261 252 143 292 304 130 188 18 257 49 140 252 147 218 147 265 244 176 163 187 300 180 245 285 40 49 92 192 115 47 259 285 45 168 66 135 144 202 66 206 73 261 16 298 296 97 140 6 70 106 29 43 232 144 226 249 288 288 154 287 244 125 225 54 153 207 15 98 243 283 15 234 286 2 49 128 247 171 295 205 32 82 294 106 65 257 274 198 163 79 146 261 127 4 80 13 275 241 250 238 65 156 222 122 71 165 192 266 237 2 50 192 284 144 78 237 245 88 300 269 126 1 57 188 243 26 228 260 223 141 233 175 61 299 266 65 10 116 211 198 84 79 168 303 42 32 243 67 28 63 62 137 136 285 208 236 193 167 57 4 232 40 188 256 36 288 233 120 91 33 76 40 121 79 3 297 278 288 209 206 262 180 230 202 282 125 89 114 146 145 14 10 100 234 102 112 138 82 208 304 243 187 217 174 152 102 187 217 278 133 81 299 112 86 191 13 247 281 154 194 39 87 176 50 93 47 114 106 29 76 59 220 49 280 102 208 101 86 70 212 152 21 134 136 116 37 42 235 14 245 180 19 300 13 71 175 285 74 161 250 2 61 95 194 158 175 94 11 236 208 79 50 238 57 246 91 179 175 190 233 60 236 132 105 9 276 42 104 228 239 144 181 35 182 109 207 50 55 185 245 44 163 182 1 144 141 74 170 57 226 163 169 19 269 254 52 20 125 267 61 108 218 241 174 264 59 37 35 166 299 133 174 35 124 269 15 91 297 189 75 269 215 241 151 302 131 224 132 253 217 82 74 272 13 248 13 197 165 253 23 127 145 87 169 157 15 130 173 86 32 184 83 107 240 205 36 26 234 95 209 287 302 53 244 132 82 209 144 108 108 287 110 91 56 102 147 265 44 272 232 304 120 204 59 8 108 243 266 226 193 204 37 75 167 55 47 229 237 34 203 8 105 194 203 7 111 264 187 121 210 168 55 113 109 94 24 98 287 295 108 218 174 144 70 79 27 165 160 121 84 255 283 109 242 152 127 208 81 252 33 185 71 284 16 254 289 80 239 206 209 183 61 245 68 97 250 72 175 8 59 114 253 183 221 120 290 80 70 197 194 193 173 139 280 208 102 17 131 117 285 294 37 194 30 253 227 135 156 260 164 224 205 134 41 17 120 224 257 257 85 77 32 238 168 264 179 254 102 166 259 139 131 9 93 126 99 45 57 209 14 94 163 254 102 69 295 117 132 129 262 51 27 289 234 52 82 146 250 98 197 243 105 235 258 201 194 104 188 243 38 207 1 285 167 35 239 150 199 159 220 256 167 145 281 89 257 117 90 203 139 34 23 112 113 20 179 240 45 225 290 24 251 161 97 65 154 214 143 221 213 54 52 32 71 188 88 146 36 54 185 244 208 33 82 185 300 200 14 229 37 77 2 24 218 281 203 150 157 97 96 4 281 22 171 118 214 212 83 277 52 113 264 293 207 84 254 89 254 150 204 244 251 245 81 191 155 271 137 196 183 21 149 271 177 179 131 148 208 118 210 98 21 219 289 59 270 229 19 271 40 302 104 281 211 276 234 250 110 130 140 14 241 221 165 287 94 210 279 175 244 252 303 272 60 5 212 113 194 155 256 236 119 97 79 190 7 192 39 20 146 189 115 25 38 226 260 152 234 34 260 242 101 150 73 161 145 301 290 41 161 272 243 232 66 76 38 299 230 116 304 74 95 273 174 232 17 135 263 118 114 10 219 81 288 144 252 163 53 242 276 33 294 118 162 107 8 130 86 80 68 12 203 225 67 184 158 197 185 167 141 241 122 213 17 120 247 91 235 286 243 210 272 99 267 150 74 266 256 5 145 287 163 227 93 172 216 177 112 119 177 100 61 39 252 282 55 104 145 99 188 1 169 205 261 222 184 51 66 88 277 152 225 16 53 63 117 102 111 145 25 77 170 255 81 298 262 75 71 181 155 245 151 214 24 283 154 74 93 170 126 191 174 302 275 74 288 68 32 184 150 128 13 193 44 247 120 138 53 41 303 255 233 16 150 184 239 7 276 182 73 155 3 91 226 135 162 62 44 156 105 11 126 94 234 123 68 24 125 302 211 189 230 235 155 7 79 142 35 82 67 24 58 219 72 275 257 29 73 282 97 296 131 94 228 51 127 302 110 293 70 193 126 96 41 51 129 132 136 263 6 259 115 250 236 243 109 157 278 129 256 154 212 122 180 197 103 270 32 297 186 156 303 207 226 85 119 255 209 133 285 95 267 291 166 167 122 155 55 25 218 88 245 271 12 136 180 251 254 280 285 99 27 184 287 263 232 143 282 100 20 39 230 152 108 59 243 136 158 258 20 259 69 52 59 152 52 290 258 192 17 203 195 293 273 236 96 140 274 30 172 155 56 138 84 52 44 264 62 4 229 279 303 76 77 278 152 207 124 22 80 229 133 51 110 302 137 163 85 205 58 117 80 27 84 217 119 287 114 113 174 116 137 41 140 276 50 292 57 270 294 117 132 115 89 198 285 156 10 141 107 164 4 236 142 46 106 109 154 176 138 244 20 304 81 286 108 47 40 52 164 269 158 231 210 97 146 59 6 244 109 61 54 40 255 166 152 116 204 261 263 172 254 234 267 297 261 214 177 201 118 167 289 239 254 182 164 37 253 288 150 177 51 252 232 186 168 124 292 169 164 240 35 273 270 111 29 22 103 294 119 1 235 134 294 71 156 61 40 166 208 56 214 67 289 82 10 19 182 60 157 298 72 152 86 237 49 287 101 206 255 73 163 193 122 209 133 35 128 92 255 299 158 191 137 227 191 134 164 14 250 257 6 12 197 292 133 120 299 41 184 147 22 13 54 227 258 31 183 258 236 243 281 60 85 213 107 188 179 136 34 77 33 144 262 2 284 275 112 94 232 169 202 217 196 22 280 205 289 174 26 16 181 299 240 177 196 76 179 249 3 87 104 18 231 24 297 220 155 261 2 241 83 265 42 23 200 87 162 212 61 143 217 221 235 56 296 45 79 62 76 71 241 124 170 235 118 224 183 185 242 260 21 13 17 98 234 183 42 188 143 304 96 232 77 200 36 296 11 119 215 181 85 302 256 135 151 183 183 85 233 56 88 26 59 274 59 74 189 179 200 217 277 44 98 75 210 171 142 28 291 259 8 103 110 94 273 16 292 198 159 169 194 87 207 302 77 32 90 289 91 225 48 224 122 69 57 68 44 47 8 32 120 36 127 213 138 8 132 109 209 85 64 153 184 149 11 280 116 92 163 246 261 142 48 138 61 26 1 277 304 130 101 140 75 149 8 45 151 179 241 186 276 33 25 146 251 278 97 291 45 245 194 195 173 292 9 22 177 278 254 54 36 24 268 103 276 193 189 45 124 161 291 222 272 222 185 4 59 46 38 34 104 172 238 191 284 41 232 175 302 128 44 76 222 260 168 290 79 302 23 232 133 158 23 291 213 123 4 114 127 104 122 66 263 190 62 94 275 200 219 16 191 167 184 188 164 164 228 171 257 151 243 44 166 84 89 82 172 24 185 9 124 259 285 158 297 107 178 207 227 68 185 36 116 92 239 127 292 135 98 185 284 191 54 187 288 280 200 272 246 56 251 107 164 134 210 192 83 90 62 282 259 255 105 223 52 248 304 247 296 208 279 28 247 191 72 96 83 19 103 198 166 171 154 105 243 276 161 145 59 81 145 92 6 94 86 166 25 40 28 18 241 60 31 121 107 197 218 296 95 141 40 256 74 161 76 240 9 186 37 167 33 51 1 8 144 143 40 29 16 89 153 268 3 289 185 213 223 105 219 222 223 84 107 276 17 48 223 178 168 111 70 122 155 108 100 93 269 280 138 192 75 261 289 141 12 83 9 214 106 217 143 117 50 283 144 33 294 248 82 84 229 256 287 241 216 7 142 165 60 154 34 271 105 221 244 62 126 132 41 225 289 65 241 90 51 102 55 11 116 171 183 29 167 239 167 279 58 42 91 76 58 148 257 34 166 107 104 106 288 264 46 240 49 52 194 156 42 152 226 179 265 261 7 222 32 118 105 78 57 288 42 244 299 18 253 84 269 182 151 168 259 84 231 106 96 63 99 123 165 289 301 164 151 197 130 164 173 3 37 72 141 48 274 61 162 99 187 231 239 85 38 99 56 233 34 203 202 207 212 60 162 304 276 164 258 253 36 158 175 44 19 214 270 245 217 231 99 209 198 176 294 51 54 142 88 208 25 193 216 13 168 126 22 34 124 14 246 235 27 42 63 25 262 265 262 96 22 256 109 265 158 279 17 132 125 94 153 57 118 191 119 207 72 43 268 274 272 263 132 190 20 240 300 190 245 50 269 124 259 253 18 146 213 250 134 11 111 92 81 35 140 147 64 64 235 3 141 113 296 131 123 32 64 20 190 49 28 66 146 172 158 166 71 266 61 72 120 295 87 43 5 80 243 135 5 99 55 183 113 106 290 151 269 55 16 100 167 235 232 263 178 107 13 8 119 6 169 153 301 90 14 9 249 169 296 269 54 216 287 82 249 156 145 88 157 252 108 235 59 88 82 37 289 253 77 20 217 120 282 58 50 250 33 155 224 286 193 70 111 110 265 251 219 105 15 203 17 94 46 213 200 204 230 33 291 101 64 27 123 222 95 268 288 180 68 168 39 13 292 131 44 32 60 46 204 302 258 279 269 288 255 170 254 246 91 160 5 198 69 116 117 23 259 148 118 257 218 50 20 121 253 102 95 38 227 217 262 42 285 14 291 109 48 11 119 108 67 302 221 121 283 287 161 63 185 172 15 141 207 37 57 45 100 235 269 155 207 57 231 263 109 244 245 153 48 135 150 260 279 12 267 191 96 19 115 3 210 11 59 238 203 58 229 106 34 270 56 130 254 295 84 186 268 163 28 194 21 271 141 62 28 18 271 131 279 74 280 241 5 38 170 299 8 186 83 236 75 5 98 7 135 69 75 2 55 106 269 190 217 261 147 272 40 296 31 235 58 104 91 145 97 28 245 231 196 260 108 230 288 251 158 138 294 221 50 301 278 198 129 244 253 169 168 53 82 143 203 162 298 107 201 64 76 151 40 91 289 15 85 47 253 145 138 1 129 256 73 292 74 258 105 276 47 38 112 269 180 43 11 32 122 39 171 162 135 118 66 261 104 303 95 256 38 68 260 255 235 4 79 129 57 22 183 229 21 71 90 211 59 218 255 37 242 227 77 118 300 41 301 157 62 132 46 78 270 228 108 181 228 45 40 197 265 79 55 43 113 63 283 177 34 70 29 92 183 138 244 95 286 23 71 157 163 104 222 223 14 245 60 248 41 45 297 32 123 88 274 290 198 129 297 125 259 241 78 280 103 178 262 256 209 242 259 75 17 118 151 142 184 49 246 232 293 23 277 187 262 302 45 147 167 98 95 22 244 91 302 202 297 6 57 38 154 117 135 206 40 257 74 253 145 240 25 172 172 70 272 26 88 231 166 91 122 65 125 256 215 127 74 206 97 28 191 2 165 96 90 229 235 194 22 159 125 161 120 100 97 152 150 17 11 135 41 275 288 153 121 12 46 73 299 299 54 61 154 272 153 271 187 14 282 31 164 54 174 70 138 303 186 97 158 47 173 87 235 97 4 266 29 232 297 231 304 112 168 3 275 124 158 241 186 223 232 248 60 266 142 257 99 3 91 21 1 74 59 195 33 136 181 90 236 55 26 15 14 109 44 137 142 284 18 143 68 182 144 156 45 14 25 243 61 70 47 292 29 240 78 142 287 205 38 172 50 31 239 115 242 6 77 114 7 5 283 287 192 5 73 272 229 297 37 194 240 190 150 14 244 259 3 116 106 236 174 153 214 258 1 65 168 87 297 208 97 259 168 57 137 41 134 4 196 38 11 252 92 165 165 171 37 80 222 128 34 250 96 30 16 258 214 226 280 298 195 155 235 190 207 188 204 192 24 147 121 144 14 151 232 289 293 166 40 211 278 123 288 244 126 92 243 303 93 73 275 198 70 233 49 102 220 294 235 177 133 237 249 260 46 221 78 51 93 140 24 103 56 63 51 71 228 14 259 192 72 217 53 69 12 110 27 171 183 256 304 117 248 30 213 110 196 103 303 130 124 159 63 266 145 126 70 38 91 257 123 66 48 112 23 255 29 71 4 36 20 185 264 187 259 158 247 53 133 70 8 228 121 24 50 126 105 245 218 78 109 156 234 112 165 55 126 250 74 63 287 278 51 172 114 168 287 105 185 170 138 21 250 121 19 80 225 47 158 107 218 251 126 220 110 203 219 69 118 197 250 291 209 280 299 217 225 106 135 229 89 249 133 256 304 279 79 258 142 7 82 5 183 7 177 34 113 303 144 67 55 147 156 136 120 191 57 277 91 210 240 77 216 225 28 90 164 283 198 264 33 165 93 243 47 216 167 230 51 270 88 109 162 78 117 80 232 286 200 294 44 254 15 217 256 175 299 51 28 54 19 61 265 84 184 212 185 240 210 192 110 15 124 106 159 289 34 26 106 192 121 240 230 287 292 240 280 78 208 117 192 142 134 22 128 284 206 98 134 265 103 111 101 212 17 47 179 106 153 14 282 58 28 127 215 139 72 173 56 97 166 299 287 34 155 186 45 120 297 37 169 256 98 244 245 276 53 215 201 219 236 253 191 266 195 215 109 234 287 171 226 93 8 48 153 35 268 216 210 304 277 107 139 60 287 228 201 85 96 227 201 119 213 77 167 178 223 61 303 297 259 189 203 122 123 29 50 121 94 8 235 273 295 107 236 111 201 130 211 21 92 143 130 108 214 61 237 237 128 136 188 73 202 185 135 147 80 271 30 24 156 172 170 197 252 111 75 223 197 140 106 152 56 7 215 261 257 111 192 171 229 205 239 19 81 147 264 222 82 135 77 142 18 66 153 204 19 217 125 221 96 83 92 187 219 253 34 147 241 151 24 63 32 59 191 128 288 22 151 273 140 49 78 100 142 221 232 285 7 103 178 230 5 203 287 239 295 84 153 49 251 184 221 123 27 186 188 14 302 195 102 276 59 182 74 89 241 54 230 34 141 181 71 304 107 139 154 113 99 7 189 206 188 11 161 144 16 18 112 285 4 53 48 170 69 293 157 283 29 138 96 143 118 282 113 185 299 249 282 149 192 181 256 279 94 175 279 153 55 212 13 8 154 61 218 80 224 130 192 236 178 265 51 33 232 300 211 176 84 288 225 249 209 174 238 214 115 158 22 226 301 177 278 96 96 32 2 268 293 180 171 28 68 277 279 245 298 12 304 202 106 48 266 41 212 144 126 95 97 224 77 120 254 244 46 144 54 81 292 212 89 142 121 198 209 2 77 167 61 150 96 140 175 227 300 266 160 23 54 39 73 103 248 192 259 222 145 280 51 105 219 24 98 153 170 176 234 184 52 275 150 166 201 241 260 78 121 110 117 181 3 108 24 216 217 230 21 180 124 84 78 36 220 249 207 116 26 194 98 296 81 299 72 208 32 102 1 14 105 15 171 146 16 12 225 211 229 53 163 184 31 278 139 11 14 59 132 8 64 42 220 164 116 62 17 172 206 138 299 189 241 148 110 198 48 142 302 285 247 62 242 50 103 177 32 3 243 117 23 39 26 165 267 276 237 192 262 29 251 124 39 4 22 3 56 29 215 56 302 119 151 153 273 271 154 235 4 137 10 207 251 24 6 187 165 298 11 176 99 211 260 68 170 157 54 74 73 133 5 80 65 42 226 25 23 53 280 46 261 211 34 57 74 244 266 101 246 74 73 196 194 219 58 9 256 13 185 34 266 81 225 96 278 147 266 155 47 296 180 284 161 271 291 295 62 141 54 256 224 278 25 139 229 268 10 27 284 238 182 148 264 81 3 19 121 21 81 88 112 15 265 239 183 81 210 197 273 90 203 223 236 213 138 186 145 300 179 86 270 107 96 246 117 86 106 50 284 2 292 166 29 15 251 250 172 104 146 114 82 299 178 131 57 234 24 253 182 188 52 116 54 219 217 80 159 2 78 55 207 192 94 201 72 106 47 246 234 88 194 244 163 259 140 4 257 239 74 119 85 151 280 86 65 3 178 123 286 173 213 176 210 14 251 278 19 280 302 295 139 27 294 123 25 238 87 201 274 3 206 48 260 224 168 14 97 163 140 297 98 87 136 17 293 149 197 26 140 272 288 254 136 98 239 17 83 159 59 176 96 28 198 249 85 153 246 225 77 177 39 167 168 253 177 133 215 170 245 86 174 51 51 235 206 66 170 221 36 77 253 36 82 183 78 297 134 48 238 39 126 215 170 197 207 289 257 131 150 27 278 112 85 187 191 282 221 122 192 151 303 134 21 42 38 272 213 279 57 297 113 169 98 300 118 113 163 143 165 181 148 10 14 71 186 196 155 115 261 253 64 14 208 286 41 22 196 200 286 89 225 52 63 279 127 292 260 167 136 216 218 71 273 204 293 223 108 43 201 179 220 84 218 260 277 249 136 193 254 26 193 174 188 221 291 223 266 37 183 231 276 187 101 99 171 39 161 50 226 65 51 92 137 70 75 218 154 165 255 132 106 67 118 87 93 212 158 259 182 221 136 184 122 123 23 250 285 241 189 269 145 111 298 122 9 125 149 302 217 25 129 205 289 65 151 138 70 147 156 193 100 24 173 228 232 197 231 258 149 182 186 86 214 284 246 292 41 116 154 166 119 296 59 176 218 71 49 224 27 293 191 63 123 77 246 262 102 131 79 138 235 24 282 184 124 253 152 102 263 217 120 10 3 229 284 65 6 72 194 43 212 232 77 87 1 123 246 274 32 117 193 259 138 99 181 202 47 213 154 30 61 86 182 16 67 105 191 205 227 119 292 171 39 177 163 207 279 259 32 139 15 161 232 254 169 93 4 166 110 14 150 50 169 274 288 298 4 45 81 184 246 131 140 9 235 68 94 37 104 133 205 119 57 180 23 217 186 64 197 246 106 107 96 55 73 245 106 151 244 119 217 191 209 253 78 266 63 245 193 286 194 41 57 71 282 239 86 192 71 146 34 218 270 104 181 174 136 62 110 262 226 115 91 63 138 192 270 288 49 175 131 117 69 264 50 190 67 4 38 2 287 33 105 168 44 104 50 301 11 121 10 251 292 242 276 68 215 201 261 294 208 113 14 102 78 71 196 194 302 90 94 124 153 164 181 62 299 274 162 241 176 230 120 210 165 234 218 109 126 71 131 76 144 135 194 5 98 171 103 42 68 188 226 6 158 231 210 101 37 126 210 236 114 118 49 100 299 163 141 35 283 102 294 132 228 33 195 252 142 253 30 97 267 140 85 127 207 301 206 68 27 55 84 191 88 283 248 61 233 244 168 138 146 88 168 18 45 185 84 140 107 162 302 224 191 294 40 224 114 190 28 197 5 250 129 109 55 113 274 122 244 83 115 234 178 119 83 59 83 60 33 34 123 14 97 10 230 62 26 136 92 162 118 134 65 80 78 213 202 5 154 183 193 21 164 45 153 275 258 173 191 243 115 147 283 162 5 129 127 38 65 47 64 227 153 51 255 9 83 251 80 271 295 144 262 279 25 135 111 116 139 67 201 269 293 103 154 101 242 290 132 225 42 39 276 223 147 172 262 274 298 36 131 102 70 107 110 40 239 181 28 169 169 99 56 44 271 199 200 56 165 161 160 95 98 187 14 179 226 4 223 165 69 81 133 136 7 240 149 2 290 282 124 181 71 114 72 193 272 22 213 220 204 159 241 254 90 288 190 103 27 8 115 97 204 22 297 47 120 94 33 211 253 155 111 235 51 217 96 289 200 22 56 105 165 103 291 119 295 217 43 209 163 6 40 239 17 37 62 44 121 302 96 195 41 96 101 192 109 46 241 184 258 296 197 237 62 182 147 272 99 5 298 41 271 257 42 144 91 178 151 48 37 225 243 231 128 46 51 284 147 205 35 196 73 263 41 170 159 147 276 275 220 73 68 130 178 143 24 118 126 90 72 181 265 160 211 192 128 85 168 78 82 65 176 203 48 261 160 202 7 167 130 16 134 178 140 29 68 206 302 217 258 153 77 15 126 278 235 37 115 257 277 106 36 131 16 16 290 36 154 274 159 48 286 190 18 177 157 202 99 122 196 258 37 61 252 221 239 159 276 163 271 216 238 228 51 65 51 45 137 223 82 173 300 266 269 118 89 230 103 275 1 278 128 83 1 230 195 141 235 263 62 256 183 285 44 185 124 251 215 100 71 164 166 191 38 9 272 86 160 20 78 23 157 59 106 1 197 223 264 229 289 97 43 256 180 89 210 139 123 286 292 3 202 10 119 292 297 205 243 251 195 190 251 237 152 193 242 9 295 146 211 269 76 156 131 72 4 44 136 41 175 43 293 51 35 63 298 154 233 9 222 132 170 250 153 303 55 48 296 188 12 261 242 235 286 295 148 213 234 185 279 94 197 44 215 81 112 60 303 269 200 197 1 153 78 249 178 195 171 115 174 199 231 144 257 89 184 56 42 215 110 100 154 123 114 101 304 46 116 71 92 209 25 32 280 234 211 239 110 104 97 235 190 97 199 41 8 235 187 78 199 191 228 211 63 260 235 51 132 241 160 69 9 73 80 303 226 203 154 234 36 27 152 92 166 256 278 154 204 72 116 295 285 119 6 17 183 293 210 302 41 186 284 131 285 301 244 1 71 76 201 53 221 61 95 9 283 34 57 262 206 291 168 162 271 8 297 213 82 110 292 222 290 11 73 1 137 167 80 156 151 212 82 163 145 47 13 72 51 70 241 76 242 160 200 257 43 266 274 71 285 260 40 238 31 156 272 225 266 234 154 302 301 83 206 303 163 180 120 121 135 298 142 185 298 234 200 149 29 65 32 114 188 94 46 163 254 126 222 295 32 282 140 138 226 184 205 176 25 39 127 217 297 206 239 20 301 239 265 133 119 266 237 112 268 55 18 93 159 166 27 42 20 186 244 75 219 257 149 201 67 132 143 94 137 197 279 38 121 137 229 279 130 133 109 285 149 27 191 200 288 285 36 98 10 254 277 271 295 186 249 250 37 112 63 95 159 248 136 262 144 199 296 284 301 126 110 101 12 82 164 205 215 212 184 126 126 108 24 284 107 31 106 81 230 201 215 296 281 138 111 136 224 186 81 112 80 41 217 73 77 279 119 221 86 36 141 219 265 163 112 169 210 66 17 192 82 45 6 30 89 138 172 96 194 286 119 257 58 174 109 128 194 104 38 123 53 108 78 24 207 80 18 262 253 18 60 283 89 299 240 32 95 295 157 12 51 213 27 91 148 203 93 62 257 270 159 205 144 21 28 8 197 8 196 277 279 262 287 201 8 292 270 145 176 243 189 34 163 250 217 152 20 249 48 126 131 134 130 20 264 297 88 247 207 121 3 292 52 108 132 299 48 96 258 186 133 161 2 254 253 299 271 201 274 274 289 73 218 37 30 216 182 262 281 117 187 259 152 223 246 211 127 117 206 210 27 155 69 25 190 6 50 44 295 298 70 153 35 9 177 214 52 236 58 290 191 282 148 30 288 286 143 259 299 120 145 295 111 289 254 107 21 211 165 147 104 162 133 202 96 94 251 203 287 48 217 276 271 294 140 141 136 4 266 11 208 33 210 148 15 61 300 304 132 85 40 12 304 35 38 304 163 290 225 285 300 39 258 3 106 107 67 277 112 3 109 210 16 262 72 21 286 126 260 66 228 51 257 254 83 187 156 120 84 23 213 218 162 138 194 165 62 105 180 4 256 36 14 235 273 180 171 296 163 215 132 23 273 79 148 104 99 136 72 73 294 233 211 272 85 79 261 78 258 2 174 205 33 82 282 166 273 147 274 59 107 25 301 61 286 217 201 96 129 41 290 74 143 162 273 209 252 287 186 254 97 71 247 131 78 37 185 59 159 275 286 103 175 34 74 220 222 59 257 109 27 116 126 103 216 230 300 266 142 168 195 144 171 85 217 34 271 236 188 265 236 79 270 11 85 185 64 182 146 209 220 251 167 300 163 155 122 147 40 293 197 130 264 274 25 215 210 173 105 188 215 237 289 230 38 93 280 118 24 37 110 116 164 12 223 62 129 26 148 273 126 5 169 222 163 75 254 72 67 281 96 180 149 143 87 183 174 34 65 29 101 174 79 190 249 53 51 80 200 210 22 154 206 243 295 205 111 81 15 155 271 30 180 277 34 15 236 156 105 181 262 177 70 199 131 56 29 9 12 231 202 195 170 299 189 62 87 188 157 100 111 49 87 155 1 299 133 229 196 98 38 74 147 31 64 13 277 186 287 258 260 93 111 280 143 244 211 63 145 240 1 212 252 219 232 35 21 184 41 25 205 302 120 29 220 261 22 90 18 79 56 259 195 77 267 89 52 166 121 175 124 6 295 285 257 303 204 113 142 7 120 259 200 68 226 155 152 102 19 199 137 129 249 292 224 88 43 280 230 72 70 62 147 231 221 281 202 191 84 31 289 46 244 244 268 97 9 44 280 215 108 170 73 151 210 24 298 157 232 246 24 20 63 118 261 176 140 291 222 18 202 21 19 52 173 39 103 231 179 86 133 163 67 129 95 59 166 78 183 187 142 116 2 134 301 246 28 16 302 217 285 270 201 226 170 176 182 213 38 228 34 84 91 287 288 17 125 151 177 15 150 275 141 101 46 282 214 80 249 119 170 304 34 14 142 146 230 8 28 300 186 235 36 78 300 43 10 142 54 266 105 160 133 20 42 101 211 85 86 120 168 140 272 246 155 75 236 176 201 33 199 98 301 274 194 165 268 281 81 140 42 129 282 173 174 258 121 294 238 132 166 123 159 274 200 103 21 5 81 82 180 176 145 5 2 222 190 80 232 35 44 230 92 62 254 196 189 106 259 149 161 179 89 284 63 84 302 77 71 301 5 204 157 259 65 190 294 100 171 225 157 159 153 136 155 304 186 154 303 233 173 250 285 151 56 155 263 32 292 83 237 155 109 35 97 234 3 204 241 244 66 152 99 148 171 162 176 155 138 301 266 2 75 21 220 106 264 170 275 190 178 294 156 119 193 4 290 20 172 75 258 207 211 16 170 256 171 225 255 220 131 165 10 6 192 194 189 245 156 160 282 173 46 44 105 249 107 298 74 4 51 78 267 228 257 37 162 129 244 292 179 124 224 225 207 41 182 43 290 290 191 53 214 112 22 253 72 234 230 120 166 146 109 286 80 243 60 62 223 74 231 82 217 99 196 69 94 269 195 161 249 284 233 210 168 258 54 57 52 191 211 121 22 165 104 127 241 274 157 237 106 39 174 228 48 64 171 159 285 119 28 169 131 212 89 29 152 196 160 219 32 159 66 232 256 156 292 143 58 192 58 288 285 3 169 113 293 104 195 257 115 213 207 3 59 99 181 109 256 127 210 164 36 248 31 40 94 118 300 258 248 23 132 259 285 243 27 68 134 95 165 213 257 157 139 254 17 148 293 298 153 165 272 300 22 259 148 24 57 196 46 30 197 218 61 202 230 284 195 75 64 167 277 171 204 232 136 88 142 65 6 162 125 24 108 130 190 241 61 281 140 277 146 37 20 54 240 158 181 55 244 303 298 260 69 251 125 132 122 179 82 1 235 217 63 199 177 151 270 69 206 194 295 1 292 111 184 54 40 298 267 262 285 29 110 170 39 115 118 253 60 236 57 2 232 276 14 234 153 234 19 58 191 35 91 38 231 178 172 199 125 261 219 288 237 48 171 138 64 156 184 254 50 120 98 164 169 69 210 197 180 268 211 106 67 292 218 2 99 234 87 260 290 131 103 244 75 98 82 154 125 33 133 296 67 52 50 178 53 147 35 131 52 96 119 4 228 132 225 36 157 53 2 155 211 300 178 50 74 134 190 14 190 247 256 203 70 262 6 189 235 5 224 74 150 40 301 136 279 192 273 57 89 270 105 136 67 251 250 125 174 110 225 6 150 17 278 128 47 98 12 190 117 76 160 238 251 270 262 302 123 189 233 4 148 285 136 244 185 273 203 189 258 92 15 254 136 162 1 163 133 154 15 197 82 92 273 286 215 31 77 289 149 173 59 35 175 98 263 160 182 128 170 248 88 73 244 136 55 223 66 89 74 175 209 110 36 287 67 163 243 231 166 268 52 115 74 105 109 39 148 52 226 204 141 175 164 87 212 90 248 66 198 81 130 154 156 165 56 3 183 95 121 3 132 27 63 76 276 195 84 240 161 45 26 27 180 218 178 128 242 75 258 112 267 92 276 169 110 123 77 233 10 76 72 109 50 253 140 254 125 240 35 112 23 238 283 227 144 72 6 256 220 45 127 166 182 221 146 199 100 185 70 34 276 271 191 7 40 37 127 174 79 87 253 295 280 126 48 282 6 41 265 155 261 106 70 168 199 120 9 144 29 123 166 110 26 2 209 91 255 296 143 77 83 72 130 259 289 280 96 99 274 157 180 6 289 159 188 121 174 173 63 260 207 304 135 272 283 255 294 53 224 134 299 192 285 250 300 304 63 64 74 299 197 297 149 57 184 167 24 187 33 233 136 185 290 44 23 44 164 222 148 232 274 272 43 216 195 42 108 21 113 25 302 283 195 271 202 212 121 143 33 247 284 258 61 129 31 294 161 173 48 70 244 295 215 139 52 164 244 174 165 283 103 241 183 159 47 23 105 56 268 229 40 159 101 126 254 114 282 82 26 107 257 232 295 270 269 274 88 57 114 236 246 288 191 84 167 3 95 34 175 34 99 63 286 131 210 278 94 28 23 102 302 177 118 209 301 10 90 34 12 33 269 288 201 295 31 213 58 259 189 287 19 27 118 6 123 65 94 66 4 217 287 94 60 164 165 207 14 25 250 177 57 292 195 66 226 220 292 144 243 45 224 231 208 233 170 161 10 192 185 51 62 251 62 37 109 100 50 258 303 107 14 254 53 259 209 271 191 286 206 147 106 103 135 147 94 1 119 225 20 201 44 148 22 150 245 290 93 36 84 275 28 77 297 159 71 193 196 123 72 207 214 264 143 116 101 29 174 211 147 85 70 241 54 36 89 210 191 261 229 181 211 169 130 94 160 6 248 53 147 210 59 174 94 178 205 145 194 6 122 221 143 210 181 242 77 14 160 214 217 149 208 51 127 182 78 94 213 75 242 238 184 282 114 19 31 86 135 163 230 92 83 101 127 113 257 10 296 128 98 48 261 250 128 170 286 16 143 174 125 239 84 89 91 147 151 194 126 43 27 20 299 15 187 196 88 214 211 58 44 210 190 233 51 147 39 119 81 78 94 1 95 176 9 229 135 22 225 172 124 53 254 101 290 161 3 129 197 191 181 101 180 134 146 279 259 119 286 49 38 18 209 32 181 11 284 119 289 284 2 43 188 75 16 195 278 208 2 32 144 258 262 258 93 265 232 270 243 249 180 283 161 231 115 88 141 94 30 157 97 118 55 5 131 65 83 124 93 227 299 230 64 11 227 191 245 49 53 197 30 238 194 270 220 53 212 264 291 37 278 138 71 147 32 159 59 297 171 22 170 261 104 255 217 132 41 267 102 12 4 208 48 256 75 257 61 153 293 237 139 83 116 253 92 231 245 206 92 127 139 256 284 139 203 196 116 108 300 268 257 267 74 164 114 106 33 110 255 197 267 290 144 120 257 150 66 138 93 154 182 34 51 178 160 155 112 245 108 44 209 188 86 253 221 277 36 259 261 224 171 192 25 257 138 86 85 206 71 50 150 71 271 28 301 11 300 157 186 141 108 23 249 14 65 19 92 226 161 36 272 188 189 292 16 58 167 233 274 122 118 25 227 247 230 66 4 35 224 154 221 191 170 178 28 271 148 79 131 230 147 163 281 93 31 256 210 253 30 267 16 207 153 14 122 251 22 61 216 302 22 129 161 242 76 265 132 144 59 48 114 249 88 128 211 135 252 29 89 144 88 105 78 126 72 137 196 187 285 233 43 207 214 89 279 120 182 163 295 301 251 159 167 46 167 69 199 213 118 185 202 182 298 72 84 186 197 288 234 296 243 2 117 128 52 33 247 81 170 287 38 235 56 204 58 131 133 97 74 112 126 246 127 201 110 212 279 238 110 297 14 253 230 69 169 304 202 80 204 93 273 30 124 218 147 218 174 224 227 37 36 252 67 110 247 297 301 258 43 227 176 49 264 132 15 107 85 196 275 282 79 186 292 242 162 113 23 240 151 119 173 74 137 267 115 126 28 249 72 137 3 163 227 272 152 236 101 26 239 293 148 174 17 199 44 75 211 28 145 238 227 222 233 23 190 95 267 158 141 13 291 287 178 29 267 245 46 208 139 99 252 252 156 209 3 164 111 209 224 18 226 216 33 279 176 41 167 242 270 151 4 211 26 299 160 75 172 136 1 105 162 165 34 72 282 273 301 3 16 155 96 180 150 74 150 113 143 271 94 191 74 143 270 267 11 286 164 291 183 282 102 170 88 11 157 188 217 285 114 122 114 83 300 208 139 41 171 31 66 101 267 209 251 171 7 88 128 63 18 253 270 18 133 193 273 9 38 232 109 188 69 86 164 70 180 262 61 207 84 77 208 221 187 296 265 239 297 49 149 258 289 39 170 241 48 244 165 281 8 23 221 189 149 204 301 32 68 3 269 103 25 25 242 31 133 68 253 104 37 5 198 267 183 293 176 93 258 264 56 226 32 180 197 129 270 200 233 130 104 94 37 255 236 31 103 139 26 71 231 231 179 281 222 102 287 252 33 23 62 191 166 200 246 265 198 235 224 67 86 41 55 21 67 300 166 201 44 273 64 267 57 117 75 83 279 184 56 94 154 53 290 29 264 199 32 8 107 249 22 102 77 237 184 91 13 21 185 84 269 11 56 125 149 97 280 294 105 229 3 92 104 4 14 168 206 255 280 217 217 165 94 229 77 42 244 129 268 298 196 82 195 130 270 292 94 23 46 147 233 113 43 153 61 271 100 291 19 164 190 112 12 234 20 179 44 64 217 170 87 281 70 24 36 9 294 286 91 214 148 106 122 9 198 216 262 266 238 67 105 204 151 240 182 222 285 180 281 50 118 18 134 210 114 37 98 43 277 96 56 178 259 138 252 144 73 62 250 57 247 16 44 298 299 276 248 289 237 115 4 84 244 224 198 286 230 104 240 164 186 154 49 175 302 9 296 261 131 173 19 221 93 116 70 213 152 183 63 148 104 303 106 212 205 89 150 200 40 15 209 149 2 291 140 97 27 207 9 109 190 267 15 127 245 229 20 106 8 261 90 87 166 298 175 211 301 200 178 35 279 138 228 108 289 48 69 157 58 44 29 208 260 257 23 192 192 272 33 234 24 273 60 86 222 256 239 261 196 38 139 98 211 253 96 250 231 150 159 110 90 232 214 136 55 90 97 196 216 147 234 10 63 256 69 80 100 273 204 245 39 134 190 60 58 279 98 31 54 203 211 193 270 24 24 95 240 81 298 110 152 257 297 208 210 260 286 297 14 222 86 226 50 273 230 32 85 282 85 216 205 208 276 79 58 19 194 222 56 149 212 292 108 164 5 159 180 285 91 176 172 97 90 57 296 154 271 42 301 276 37 99 215 48 97 227 179 4 179 16 158 243 29 153 73 241 195 299 280 281 84 277 250 27 195 171 7 123 235 66 35 266 180 291 143 291 273 62 105 282 202 100 219 183 15 41 77 176 150 233 287 177 34 205 120 58 259 12 15 122 22 297 149 114 94 301 69 146 97 201 70 120 193 191 97 126 19 65 293 229 106 132 72 99 48 290 71 144 43 247 257 50 205 77 285 200 259 187 163 57 198 39 20 1 56 130 119 50 57 204 179 134 235 119 70 185 281 253 135 78 46 227 19 179 152 34 187 87 50 27 18 172 89 227 158 36 198 11 192 70 40 211 118 242 278 288 295 304 290 56 209 27 239 201 303 210 303 50 64 40 201 273 180 220 193 254 89 247 207 276 77 70 133 83 263 246 148 37 67 202 63 300 270 8 285 288 124 137 116 30 288 122 218 218 46 14 159 169 199 257 248 212 256 207 240 241 283 273 45 73 244 124 129 300 247 146 144 65 110 52 154 75 232 117 273 34 261 216 103 267 191 182 147 1 75 56 83 7 222 54 261 29 211 257 133 200 261 154 73 220 232 207 281 300 54 243 196 257 263 26 176 162 126 123 75 204 187 63 69 182 3 113 300 256 161 71 101 173 16 143 114 99 100 210 81 44 18 126 223 33 48 289 137 263 174 67 161 119 304 180 215 99 240 91 168 125 117 208 64 148 13 110 135 29 217 181 277 169 38 74 194 11 166 118 179 230 240 150 110 42 254 9 89 196 277 179 55 181 190 251 89 180 249 142 299 244 257 150 141 84 273 86 46 171 211 17 93 170 129 34 201 171 176 103 12 296 74 72 98 59 168 216 180 62 52 7 248 140 175 203 75 284 205 37 117 22 124 2 274 251 61 66 85 256 285 49 77 289 2 88 95 172 104 186 292 234 136 194 103 178 261 291 129 288 16 59 96 57 244 243 227 17 108 192 57 165 129 23 217 174 262 284 254 198 217 162 186 86 11 203 68 56 253 303 201 289 304 90 77 203 169 297 223 49 241 255 223 164 49 57 47 260 246 276 50 227 23 56 258 174 84 183 107 174 235 159 240 194 38 150 134 77 6 78 152 136 28 175 119 201 20 82 116 227 183 55 281 209 299 196 94 137 204 115 5 195 96 22 256 242 249 118 37 100 272 270 195 9 267 254 96 261 231 241 77 183 250 188 156 158 128 229 77 204 135 46 101 205 126 165 168 244 105 225 291 78 79 124 38 153 90 30 2 128 188 276 269 237 260 13 176 159 125 20 247 181 134 248 88 259 123 255 194 54 271 296 36 148 91 119 104 14 174 250 167 185 144 35 156 246 178 271 58 252 227 165 135 112 299 241 202 230 111 30 200 6 16 194 32 100 30 262 227 232 107 187 298 31 237 117 133 13 93 275 92 303 12 185 135 246 135 156 195 286 195 154 204 194 229 258 287 120 117 16 103 293 165 227 108 177 244 278 91 29 150 122 47 91 229 202 272 135 301 292 150 267 60 134 136 294 114 280 218 107 108 20 23 96 258 166 198 241 234 139 230 64 149 19 94 151 101 279 47 282 209 145 1 112 295 224 159 170 268 124 7 271 85 157 108 249 254 282 303 237 122 146 249 153 242 32 249 16 236 156 300 67 184 276 213 169 7 223 23 91 268 293 71 145 224 71 224 215 301 187 152 80 105 131 176 8 80 45 184 59 198 304 15 84 194 113 184 137 137 304 119 25 285 272 303 229 80 39 258 32 23 240 154 258 80 13 128 230 211 145 117 173 243 24 136 97 16 266 70 256 84 103 69 42 1 271 281 297 107 221 94 192 79 11 138 273 271 87 93 160 74 197 139 60 59 204 117 292 64 53 287 234 208 215 195 144 67 270 21 109 289 13 74 58 97 101 123 154 274 227 213 120 38 39 178 266 258 169 93 166 92 39 250 70 114 6 71 286 153 291 28 197 182 112 175 278 66 226 205 45 286 290 158 151 176 67 169 236 265 170 289 53 194 290 94 192 190 269 155 255 142 250 148 119 248 22 70 280 234 34 140 98 103 200 131 224 300 207 92 178 177 75 165 101 11 251 2 280 88 87 148 154 64 176 100 127 156 183 148 176 108 90 91 207 32 112 99 214 263 50 113 190 56 178 301 151 132 280 80 63 177 285 63 292 135 188 61 172 107 117 160 243 228 67 222 210 125 90 66 100 189 298 104 254 166 54 192 286 123 293 101 249 39 193 238 178 126 142 298 72 111 16 83 125 19 253 5 150 288 143 215 253 54 301 226 181 50 9 252 282 199 11 15 176 119 146 279 195 260 36 34 183 224 190 28 66 219 27 121 178 253 67 112 197 151 166 298 61 145 68 218 153 85 257 116 93 23 178 215 92 87 210 255 42 249 107 226 269 74 258 297 281 70 35 233 173 95 39 304 287 229 258 145 160 42 226 284 195 230 147 238 231 13 2 108 176 189 127 269 278 31 69 240 214 130 8 254 289 48 199 19 251 61 160 36 189 247 129 165 117 171 276 271 288 257 292 63 20 101 230 48 164 4 214 271 104 302 208 191 266 86 164 155 197 207 182 5 195 104 186 265 135 78 170 38 275 132 67 288 288 29 120 183 101 22 26 251 266 260 281 250 101 153 17 291 33 198 236 266 248 96 260 57 130 156 246 244 52 160 87 288 236 233 261 254 132 83 296 290 5 177 88 143 183 281 117 8 89 53 164 246 78 284 106 267 249 47 259 57 144 98 4 102 6 151 136 243 23 56 250 58 254 31 266 23 18 94 272 273 74 5 231 254 130 209 165 33 196 84 269 169 44 277 177 148 262 156 209 35 209 220 167 117 148 177 45 233 175 228 57 50 258 48 146 2 93 220 54 166 42 223 258 222 268 111 200 175 166 265 259 39 246 11 167 127 214 101 257 134 251 256 302 191 51 29 258 189 264 231 191 185 132 143 300 264 53 144 256 72 4 157 222 213 60 288 39 119 219 122 77 248 298 176 31 152 45 227 201 63 130 290 40 229 63 284 205 188 12 53 228 39 220 87 260 221 8 217 175 266 128 166 13 136 10 54 248 101 130 132 37 81 246 88 56 302 229 159 16 170 271 258 168 277 216 158 51 243 235 102 8 237 151 157 121 146 124 199 205 206 239 234 64 31 164 226 250 55 193 260 16 76 6 19 256 80 282 126 208 14 129 83 303 274 269 41 292 288 73 173 144 278 195 161 81 79 21 106 36 125 57 80 187 29 96 33 100 164 32 156 248 127 83 244 184 112 147 132 126 202 248 253 15 54 57 57 184 118 129 211 266 26 303 107 132 122 161 259 211 65 16 184 251 112 130 126 95 51 242 233 231 20 275 126 234 110 266 208 32 206 285 110 75 150 15 47 227 136 242 227 106 48 101 140 63 187 159 89 105 209 4 39 300 60 135 160 14 163 185 40 85 46 74 278 91 44 268 198 134 170 46 11 203 271 101 299 242 72 104 242 142 90 216 192 22 88 17 257 288 301 145 276 280 170 152 257 205 188 248 91 189 85 206 66 277 2 249 156 204 79 2 133 254 128 44 224 275 280 256 225 228 138 85 49 160 260 100 213 238 273 244 119 158 159 72 178 297 87 76 12 115 227 178 206 32 262 258 125 195 42 196 175 206 58 296 86 104 249 150 88 131 112 44 292 132 166 270 227 251 13 149 124 79 98 180 122 263 260 144 19 87 110 133 26 178 128 53 38 284 68 244 66 12 41 101 144 201 221 93 201 100 234 241 141 150 49 2 6 245 124 73 165 143 293 188 66 205 188 282 286 24 221 252 50 10 83 256 270 11 186 178 104 123 105 87 17 191 116 146 265 167 24 168 270 5 52 199 223 50 225 262 215 45 227 170 39 246 216 14 180 23 293 183 25 255 129 192 36 230 202 192 242 245 251 198 223 295 137 192 30 153 73 246 174 122 185 248 130 94 279 32 222 21 301 4 297 101 73 271 92 99 222 104 159 233 35 200 56 46 129 148 203 158 176 150 64 35 251 254 134 49 244 212 202 108 51 207 150 149 182 143 17 297 209 235 7 132 253 101 151 12 16 89 73 57 150 239 261 272 104 39 32 194 89 191 98 304 80 163 133 168 303 89 229 55 7 19 130 193 251 252 106 195 148 254 213 136 148 261 128 50 136 189 197 266 221 138 15 292 233 45 105 4 74 201 243 49 111 98 87 291 227 215 113 103 233 164 263 172 88 40 121 289 88 2 229 177 215 3 285 121 68 38 138 178 2 219 263 239 11 302 144 192 204 217 256 192 159 196 27 66 175 279 203 245 26 288 262 206 97 75 25 172 290 80 160 119 294 301 52 131 193 70 131 18 87 168 250 164 74 182 236 247 204 50 75 276 255 205 223 250 88 94 153 44 278 44 26 55 149 273 272 32 139 8 121 108 58 198 114 159 106 25 276 270 135 205 210 186 205 98 153 64 190 95 160 41 137 253 78 288 45 75 266 250 12 179 107 227 153 146 292 196 222 60 16 242 254 165 290 237 154 17 89 258 285 219 37 11 175 247 18 2 102 58 178 156 143 303 84 246 293 98 195 219 166 70 181 65 82 21 212 111 53 143 149 235 115 64 269 200 205 67 105 122 31 67 248 253 251 219 225 92 262 256 268 286 100 178 24 277 300 221 282 70 4 3 269 258 115 157 47 233 73 73 231 284 134 37 18 45 260 58 100 221 20 173 121 85 132 112 226 157 192 122 78 258 282 35 258 203 113 227 122 303 133 172 81 300 278 14 71 90 50 66 99 254 247 82 19 266 4 244 113 168 12 156 69 226 187 92 127 225 214 37 56 50 119 115 50 68 182 138 43 51 249 284 111 176 118 164 56 133 247 168 46 291 62 272 29 224 295 94 295 35 202 277 186 287 282 232 109 79 223 218 137 222 77 44 22 200 251 240 68 225 137 32 213 100 58 132 169 97 18 228 92 9 266 116 7 126 250 205 197 302 2 1 46 99 45 37 290 119 262 48 76 159 106 117 27 136 64 71 176 123 108 167 6 244 207 274 246 199 70 32 200 23 286 190 170 222 113 284 58 54 43 63 298 30 105 18 294 238 156 129 220 89 226 83 83 68 212 182 58 26 229 141 20 173 97 25 153 145 6 271 132 135 239 109 161 173 300 265 134 115 154 202 236 56 152 149 67 53 244 130 113 88 303 269 258 241 193 114 237 105 118 233 39 217 245 256 278 208 270 12 178 159 85 78 191 109 89 129 138 281 61 95 201 7 94 15 239 277 303 232 76 282 168 256 241 93 64 248 75 239 123 161 281 139 163 295 280 60 253 120 40 26 30 156 133 294 288 115 165 84 88 68 114 130 133 86 275 56 169 241 257 279 5 4 297 16 127 86 140 53 276 154 9 132 246 265 8 183 232 168 23 13 219 105 25 27 181 217 34 149 235 273 26 172 105 62 13 26 243 82 242 223 32 87 152 262 158 138 71 64 231 176 15 290 269 256 48 88 173 11 192 254 245 215 279 264 277 236 43 116 114 92 166 127 54 291 13 116 34 176 1 60 92 181 212 91 21 106 285 289 287 248 177 34 190 125 191 176 275 92 281 290 289 49 172 186 178 80 64 237 226 198 195 148 116 142 180 63 236 270 84 152 84 190 138 51 194 100 42 57 176 145 53 111 60 207 146 303 294 68 239 7 225 268 292 18 105 103 12 73 28 92 127 108 79 69 16 127 36 186 300 9 67 84 218 91 15 72 6 190 78 145 134 101 81 63 8 159 245 146 118 207 300 29 104 80 45 29 63 136 189 140 202 210 172 173 261 257 299 39 70 3 191 275 288 145 85 288 267 37 226 37 301 123 118 97 189 224 268 201 18 292 254 263 222 302 191 47 260 191 252 62 293 53 34 184 38 250 204 248 302 280 268 56 214 30 277 98 129 234 137 59 113 32 216 72 59 175 152 32 21 63 127 106 263 258 84 186 260 302 215 190 130 273 226 128 273 10 189 178 228 51 155 67 168 271 210 39 17 134 208 99 205 9 173 139 116 66 86 47 34 15 281 119 204 299 68 27 173 255 132 153 128 274 91 40 53 22 83 129 269 230 218 156 57 33 97 265 253 102 99 227 250 32 126 66 21 115 80 90 160 13 112 159 89 104 202 44 236 100 93 271 210 169 123 294 50 97 294 43 236 135 9 243 110 73 270 230 183 134 82 33 140 200 179 52 284 145 294 88 282 135 263 197 118 56 130 282 228 10 231 43 93 132 300 249 85 165 195 75 116 73 278 32 100 261 99 254 100 250 223 195 101 227 71 43 112 86 278 58 264 94 302 201 73 304 146 104 114 32 195 167 243 150 12 194 54 177 272 166 121 220 114 285 254 234 119 87 1 252 201 222 188 264 228 11 62 247 73 258 191 211 211 237 77 119 278 286 69 35 113 190 118 196 3 262 152 247 33 265 277 243 50 238 282 14 81 295 115 233 209 86 235 30 130 75 90 260 133 196 99 39 26 12 234 294 247 166 129 116 107 237 114 5 16 44 119 197 181 115 19 184 156 234 66 5 175 229 210 227 232 161 228 61 149 230 8 257 47 165 231 18 141 214 282 246 289 193 215 266 4 124 176 192 32 275 289 53 62 121 116 171 81 73 221 13 126 194 211 236 138 260 36 300 175 93 21 212 88 66 203 201 232 74 201 278 223 55 303 199 83 168 103 88 132 188 182 237 300 74 2 219 208 51 99 112 167 180 214 288 113 221 234 297 195 115 21 134 157 40 145 228 244 32 118 236 253 213 172 184 57 118 131 265 219 97 285 149 119 55 17 196 173 21 22 56 3 248 37 260 280 2 76 212 110 10 166 82 21 7 172 27 210 188 74 172 291 60 290 298 120 205 304 148 241 287 237 303 140 129 127 4 183 126 235 134 32 222 263 91 155 10 75 135 224 102 34 222 145 30 51 111 304 195 180 96 200 248 51 26 240 200 64 145 188 85 237 254 213 207 87 113 35 296 9 253 152 110 126 217 255 301 143 116 172 56 17 74 35 154 225 199 276 103 236 263 68 25 68 44 40 238 111 18 176 36 62 289 158 91 75 20 52 216 94 290 62 162 14 30 249 294 142 160 149 20 205 150 206 274 211 164 30 219 45 178 3 66 201 174 276 16 304 77 211 181 204 211 134 182 94 70 248 192 183 93 43 268 276 133 48 147 49 28 56 293 8 284 303 194 8 29 19 294 12 110 35 106 92 127 238 145 61 55 157 293 271 81 24 19 105 110 223 282 152 256 194 234 152 141 115 183 213 33 211 213 139 278 303 204 176 292 56 194 141 7 71 194 80 161 72 169 286 3 249 21 137 219 31 115 273 28 171 228 230 30 172 23 187 228 187 221 171 265 164 56 258 190 4 287 117 273 41 37 58 66 284 159 235 250 55 227 155 247 126 79 87 253 112 122 234 59 180 32 88 296 192 235 173 15 121 111 244 106 36 1 135 85 134 122 260 111 300 68 65 36 103 227 124 54 166 33 190 250 244 182 49 144 282 21 217 108 287 148 124 160 50 240 31 95 170 92 119 181 295 149 148 50 298 52 217 204 271 264 172 136 243 104 30 168 106 77 82 190 26 164 272 187 56 175 98 34 149 39 179 275 261 157 96 283 149 147 91 158 252 23 6 240 137 18 50 124 49 154 263 164 117 51 171 2 140 11 294 196 13 67 256 182 299 31 27 235 149 42 12 209 294 221 76 276 262 12 63 136 99 22 125 174 100 164 187 282 177 296 66 175 238 278 181 303 274 76 104 245 286 88 49 128 22 238 56 303 23 49 60 111 33 45 276 15 273 73 288 66 74 200 220 16 8 207 226 182 287 136 107 186 248 233 251 128 78 171 12 232 107 195 202 239 276 107 46 204 165 169 61 174 160 246 272 75 191 95 177 160 10 53 205 148 260 252 153 155 242 179 250 102 98 132 39 115 177 166 121 212 15 299 161 16 186 185 116 188 267 93 203 229 140 184 94 99 184 75 303 254 191 157 121 173 73 121 289 157 10 95 288 11 255 263 236 232 76 94 89 74 32 67 150 172 96 70 246 28 208 279 20 228 86 86 14 222 149 296 24 231 184 130 293 283 110 232 160 240 40 269 6 21 219 161 3 286 115 217 8 157 110 216 273 14 145 223 79 168 201 106 35 184 74 296 153 102 82 259 237 184 135 5 240 66 40 205 102 102 203 265 248 85 181 119 288 203 268 194 134 26 23 121 128 94 85 278 107 52 293 97 240 132 113 134 197 62 117 32 191 110 24 164 220 106 99 280 233 297 202 150 10 85 57 215 114 153 94 297 138 113 146 257 68 204 158 248 111 201 168 174 282 31 130 76 273 62 89 41 225 61 168 126 93 214 249 108 224 185 264 191 299 174 239 86 221 68 143 234 119 145 57 173 169 83 40 43 84 97 276 88 208 157 291 112 299 83 203 263 273 184 65 177 70 211 204 202 227 242 238 211 178 220 267 218 240 70 252 72 213 116 73 144 80 167 85 247 226 43 245 253 297 267 115 30 73 116 184 247 135 93 33 138 166 135 75 130 240 278 172 196 157 19 183 7 129 21 212 154 243 295 217 238 53 182 163 54 185 4 214 211 243 250 243 1 14 89 104 90 214 195 226 261 117 268 303 55 143 243 272 302 138 57 84 179 112 162 122 45 203 303 29 150 283 163 303 255 156 184 304 200 293 37 9 113 232 18 24 161 228 270 275 32 268 148 156 116 68 30 25 298 174 225 196 62 177 203 301 172 232 199 250 54 59 55 164 120 213 304 177 152 207 215 29 45 246 50 75 97 10 92 112 281 53 64 87 144 274 252 71 85 106 287 111 168 72 130 271 266 64 276 4 75 202 132 242 238 90 97 88 237 61 38 45 303 284 174 134 228 56 208 56 96 144 104 157 185 259 256 111 243 147 41 139 96 234 43 19 65 268 92 8 3 60 197 74 180 150 84 278 154 290 262 19 229 141 158 70 75 18 78 288 47 257 51 292 297 222 198 271 165 61 162 179 40 303 41 277 239 101 81 298 9 96 225 245 120 39 163 164 219 78 143 37 242 278 224 219 86 19 169 108 77 52 211 109 156 115 99 91 273 99 75 8 40 126 123 186 161 220 4 96 260 245 215 87 232 35 226 91 301 143 273 274 131 97 191 6 135 43 296 170 13 106 101 137 265 164 244 116 179 75 112 290 278 163 182 166 204 3 37 248 80 259 274 301 179 64 165 242 202 183 53 214 230 7 119 181 289 177 257 300 289 301 187 27 91 15 139 101 233 146 204 102 97 45 153 257 269 235 254 266 188 281 45 38 90 69 2 268 86 159 159 120 123 47 229 97 85 117 116 234 204 195 172 60 268 113 129 239 109 4 47 77 38 249 48 17 156 115 234 225 182 78 303 33 212 62 301 257 278 222 279 9 241 185 8 101 161 303 194 29 90 52 35 35 65 180 175 163 214 302 4 147 238 235 227 110 83 1 23 263 100 282 207 78 19 48 40 29 14 96 18 289 229 197 200 225 108 134 59 218 219 62 129 303 73 302 246 76 223 263 125 73 9 37 44 291 274 45 301 300 276 292 71 111 278 61 228 298 27 137 279 102 72 110 180 193 66 293 151 52 223 130 13 184 74 154 53 108 203 121 212 284 212 35 11 24 120 8 63 1 275 108 80 260 113 262 129 196 37 237 7 110 249 228 170 114 68 298 267 43 164 153 23 228 141 31 228 214 93 19 128 108 163 35 199 18 176 127 57 169 206 288 244 20 301 296 151 258 235 207 218 20 111 47 283 302 208 173 135 42 301 288 301 158 88 63 276 152 242 82 125 188 107 19 199 226 248 254 65 119 93 265 155 156 2 236 107 77 174 304 69 296 304 95 180 268 242 32 140 72 75 45 289 77 302 174 22 191 214 282 272 188 273 227 267 33 85 201 199 182 155 271 30 210 171 162 71 248 120 65 42 277 102 82 173 176 230 13 206 78 103 144 278 286 28 107 227 303 274 248 53 63 102 80 21 85 301 209 191 194 257 49 162 199 170 88 36 157 275 68 104 181 13 246 267 209 174 245 203 132 302 261 91 144 95 285 2 99 121 245 93 157 192 260 228 71 173 33 301 255 105 105 174 53 295 208 129 136 16 11 293 155 150 245 273 72 268 241 142 5 245 28 121 111 280 40 162 19 255 2 155 80 227 274 100 279 234 17 250 3 43 82 290 76 217 79 71 245 111 147 107 174 179 14 122 85 181 239 117 242 105 101 215 5 28 177 53 262 221 232 143 189 82 228 247 19 280 21 183 112 80 217 255 175 64 85 275 214 38 236 36 271 59 10 222 275 140 203 3 5 36 75 212 235 293 44 97 118 109 239 153 44 303 237 11 208 126 249 27 278 127 14 186 280 213 19 36 90 64 112 241 25 248 269 60 34 24 24 217 189 277 225 24 86 142 29 159 223 24 158 36 53 138 20 171 164 277 60 253 274 91 92 252 98 274 82 98 157 259 95 188 158 146 62 136 56 19 153 17 130 215 84 270 115 32 98 289 251 175 64 131 130 212 131 123 171 32 113 302 140 74 82 97 90 264 218 152 80 117 264 276 118 39 31 147 35 104 40 117 87 59 26 53 201 228 138 44 204 238 120 104 186 20 162 118 269 300 267 239 92 22 156 243 145 141 271 202 207 65 99 135 223 267 95 17 264 278 136 71 226 81 103 264 176 216 139 182 130 248 247 242 157 88 2 11 274 221 257 191 61 266 301 191 282 72 68 180 159 151 33 58 256 126 172 284 226 71 237 29 137 171 171 202 169 128 284 160 255 51 248 252 289 183 95 144 11 271 301 4 132 58 289 171 119 107 37 218 130 199 210 250 214 283 264 123 186 302 13 168 274 190 124 87 216 152 300 107 272 299 208 209 244 45 222 259 85 132 84 145 151 122 292 250 269 89 203 122 234 63 137 247 261 292 256 247 39 293 153 17 200 4 174 273 14 224 243 23 302 248 262 198 13 33 53 264 144 40 58 210 276 142 74 206 281 42 303 249 115 109 155 62 52 205 78 209 247 78 35 111 210 217 99 144 144 147 123 103 1 132 132 273 239 278 158 292 122 124 254 168 217 45 47 240 245 287 136 267 151 212 181 17 76 54 51 235 292 98 303 58 193 51 47 266 33 13 232 126 49 94 136 77 14 76 185 64 10 223 262 9 106 9 299 84 222 128 98 69 41 210 5 174 123 284 27 98 102 265 126 99 259 42 218 280 29 167 81 162 254 145 162 189 16 278 227 203 208 219 242 255 92 199 178 231 9 43 17 32 304 250 132 5 158 195 48 286 197 214 266 141 128 220 81 208 131 7 270 143 19 96 63 5 258 22 18 192 280 102 28 179 172 31 172 37 118 286 273 76 200 26 280 101 73 301 217 181 286 284 85 50 240 287 229 302 24 132 225 263 150 199 212 196 51 31 265 215 99 61 84 211 208 146 65 275 173 3 271 175 220 227 4 105 206 260 237 115 50 57 191 84 36 60 266 110 253 70 54 227 72 243 232 267 173 287 255 94 303 166 77 65 151 40 156 121 11 157 79 270 168 231 138 93 66 135 284 216 75 26 259 97 81 195 161 223 256 281 124 12 226 266 91 94 209 186 263 65 149 131 177 256 293 249 211 145 15 118 153 190 4 157 189 139 117 145 16 185 73 23 251 56 53 103 270 129 197 182 161 13 297 262 266 145 287 23 101 79 106 281 247 112 48 216 32 4 242 175 48 276 121 281 277 124 169 102 265 170 171 52 13 250 293 63 254 250 14 79 126 186 40 178 1 224 290 19 134 98 275 140 85 73 274 46 155 54 264 150 77 212 72 21 38 92 55 112 68 205 51 108 151 54 171 134 62 80 240 85 52 295 48 138 43 252 103 230 299 118 31 135 300 271 20 230 179 70 38 202 36 84 189 153 289 38 202 20 35 253 185 68 139 281 25 54 28 249 182 175 214 120 127 136 144 247 267 9 196 112 64 145 59 222 16 166 128 280 268 229 181 110 105 208 128 12 293 27 195 176 186 26 195 119 288 147 63 53 226 95 59 93 9 158 249 135 11 186 195 67 279 99 208 291 207 97 55 293 192 247 95 6 234 123 103 208 238 222 278 133 270 223 182 219 18 222 210 163 18 56 52 97 139 281 297 89 168 240 11 284 295 49 23 14 45 166 66 262 80 9 139 96 224 302 86 245 45 148 212 28 273 237 120 139 121 41 5 106 142 85 53 62 160 26 287 266 133 71 300 124 171 231 299 167 212 41 182 224 285 81 228 183 241 237 68 136 228 223 95 257 277 96 155 114 12 93 32 53 39 33 259 48 251 193 219 286 218 46 88 83 41 200 159 220 175 251 95 239 85 96 203 17 29 1 82 213 207 281 162 290 218 5 218 244 188 249 247 49 110 246 87 249 242 217 46 260 201 71 101 197 95 67 175 166 53 227 244 201 58 230 284 29 53 74 34 132 294 134 18 82 256 273 280 26 106 280 132 30 16 43 231 113 81 57 202 261 148 199 55 173 172 138 255 168 115 83 119 24 163 228 292 192 81 140 100 36 98 98 82 28 144 97 6 113 231 93 33 204 147 179 22 106 291 176 253 103 291 157 17 130 145 208 147 180 279 164 124 147 114 93 211 286 230 145 163 249 30 180 27 237 28 230 223 185 245 279 197 92 244 102 65 292 67 291 268 70 206 32 211 288 143 63 238 248 251 163 272 224 56 253 180 47 291 261 303 148 246 170 90 43 104 128 256 59 94 256 230 264 94 278 4 124 139 196 264 38 257 156 212 64 203 248 246 36 29 208 230 261 225 99 74 194 162 296 76 295 76 245 153 16 132 295 155 164 50 60 258 273 205 10 96 111 193 211 269 78 51 277 120 65 232 283 40 246 185 272 71 106 201 103 96 213 159 238 64 15 303 272 78 5 184 68 150 281 154 257 59 81 91 252 115 164 17 184 104 32 8 181 255 238 86 51 243 292 252 270 282 61 131 180 196 75 114 126 87 219 138 21 24 285 71 154 239 125 68 4 289 169 248 240 80 44 216 144 18 86 152 237 106 23 215 301 178 84 88 165 277 36 160 168 164 278 85 171 20 224 114 82 261 28 7 3 187 116 109 85 248 33 260 250 38 236 183 45 152 299 139 269 203 169 137 131 151 118 90 21 290 145 26 287 205 208 24 42 202 193 143 3 179 232 114 180 42 187 125 154 156 91 123 272 189 49 71 100 101 243 189 102 290 233 144 230 112 202 201 299 73 1 235 207 235 106 18 242 158 29 143 212 152 126 67 253 50 247 287 63 96 126 134 227 259 22 188 161 217 97 15 163 99 63 41 280 113 198 14 168 98 267 290 21 59 117 57 33 80 250 229 168 168 219 70 169 291 225 243 278 83 256 136 77 291 232 78 155 297 234 274 147 103 286 206 285 263 157 130 287 270 291 155 100 169 277 126 206 59 76 126 116 231 162 56 104 89 200 78 46 294 113 34 199 228 218 103 167 171 270 268 226 231 74 162 232 193 273 99 152 126 180 70 6 70 248 59 129 117 116 212 279 156 191 56 130 209 288 74 292 34 67 135 218 27 49 63 3 248 232 294 21 154 298 145 69 144 294 295 67 112 302 160 154 225 97 67 84 271 75 114 144 171 129 268 281 290 57 63 15 75 301 86 114 87 154 232 249 187 88 244 39 285 44 82 45 130 103 100 187 89 69 64 276 164 37 102 155 148 101 238 120 65 89 242 45 198 165 221 133 279 156 207 210 147 267 44 50 128 29 278 146 262 265 39 113 83 144 27 166 195 98 53 161 78 300 100 2 103 294 148 100 100 209 56 157 5 95 45 243 148 165 86 304 35 137 42 71 261 296 241 195 69 155 17 56 210 207 288 7 207 299 57 256 169 208 38 135 107 18 65 292 46 245 174 138 11 124 149 108 270 150 22 214 292 68 33 95 273 235 65 232 193 290 65 258 170 121 268 16 80 61 298 130 64 280 11 121 25 286 88 274 86 83 248 299 179 229 239 93 67 274 72 284 22 249 265 264 296 190 5 101 10 109 235 208 9 205 95 62 237 124 148 117 272 202 176 230 176 120 114 210 72 236 205 240 35 156 256 9 282 109 276 226 118 4 66 267 114 150 31 275 38 12 167 69 60 191 10 152 65 192 301 278 41 77 294 250 222 252 260 187 99 14 101 127 175 238 51 269 253 233 128 109 54 258 33 87 98 229 186 265 88 95 77 78 127 81 54 109 130 79 126 163 171 106 286 177 145 187 256 100 84 141 146 151 241 43 220 298 256 234 210 24 159 116 119 25 265 26 288 220 273 99 245 235 72 62 126 279 74 272 118 106 212 83 53 270 240 14 156 137 227 147 126 45 20 213 288 219 42 156 203 56 224 87 232 237 205 269 185 288 193 253 249 132 201 109 295 67 121 249 293 65 169 130 225 193 208 31 53 12 112 93 301 134 63 292 235 302 183 220 171 295 163 282 300 169 56 169 17 201 263 202 87 214 63 255 267 287 168 236 256 157 32 24 23 297 50 186 107 282 71 256 225 39 234 295 272 226 58 227 60 133 46 55 58 253 10 30 239 84 183 253 154 5 111 281 60 188 233 28 291 53 7 30 216 274 282 35 12 259 268 26 166 180 1 229 272 135 280 304 293 119 280 178 187 141 121 4 104 150 84 203 218 111 41 17 261 198 82 102 156 177 40 304 280 216 192 6 119 145 242 291 214 69 177 225 252 229 188 277 10 15 177 57 22 214 38 35 43 158 16 168 59 238 176 160 258 20 159 97 202 100 273 176 35 59 195 21 53 33 33 45 77 135 113 264 138 240 71 63 80 2 88 9 224 104 260 223 92 135 10 183 300 205 238 126 267 244 45 110 70 108 146 275 121 58 99 94 157 62 29 224 58 119 183 262 268 238 223 219 287 259 229 93 211 48 20 57 28 199 274 117 247 109 220 160 128 29 233 262 27 232 128 36 260 47 28 268 245 106 223 282 76 70 12 180 253 280 297 154 114 269 152 125 120 42 257 59 2 269 59 191 57 276 39 261 132 133 282 13 198 297 157 241 66 14 177 292 11 116 2 174 41 213 134 219 40 203 42 202 286 198 92 303 81 277 146 203 141 170 71 135 145 88 181 29 198 256 113 205 302 215 11 59 19 67 89 236 103 76 70 25 2 30 274 203 254 207 10 130 168 72 239 199 279 72 146 276 173 20 112 284 135 149 223 283 295 188 291 22 285 127 297 189 103 221 247 42 8 239 208 122 148 36 257 8 151 54 124 54 64 19 285 242 226 102 166 257 162 179 130 87 256 30 176 93 214 30 98 126 154 188 234 132 106 289 126 202 209 212 39 269 245 99 234 68 280 27 49 146 278 23 25 186 302 270 110 230 223 211 170 137 137 190 234 50 36 34 264 102 301 118 185 25 193 34 185 8 106 95 14 245 93 147 284 204 159 86 186 211 281 115 250 177 76 256 60 53 101 294 240 171 150 149 123 76 216 251 199 225 194 169 250 49 19 79 289 155 78 105 13 93 84 142 134 221 151 2 294 115 257 21 243 244 15 269 262 196 268 283 106 301 32 140 32 3 277 226 100 259 27 155 228 93 7 148 152 13 181 93 119 209 155 91 270 11 126 174 65 139 256 31 18 197 222 63 136 58 222 165 70 158 198 285 280 258 278 246 215 287 258 159 203 11 256 73 83 281 4 175 86 89 50 267 285 160 141 59 100 285 117 50 189 188 226 137 163 63 157 65 184 108 214 196 40 204 142 201 216 40 220 287 292 286 299 173 219 246 191 191 240 68 135 297 116 12 285 23 208 228 16 258 103 108 157 66 242 209 46 193 52 260 238 65 7 233 221 261 118 166 9 179 39 73 281 82 76 299 24 120 162 216 29 267 201 4 171 3 223 281 2 273 156 177 292 294 292 181 103 92 300 34 31 228 212 188 230 254 113 82 47 244 146 133 90 21 219 189 220 278 246 191 207 15 170 118 65 274 73 112 273 86 90 7 209 65 129 272 273 106 219 203 92 264 25 79 72 182 175 148 248 104 93 261 259 143 80 187 22 17 194 209 180 133 266 169 275 113 14 179 161 170 135 25 41 289 35 36 15 232 120 23 65 16 188 219 37 288 148 140 204 230 72 6 69 181 284 114 122 138 133 144 45 90 165 58 181 190 71 153 281 4 39 156 170 30 230 261 76 125 246 227 228 65 200 213 123 304 47 241 241 221 25 148 248 117 141 104 113 10 116 267 186 204 152 33 137 243 66 96 24 211 289 285 204 291 244 107 272 93 187 237 181 20 180 188 49 32 127 94 155 221 178 172 57 162 56 204 144 103 88 170 82 188 45 48 274 29 39 280 158 68 281 283 84 212 196 177 161 120 294 228 54 119 143 131 12 303 214 119 251 152 188 252 160 87 116 59 126 269 88 44 289 73 291 289 145 49 68 284 184 64 73 13 115 279 167 11 298 246 296 191 35 134 108 250 147 63 78 191 223 208 228 8 238 74 209 104 273 89 205 193 176 258 67 194 187 233 48 248 56 1 2 289 192 298 136 75 226 243 233 284 170 271 12 62 253 301 207 222 288 270 122 241 298 76 103 33 174 220 51 150 297 115 164 29 119 30 267 59 241 106 230 45 20 182 137 184 27 19 140 264 247 255 156 68 302 4 138 24 209 28 45 188 222 164 280 128 128 113 149 53 48 285 49 107 259 298 171 77 288 74 102 214 159 261 92 4 235 87 149 205 239 116 97 195 91 66 42 28 149 285 81 195 58 36 88 266 278 301 89 64 89 4 79 250 267 273 55 125 259 260 5 11 298 186 270 22 38 212 170 38 292 79 14 243 28 185 295 71 31 157 183 56 20 53 204 83 31 88 179 45 98 208 228 41 296 19 161 255 21 166 117 264 277 147 49 198 98 3 156 184 121 104 299 202 161 176 278 16 201 67 148 199 89 180 259 79 166 153 214 232 287 219 35 194 154 61 6 274 98 111 59 184 67 65 227 205 4 264 222 5 157 97 43 111 265 9 174 221 144 155 289 239 190 103 177 212 166 12 157 32 10 44 245 182 240 7 44 245 232 7 299 66 127 28 126 139 91 122 287 29 31 42 159 14 275 144 290 3 211 32 46 211 14 221 293 62 266 125 45 64 247 262 195 296 162 127 191 39 240 83 113 181 201 141 74 140 117 163 289 12 140 281 57 16 263 188 13 79 209 51 166 211 49 2 304 40 24 225 277 149 2 20 57 59 31 262 62 129 157 56 61 71 82 208 213 262 12 173 261 121 16 11 64 126 259 196 5 217 225 218 217 293 257 77 175 214 135 302 80 246 185 296 121 25 112 50 173 227 297 222 283 9 84 243 200 22 219 17 35 97 160 201 58 61 259 225 22 115 292 29 189 145 300 242 71 89 40 109 139 207 3 265 231 93 47 155 172 46 66 186 249 204 113 260 35 167 19 246 264 283 107 81 75 189 119 115 39 281 247 162 109 88 142 119 118 245 159 148 142 21 75 43 273 32 71 43 144 183 101 70 88 284 186 78 153 111 203 90 232 168 154 297 300 186 39 112 222 89 209 65 287 175 70 132 247 282 70 99 45 110 266 63 45 110 252 243 87 286 230 186 23 209 180 98 138 233 145 204 173 177 57 147 193 175 143 50 90 173 99 219 191 230 12 130 87 294 126 135 185 7 7 49 129 222 280 256 184 129 150 243 135 73 16 186 228 11 69 22 7 163 145 144 207 73 4 86 278 33 277 135 141 152 51 267 33 48 110 65 257 256 296 214 2 186 287 117 130 288 9 284 277 107 287 75 75 229 178 127 198 288 147 161 175 83 204 165 146 233 248 151 222 300 222 159 117 196 26 202 286 3 300 293 214 154 99 46 177 89 86 241 103 147 253 32 223 204 11 203 224 221 109 55 85 22 73 204 10 304 46 279 196 136 57 169 38 201 297 234 90 303 29 271 73 33 14 154 138 23 302 166 65 159 79 16 133 108 233 243 131 62 135 132 114 227 289 201 151 116 140 32 290 292 265 159 248 12 65 202 282 24 210 300 23 260 286 116 25 257 275 108 10 111 249 27 15 148 68 54 222 120 201 282 209 295 24 212 30 153 211 176 116 156 265 249 12 292 136 65 176 160 20 247 265 55 30 5 187 243 119 291 148 214 103 244 72 157 218 213 221 66 202 216 172 212 33 145 128 196 176 189 128 75 66 218 60 211 102 24 295 228 217 278 109 26 51 12 242 169 144 90 119 175 87 166 137 10 149 262 285 50 122 150 290 146 18 102 299 213 179 33 77 255 217 188 34 121 102 121 158 183 228 229 171 110 196 265 103 66 41 33 32 139 4 125 59 292 69 124 75 19 211 102 243 172 80 242 133 189 151 151 97 86 3 162 282 130 156 280 279 174 287 82 117 202 36 126 223 100 165 42 232 85 137 186 38 276 81 249 115 171 223 157 263 73 292 90 6 132 260 19 7 186 236 101 200 86 223 193 281 259 61 276 201 298 237 37 197 276 260 54 21 253 119 207 104 116 265 55 100 225 290 163 162 245 96 46 232 241 118 69 292 187 223 123 160 24 157 22 67 65 264 117 69 24 288 298 106 256 295 25 263 141 281 268 93 196 148 13 262 18 41 133 214 85 252 31 296 74 48 158 143 76 279 63 253 222 219 199 215 300 164 64 21 113 159 134 289 69 79 99 131 145 205 122 165 164 197 107 258 173 182 296 154 202 125 261 73 301 72 177 156 237 39 260 76 89 299 125 140 8 109 222 113 213 77 159 294 169 120 175 255 242 50 32 153 123 76 48 288 278 8 114 66 195 294 64 168 36 207 134 79 44 20 273 235 5 49 78 285 269 61 213 216 86 216 254 65 282 181 171 103 151 76 293 42 241 247 85 287 233 68 110 274 283 97 149 244 147 301 296 16 74 300 269 117 122 52 89 111 29 261 112 99 222 114 38 127 180 211 230 187 118 282 11 266 227 157 108 108 287 127 171 265 257 40 79 104 178 231 32 167 260 149 219 257 22 143 202 139 223 40 276 75 165 234 36 191 46 157 146 160 79 35 50 94 20 1 33 94 169 218 274 284 149 240 261 143 157 276 108 57 299 63 17 283 134 191 178 36 213 50 119 90 201 257 250 221 26 92 228 112 287 17 127 225 295 273 87 44 133 275 261 296 103 100 34 9 265 5 165 186 280 106 114 276 304 166 167 294 270 39 197 200 38 206 136 90 303 59 295 96 26 266 136 43 278 284 150 57 201 44 80 32 124 53 266 214 123 3 249 284 56 151 64 202 291 242 202 134 169 123 32 119 216 260 33 289 7 274 177 15 75 217 286 303 219 69 261 7 247 268 102 14 56 98 55 3 289 205 154 3 292 3 300 302 53 164 168 57 61 29 83 202 162 231 33 65 279 290 177 67 64 190 127 137 23 185 117 55 219 278 211 297 100 250 297 174 146 272 107 21 145 82 210 140 32 203 106 78 164 8 224 211 96 207 176 178 154 265 291 181 281 219 251 89 191 265 62 73 144 189 3 46 184 226 101 138 250 115 27 49 87 127 86 37 49 32 53 298 103 279 266 70 94 70 246 293 90 4 249 93 126 244 162 192 197 103 73 61 272 230 228 70 254 62 82 72 271 235 284 169 144 170 254 280 59 173 292 47 130 74 206 54 159 216 79 144 134 211 144 197 68 53 150 287 292 285 101 232 267 242 161 71 8 41 51 161 116 155 183 246 231 266 252 141 133 245 291 190 197 60 191 175 72 194 134 253 223 250 202 75 89 10 40 192 61 78 136 17 259 7 68 12 8 287 254 285 76 10 140 55 161 298 132 16 273 236 251 126 248 259 185 44 92 76 114 67 285 19 226 110 25 215 97 165 160 165 207 157 62 161 2 15 109 44 186 169 137 252 56 229 251 261 69 299 53 284 119 88 158 103 55 230 49 84 231 106 164 24 201 167 68 13 24 172 94 123 284 270 121 16 77 164 63 217 219 112 278 101 165 227 138 112 32 105 201 160 160 112 187 179 159 230 202 139 105 302 11 282 273 242 208 177 44 115 124 64 246 138 71 154 15 60 296 292 230 163 275 23 16 227 109 200 280 197 132 172 138 173 285 232 12 152 229 194 281 160 206 65 72 156 3 185 120 214 62 283 140 158 23 66 183 62 175 178 167 122 282 248 164 220 156 243 249 175 117 23 56 215 164 84 137 69 286 262 195 280 124 67 27 155 254 97 66 66 204 287 53 12 59 267 65 178 8 66 284 125 13 171 134 17 63 80 234 37 158 216 235 265 135 137 133 14 266 304 167 215 95 129 130 295 235 287 243 284 121 298 75 159 12 257 153 34 87 263 270 51 136 222 145 299 18 194 126 236 298 147 141 49 297 278 47 27 23 46 113 277 221 114 126 82 203 208 283 213 87 201 128 223 231 2 122 287 254 71 269 289 29 181 107 219 224 199 91 257 82 201 113 150 184 270 64 9 26 116 286 133 107 259 61 241 206 226 78 209 253 118 301 257 298 145 95 90 118 16 64 42 27 209 120 226 293 243 202 233 171 8 261 295 128 10 278 25 280 120 178 109 66 268 235 196 134 227 78 73 115 9 114 219 88 27 251 279 233 76 136 17 257 191 57 220 176 258 123 59 110 151 126 130 177 89 102 26 196 120 65 12 101 153 40 40 139 207 182 66 200 66 41 196 226 248 289 287 56 156 17 136 212 83 127 109 63 94 172 216 53 289 138 184 3 116 300 292 148 158 30 148 274 118 79 153 124 91 85 170 185 249 49 114 208 171 160 157 255 103 30 248 116 283 188 187 85 9 240 254 255 123 51 247 264 250 143 184 263 103 213 62 287 238 278 91 47 34 175 178 22 273 204 99 234 185 36 196 297 129 222 211 93 258 302 10 103 288 91 15 111 81 54 292 28 290 49 89 114 143 219 228 285 74 5 123 202 162 265 9 187 212 268 94 93 34 121 274 191 16 304 69 240 44 284 215 48 155 280 264 213 289 65 140 148 286 215 218 13 129 88 150 150 41 183 30 1 160 76 91 46 132 51 175 87 109 216 119 63 106 187 216 286 217 84 139 110 258 82 38 215 77 257 69 278 63 65 254 213 50 272 263 191 229 299 261 104 73 76 261 27 120 68 263 121 107 24 166 291 155 166 125 95 301 65 78 43 256 115 286 6 174 99 223 161 275 238 120 242 198 157 29 28 267 183 300 145 161 79 224 164 254 3 49 252 163 124 120 38 69 230 219 24 188 169 102 86 224 161 197 23 24 258 70 261 65 135 78 242 199 17 196 45 82 22 124 78 135 299 25 131 81 40 160 105 37 117 181 269 135 189 182 294 296 299 244 298 166 91 32 113 264 241 49 238 233 240 192 82 8 180 293 292 11 258 219 282 33 33 240 249 285 39 276 16 222 239 186 205 129 253 222 59 198 296 277 224 226 165 194 263 188 25 299 186 270 120 275 226 86 270 29 158 160 173 120 273 13 88 39 23 241 260 221 127 41 217 124 77 301 129 236 196 246 206 173 89 124 133 184 159 158 130 100 149 50 268 207 51 219 180 221 178 66 290 60 160 273 268 145 226 138 9 299 271 160 123 104 212 241 66 248 179 91 152 234 202 95 231 127 135 183 283 205 270 210 207 152 266 293 62 269 231 289 252 186 208 134 47 38 108 84 237 17 25 251 207 185 210 14 18 233 270 147 109 90 80 244 11 222 197 217 263 86 224 205 74 64 183 189 135 289 95 165 301 167 211 76 179 242 278 251 58 51 33 222 62 2 15 11 162 165 152 72 293 185 248 220 189 18 198 190 137 15 145 43 36 55 109 258 174 104 130 147 301 111 133 54 259 23 157 195 84 213 92 259 205 204 112 190 253 267 286 117 240 30 183 224 114 121 224 96 151 112 296 50 43 31 206 164 109 284 104 167 274 299 176 72 58 248 299 101 28 31 106 67 103 223 129 250 286 53 145 104 129 266 135 13 16 68 294 179 89 77 36 55 242 46 1 126 206 275 190 67 273 1 24 104 170 53 71 103 100 4 185 57 65 301 40 80 209 136 102 95 109 60 212 9 128 287 58 248 10 235 230 30 212 8 68 234 199 152 25 102 160 291 138 26 12 125 250 238 281 214 194 304 41 125 82 93 217 183 175 12 201 109 97 42 282 85 202 22 148 234 111 80 212 73 155 87 45 146 41 200 84 267 65 44 33 47 39 109 210 198 145 300 59 215 21 230 31 134 75 217 195 254 195 179 185 3 248 120 21 169 299 3 17 281 29 81 219 36 115 104 213 27 194 33 78 243 158 42 94 169 53 124 97 274 58 143 150 88 150 223 262 147 26 51 151 76 174 207 169 205 137 124 269 283 284 265 217 64 7 175 249 88 227 100 75 299 233 195 167 110 211 230 95 241 159 97 239 124 18 121 156 72 114 12 264 190 222 194 190 104 169 13 6 5 200 179 248 200 140 258 273 171 157 264 63 114 66 201 56 30 103 178 211 72 245 270 13 291 27 144 256 128 201 187 60 136 285 190 269 259 164 169 213 68 234 9 196 55 82 267 155 193 182 83 123 111 181 140 190 135 212 63 208 271 167 298 118 298 60 282 197 118 186 273 237 213 208 237 206 166 158 197 178 248 103 208 47 13 80 234 42 122 75 285 49 164 72 144 135 291 229 253 153 148 292 240 15 171 50 200 82 152 243 263 7 252 86 146 81 124 272 274 109 147 238 240 187 193 202 50 216 187 31 103 304 162 162 199 9 226 202 28 150 106 141 67 121 189 20 178 91 153 208 131 221 42 33 197 293 42 15 68 131 215 292 231 157 215 178 116 270 224 143 295 250 112 303 287 252 139 295 175 178 133 183 86 235 264 203 219 18 109 58 248 35 58 248 189 40 146 189 41 170 38 37 240 99 221 153 193 278 95 203 286 87 83 67 84 277 41 216 29 259 128 222 36 303 228 50 66 221 2 182 201 182 137 91 193 105 130 55 90 212 157 269 255 102 85 29 192 39 189 109 255 215 122 191 30 38 27 130 154 5 53 238 53 135 217 272 49 173 136 248 191 245 227 5 192 50 258 293 78 196 74 60 139 264 105 271 202 276 35 10 51 6 65 145 243 253 49 182 116 126 240 280 20 39 165 55 41 101 126 2 95 33 200 140 178 124 101 245 80 138 53 293 90 26 17 222 34 195 22 43 94 280 240 221 266 47 51 268 216 217 213 109 128 120 80 64 22 93 241 9 179 243 49 58 261 41 291 57 139 110 227 282 29 303 11 246 112 109 35 290 272 93 44 167 153 20 7 74 106 168 232 192 104 169 91 150 185 167 34 106 296 75 123 116 138 274 285 280 200 115 190 84 9 10 256 302 27 86 259 201 290 269 65 44 70 83 304 282 83 158 47 268 221 296 202 115 138 96 14 96 107 277 39 21 105 269 18 73 109 3 236 134 248 286 178 53 159 84 118 123 289 266 202 146 203 151 7 156 151 182 111 292 7 17 66 31 71 213 9 280 62 131 18 281 122 27 199 71 129 146 181 39 27 165 183 205 189 283 41 27 47 20 243 210 129 89 252 35 155 98 230 4 92 209 71 116 161 22 264 68 153 75 77 43 74 186 292 55 132 20 77 167 173 99 153 246 242 139 137 190 277 279 169 267 226 104 48 164 270 41 214 222 43 249 207 63 272 297 185 297 240 102 21 129 155 160 186 151 267 293 123 137 45 277 238 293 143 115 261 263 163 283 82 133 159 201 131 302 3 244 196 8 122 257 144 257 103 160 152 296 80 38 57 110 206 225 86 225 213 285 267 167 68 147 70 7 32 197 301 268 234 71 269 59 80 265 93 179 46 202 48 125 213 295 166 282 176 4 295 149 262 155 87 114 229 259 118 164 45 153 95 39 153 134 200 141 285 213 222 242 303 239 68 97 221 159 235 211 175 1 229 122 214 122 159 270 14 114 62 278 244 239 267 247 159 5 85 221 195 131 5 237 289 236 96 141 247 248 231 146 57 180 220 234 39 122 81 193 279 242 75 253 114 87 288 16 108 90 103 83 41 55 44 64 292 302 103 276 95 275 250 63 150 173 299 177 165 96 5 154 234 290 58 92 261 49 275 109 279 160 105 185 66 254 155 34 154 119 92 266 228 214 100 52 109 166 191 52 105 94 274 101 64 68 93 75 163 162 92 105 95 125 152 254 36 145 234 73 16 90 219 131 256 179 248 59 299 159 22 56 291 224 111 136 173 82 46 304 215 289 115 87 3 103 58 147 42 47 219 67 259 209 268 75 136 236 226 174 267 161 61 268 58 22 74 225 164 34 89 104 114 131 130 231 284 130 144 266 286 107 101 156 240 175 93 29 22 48 303 304 277 192 111 81 110 142 245 268 41 22 37 216 262 241 47 12 297 178 213 244 72 56 191 42 19 27 121 222 245 1 95 178 15 39 296 94 259 26 181 253 108 184 40 30 80 143 255 204 117 280 146 36 301 257 212 290 59 124 82 236 279 278 141 115 48 100 113 74 252 277 203 100 156 40 35 152 124 168 13 255 129 136 152 182 107 25 227 266 283 76 5 299 80 179 234 51 136 126 98 267 276 269 252 104 236 21 257 44 119 131 77 115 100 4 109 48 168 263 142 279 88 91 193 222 210 262 25 69 126 131 267 220 288 272 106 99 188 26 168 187 206 186 128 73 299 221 31 110 207 116 1 3 291 252 291 12 27 93 241 273 233 83 79 168 184 261 263 282 76 25 247 237 185 91 279 211 18 91 100 227 118 139 8 180 160 118 80 260 197 242 206 120 117 138 218 54 231 121 239 1 287 60 146 172 117 298 199 100 118 263 26 236 154 289 91 51 59 183 256 109 290 273 31 227 194 7 236 156 74 170 297 139 198 279 209 188 198 124 132 73 196 293 304 256 246 42 248 110 18 122 124 110 224 94 250 291 1 89 22 146 71 64 11 176 274 155 229 172 179 169 280 162 184 82 294 86 148 140 23 16 202 154 52 254 87 6 99 233 193 234 257 242 122 69 126 116 165 253 151 139 214 253 128 43 25 263 21 19 189 174 219 293 125 117 286 181 87 196 296 4 175 297 191 85 60 46 161 8 219 120 234 207 203 231 218 142 229 97 35 192 160 94 75 141 107 284 14 132 123 299 128 175 38 132 268 208 153 253 221 263 154 173 69 238 157 62 186 61 21 136 67 166 65 52 5 286 49 285 240 58 196 301 169 274 291 219 64 285 279 25 177 247 13 188 91 97 135 280 274 68 192 21 230 103 298 274 29 99 68 239 26 56 156 180 104 152 208 277 74 280 52 60 98 71 58 137 184 297 100 229 287 107 265 5 199 145 208 74 124 193 91 6 112 23 63 107 65 63 23 298 13 17 222 234 21 133 256 132 115 266 151 220 246 146 243 142 9 241 197 10 11 221 102 24 26 267 132 16 268 122 184 270 24 155 190 116 90 259 15 234 254 245 197 76 229 197 179 88 172 302 22 182 67 272 63 24 245 287 284 238 160 215 85 204 133 137 6 18 14 197 214 111 95 157 1 35 147 69 40 225 201 228 68 174 219 95 44 61 47 118 122 195 41 141 72 106 88 150 177 246 72 3 125 109 93 9 146 177 122 212 228 107 50 164 259 230 149 89 85 131 155 144 192 251 118 44 114 107 148 181 277 66 213 120 194 55 81 68 13 174 96 26 73 249 186 201 159 236 218 238 142 97 284 205 46 5 35 270 47 58 45 191 32 157 144 271 246 87 51 236 258 301 155 219 254 53 268 206 16 18 304 16 222 273 291 287 132 294 67 14 258 203 295 231 147 280 38 211 236 197 75 159 108 6 147 14 142 55 261 266 8 51 138 218 108 118 182 164 237 63 178 137 18 1 255 68 174 264 201 220 304 172 111 189 302 74 215 86 254 206 176 144 14 269 227 185 133 185 258 21 113 168 239 218 49 297 280 143 273 24 171 40 179 90 296 171 87 124 131 231 135 8 67 157 278 74 129 64 255 57 199 275 26 245 183 19 30 143 243 225 67 10 70 83 182 141 72 107 172 279 15 82 106 102 70 231 297 20 237 261 103 285 22 261 297 272 172 279 299 160 297 167 73 254 15 153 66 35 47 25 126 261 167 12 142 87 162 72 51 59 73 129 260 225 210 189 57 112 75 242 285 190 183 165 225 131 256 94 238 131 238 151 155 112 171 35 146 239 241 223 297 102 247 200 100 162 277 125 248 46 75 83 226 147 286 167 260 282 1 254 179 274 137 164 257 109 252 135 163 15 10 218 8 158 185 279 197 30 200 20 47 152 130 293 303 212 6 228 180 273 131 10 294 236 111 204 80 1 79 181 145 107 217 303 53 147 143 113 158 94 228 162 62 10 35 303 284 253 14 270 228 122 275 114 290 10 77 229 54 113 225 159 195 57 260 4 78 109 132 288 231 156 118 155 221 256 70 259 205 236 22 241 77 123 171 157 2 61 121 230 74 193 40 12 268 123 91 223 147 226 269 223 221 240 261 138 147 292 63 202 187 18 76 281 182 56 291 217 133 210 40 302 181 270 140 287 172 41 279 261 109 139 44 41 87 38 285 178 60 282 217 302 7 75 279 276 87 98 140 115 18 204 31 174 221 192 18 131 29 228 238 273 39 234 91 110 64 201 169 45 173 150 268 283 214 184 300 61 42 246 186 29 36 218 100 263 111 303 153 278 231 98 269 176 173 36 177 154 254 292 12 161 83 38 91 47 290 177 196 18 105 186 211 248 153 102 64 51 251 295 259 224 138 212 283 85 195 99 281 238 118 115 9 140 266 258 85 270 19 185 254 113 20 239 116 105 239 43 215 285 296 135 8 168 227 132 260 150 272 216 168 242 168 186 236 243 114 165 188 23 239 105 283 212 219 10 233 172 52 159 29 188 48 86 11 237 272 239 48 65 210 268 104 256 221 298 108 10 95 25 214 31 208 274 88 89 100 252 111 294 115 167 89 174 168 4 90 93 275 204 121 72 13 124 55 34 283 283 133 91 201 111 276 282 198 252 170 134 133 222 17 95 121 125 294 21 292 232 69 240 253 269 102 277 90 303 268 156 284 288 267 304 187 99 73 218 28 277 131 180 54 105 186 82 282 36 170 227 294 160 154 25 84 53 270 158 234 302 225 99 34 129 85 238 254 155 43 248 82 172 283 43 279 89 84 298 302 107 285 43 27 180 231 65 276 59 55 65 130 159 280 174 243 236 31 98 63 208 43 205 236 14 294 198 119 260 240 96 119 261 289 202 188 269 95 85 82 97 48 171 23 238 145 111 105 47 78 242 38 251 126 251 91 138 201 109 240 19 239 59 97 276 83 211 179 157 272 166 101 235 179 213 225 74 159 253 21 283 93 169 97 195 211 131 28 53 149 243 281 109 228 253 287 267 172 13 224 296 145 132 21 230 107 220 188 126 3 25 48 39 249 270 249 215 139 223 160 232 186 25 54 260 78 86 268 275 29 68 207 296 45 116 116 57 186 87 115 35 106 132 284 3 302 222 273 286 36 117 78 57 179 286 284 132 245 110 301 133 151 11 194 111 145 15 20 159 39 170 220 292 97 294 103 217 279 69 206 59 80 95 111 22 265 7 88 140 45 203 5 160 138 70 299 185 70 25 113 282 233 109 60 267 30 64 27 161 29 255 22 146 289 15 226 280 66 17 145 192 281 149 19 255 226 22 270 197 253 15 234 76 202 299 210 190 168 263 193 197 189 103 158 160 295 246 262 210 169 55 249 51 118 239 208 218 4 214 51 213 60 13 259 230 50 260 248 192 70 154 147 31 126 297 103 202 236 92 132 295 80 116 222 175 62 145 243 181 199 285 98 133 113 50 288 221 264 220 191 257 106 154 212 202 9 179 139 243 295 13 292 249 152 164 63 278 145 206 243 245 171 163 132 118 183 169 189 245 268 227 163 126 165 33 73 78 229 36 238 267 266 14 272 246 16 115 89 89 5 98 142 69 296 230 46 152 145 202 204 6 54 261 184 192 146 46 270 209 115 238 201 269 216 157 121 114 114 257 230 79 95 38 161 181 44 110 118 83 278 198 228 276 197 143 212 230 8 180 67 164 187 23 251 301 31 9 299 23 228 99 301 166 277 108 125 278 118 266 98 185 279 284 27 115 222 290 158 233 179 192 76 150 55 165 107 160 95 216 58 51 283 107 73 113 35 180 23 106 181 213 23 32 268 59 270 159 157 141 238 211 103 138 181 278 45 163 241 30 255 158 191 150 34 107 85 27 231 59 44 117 199 185 181 229 255 227 279 285 277 138 286 177 135 198 100 116 106 102 83 109 189 69 204 279 57 193 48 238 101 210 142 94 16 128 4 267 34 101 161 269 304 110 62 211 172 221 69 257 13 114 11 265 244 91 228 162 227 21 99 130 163 239 223 244 53 14 239 130 44 53 233 144 131 241 138 57 187 287 14 223 182 256 281 299 252 63 221 122 55 232 22 299 3 210 216 79 254 70 237 283 125 25 143 182 2 163 90 201 255 298 39 20 293 132 142 157 14 290 97 24 93 101 179 208 226 299 8 30 116 94 241 191 117 174 219 223 296 10 198 2 32 175 15 275 8 145 290 215 81 181 24 135 23 180 195 243 265 92 207 192 51 248 138 7 40 224 40 263 157 290 273 129 81 10 37 95 126 207 105 281 162 299 172 26 23 79 210 58 271 272 187 174 219 154 62 43 298 126 204 22 250 169 228 290 119 107 46 32 106 111 141 38 302 233 52 158 114 81 179 118 141 73 98 274 142 116 107 41 250 103 13 227 130 9 67 107 296 230 94 113 196 282 256 120 148 183 142 302 281 188 106 114 21 128 256 159 16 177 139 212 249 80 213 153 266 72 248 289 102 104 76 176 30 118 130 68 73 157 52 265 161 258 15 67 220 71 86 23 295 195 168 257 88 26 255 152 282 32 50 64 227 108 165 220 57 73 112 141 241 87 268 232 236 26 148 73 157 298 263 163 294 189 93 221 56 49 150 179 287 176 159 85 61 113 3 279 166 177 230 186 6 24 29 260 192 10 52 220 203 289 219 284 80 130 15 223 71 149 138 145 193 191 290 137 28 158 175 121 265 127 28 20 206 240 68 255 55 114 229 139 253 103 215 192 63 204 98 170 104 117 73 207 211 251 17 181 281 137 297 192 267 158 281 133 110 225 197 115 188 210 66 244 115 41 298 134 207 224 31 244 262 69 57 159 116 290 304 226 115 133 81 42 259 4 288 84 261 67 289 11 268 160 168 123 96 228 212 256 147 114 40 303 253 60 185 141 39 26 66 30 273 257 207 120 237 141 260 114 70 233 78 296 176 276 123 181 208 28 31 145 112 37 103 214 208 242 54 87 293 208 61 30 194 43 64 12 71 72 246 251 223 190 186 154 1 66 163 205 286 201 113 202 258 119 2 4 241 294 167 189 264 174 227 252 43 234 94 121 121 32 156 235 302 243 117 209 21 226 304 59 224 238 126 96 70 130 178 190 263 160 19 51 46 17 47 20 213 188 177 188 94 256 43 39 284 114 171 173 125 129 152 188 144 237 40 111 239 194 98 152 47 10 154 285 126 304 204 36 215 156 213 137 19 272 67 91 284 170 250 285 80 22 244 296 19 160 139 295 34 293 106 143 224 226 93 49 177 4 188 246 221 93 248 124 267 25 287 276 222 100 166 6 4 242 287 6 77 194 171 90 107 203 304 155 241 153 280 133 42 300 94 154 47 215 290 236 222 212 126 50 197 6 140 48 77 180 203 67 275 97 105 64 253 96 28 101 260 300 76 298 103 48 76 273 96 293 185 54 81 177 118 231 256 297 168 5 264 205 111 28 2 299 197 39 280 173 186 164 70 125 231 94 264 240 155 247 147 9 210 148 257 291 213 169 273 36 124 246 191 107 18 34 238 255 138 269 152 77 151 293 195 219 241 144 42 216 294 114 294 99 4 159 277 169 156 91 195 255 129 189 3 141 244 61 100 50 231 237 154 218 254 301 260 66 240 85 295 260 118 15 243 58 95 273 23 77 205 120 19 73 153 24 72 88 181 165 197 105 281 227 131 98 111 269 264 123 182 253 167 25 162 228 116 2 35 129 138 171 44 218 125 102 166 105 281 161 3 83 159 230 196 144 239 239 283 2 66 235 160 162 120 65 161 181 29 153 283 150 129 185 282 1 226 196 95 193 236 5 165 288 7 102 244 71 183 240 14 229 152 91 254 17 144 176 286 65 293 45 166 163 280 9 242 129 203 50 228 259 163 111 174 81 7 87 198 95 199 74 290 301 136 93 201 212 268 152 219 238 4 128 69 219 204 57 60 133 188 293 150 245 227 204 159 138 300 37 63 108 106 185 221 221 122 31 288 67 300 232 107 83 165 15 70 19 172 293 260 133 279 53 59 264 289 94 63 266 175 163 12 247 277 73 191 30 293 225 183 178 209 259 296 248 174 147 251 38 2 114 204 186 261 222 242 262 85 250 199 64 61 193 37 200 162 261 216 194 110 38 200 129 3 254 215 270 163 67 140 281 213 292 165 137 124 273 192 73 107 168 221 6 41 159 208 6 126 141 282 6 177 190 32 72 231 160 86 75 278 10 90 281 142 155 262 252 106 290 192 47 50 87 148 245 89 40 217 15 64 25 121 179 135 26 66 44 16 128 4 39 292 6 223 284 127 109 184 262 78 226 293 273 188 187 58 159 82 283 12 215 195 54 29 303 57 23 302 293 67 276 120 237 17 297 135 154 171 22 294 199 40 106 152 100 20 283 205 194 55 30 176 225 104 100 295 203 120 188 81 301 80 289 156 76 71 40 186 217 82 112 218 207 181 184 54 37 78 117 162 127 112 48 287 290 236 166 66 20 9 60 85 147 73 277 164 59 271 129 155 273 192 176 151 179 304 194 126 61 162 304 120 297 274 93 263 72 93 283 230 286 41 268 124 130 294 178 214 154 59 283 243 39 247 291 276 25 2 116 10 292 75 239 207 175 82 275 200 190 232 206 288 183 151 241 172 93 169 66 65 242 137 108 159 125 133 127 7 127 156 276 270 304 218 91 112 254 161 244 117 43 170 299 298 267 7 126 276 4 284 83 203 145 130 79 82 49 143 38 7 205 35 107 53 97 216 173 226 195 143 203 20 30 187 86 289 78 104 54 196 91 255 260 274 147 164 301 179 38 222 49 76 42 262 289 213 29 109 227 208 290 207 54 49 23 141 71 186 94 49 199 199 277 70 104 22 135 258 202 212 189 21 124 217 31 79 239 291 2 289 8 196 63 134 46 35 200 267 128 27 254 33 33 264 61 254 99 277 134 66 177 161 228 86 118 157 240 135 226 9 199 201 192 4 256 231 1 205 259 211 245 196 250 238 117 100 202 31 91 48 217 201 93 29 77 154 49 202 212 15 8 235 87 155 4 71 232 153 200 277 59 187 49 124 252 231 268 247 224 22 51 302 155 114 260 73 257 71 276 108 152 276 170 203 9 297 64 18 253 221 237 213 131 191 98 171 140 59 292 193 127 197 64 171 202 51 166 162 181 162 152 58 267 53 146 39 260 258 145 301 61 151 135 19 203 217 261 239 84 175 140 35 252 220 99 68 237 216 74 118 50 184 210 297 8 40 266 254 297 131 280 124 111 45 130 170 136 255 149 112 145 163 262 184 48 300 284 105 128 123 89 43 76 78 9 149 130 160 232 193 219 184 104 123 283 199 38 109 52 14 248 117 264 167 152 126 170 46 194 74 188 230 25 207 198 162 13 276 293 20 77 248 109 92 85 129 187 47 91 27 59 55 55 177 224 16 107 125 202 163 208 242 114 83 96 216 123 8 88 197 43 233 291 170 264 25 57 229 128 276 274 42 74 114 292 92 63 57 289 100 36 229 139 40 304 134 246 36 212 281 184 19 189 289 113 119 168 226 4 24 240 184 158 159 263 135 8 200 172 276 226 298 45 107 23 197 64 191 157 79 249 19 244 208 11 163 230 174 271 15 122 257 88 175 9 42 34 57 109 232 178 250 275 211 240 157 154 40 270 225 231 221 74 8 45 28 112 153 214 116 88 178 196 46 29 72 79 10 287 203 20 100 226 215 283 113 33 264 246 266 256 121 253 155 180 157 45 261 300 87 181 60 120 96 265 164 223 116 166 259 258 128 89 155 135 164 102 164 200 282 217 163 283 294 35 54 245 206 155 31 167 113 295 48 145 203 233 44 54 71 206 193 282 229 198 176 233 43 124 5 126 264 14 46 124 277 109 290 173 135 254 144 49 158 113 79 67 210 299 147 201 287 169 285 213 134 261 267 15 44 259 25 304 237 70 193 157 232 146 280 303 143 265 74 104 196 4 205 225 14 298 222 303 191 199 231 43 156 235 299 297 13 209 173 25 96 46 134 144 143 120 285 300 209 107 112 269 193 274 221 269 280 201 292 115 190 277 145 271 128 38 69 174 189 119 237 63 272 277 69 25 53 204 107 154 3 80 150 132 123 295 156 104 248 151 269 304 60 232 273 115 207 52 302 136 220 185 102 279 134 90 158 292 79 101 220 219 82 250 183 166 283 53 234 81 162 172 145 95 35 166 243 246 224 192 279 179 277 212 161 53 2 302 82 17 182 80 162 248 62 123 301 218 201 168 83 245 62 115 120 275 113 208 245 11 128 257 264 22 62 98 5 42 149 119 196 280 232 42 252 296 161 76 253 266 19 176 301 86 150 26 117 253 153 119 246 41 141 158 254 83 131 179 141 60 136 27 55 198 53 83 174 175 68 157 180 21 23 29 269 107 177 257 198 229 273 224 223 130 3 121 98 142 284 77 232 7 195 301 186 240 147 18 27 166 297 214 164 35 109 217 203 8 149 144 286 254 13 175 163 14 247 47 296 124 78 68 190 150 250 249 147 137 116 215 178 35 38 254 205 125 86 88 97 199 154 86 296 241 9 216 5 15 224 248 303 51 268 126 197 288 227 149 220 292 263 254 65 130 50 290 118 172 189 208 50 231 262 57 69 85 53 255 58 36 119 71 156 141 61 125 13 104 115 208 284 80 16 55 293 62 128 100 37 18 172 287 216 238 265 76 259 163 191 176 220 204 45 2 179 205 126 258 172 282 279 63 241 45 23 297 278 207 179 296 23 288 193 52 157 160 146 137 301 17 291 81 131 193 4 289 168 157 2 128 110 255 120 51 294 118 297 173 26 276 206 76 255 268 147 207 143 149 36 97 23 40 222 68 48 275 302 70 32 80 209 124 265 129 104 185 177 301 261 34 100 212 147 193 220 265 82 177 92 184 270 168 201 220 285 72 233 189 203 38 5 66 209 274 27 228 213 75 289 148 202 153 293 253 54 106 172 64 142 220 65 115 93 82 154 216 87 47 177 294 45 171 82 66 142 116 115 159 219 254 134 49 160 280 242 203 202 261 238 66 143 198 187 242 52 87 150 236 50 94 207 124 186 154 10 130 288 299 18 300 106 93 162 99 23 112 160 300 47 118 118 63 140 232 86 33 242 221 84 180 238 299 160 165 20 156 109 157 111 42 125 295 300 75 259 292 66 43 90 78 255 151 13 129 3 287 140 91 149 269 67 277 80 52 71 220 183 280 134 260 47 43 157 142 221 262 122 126 244 288 86 180 49 275 85 276 255 85 53 130 274 102 286 283 33 50 258 148 16 70 173 256 217 160 32 284 168 169 77 186 90 247 262 139 7 277 222 162 279 149 164 203 37 270 230 167 51 221 44 174 48 67 278 143 131 115 237 86 259 283 11 202 201 52 277 185 101 136 83 294 129 161 67 70 77 64 142 233 152 179 267 1 143 45 76 55 51 132 93 82 62 76 65 57 304 131 155 62 252 15 60 229 146 234 255 291 104 66 66 136 133 34 258 29 173 260 199 278 149 169 107 121 149 235 72 239 298 59 231 267 180 263 229 127 200 195 144 30 188 41 48 139 260 145 176 27 169 155 187 18 278 48 185 97 200 248 117 273 139 156 230 52 157 195 165 303 154 31 12 38 101 192 167 158 8 135 297 203 165 168 111 222 256 219 43 40 11 302 14 303 40 286 176 248 205 185 295 155 39 257 19 256 147 153 59 196 169 211 217 84 66 253 89 227 80 54 227 304 199 297 132 279 49 31 259 201 300 143 196 142 271 155 291 157 142 141 91 290 159 298 102 243 48 295 268 143 1 113 289 217 13 277 125 3 235 205 164 165 8 153 74 10 163 142 197 54 103 197 107 134 127 152 67 234 299 206 144 2 89 176 74 182 20 42 212 188 147 137 219 205 82 95 187 206 177 84 7 182 163 179 300 107 300 297 148 179 35 25 160 47 114 275 118 127 44 184 46 35 31 170 301 175 52 302 146 262 289 135 154 295 301 66 210 197 262 299 298 163 142 128 301 19 39 14 55 210 109 236 149 1 261 173 68 44 285 8 96 218 117 143 211 50 247 267 20 181 32 33 80 154 190 112 89 69 83 164 193 284 276 91 120 294 188 260 7 29 236 220 149 27 251 103 118 156 137 263 168 46 138 217 188 193 143 216 178 32 149 199 103 50 24 239 81 21 95 118 61 228 200 135 84 206 175 246 180 131 76 38 302 141 104 168 238 208 30 210 275 123 31 142 214 300 31 290 182 83 105 21 239 231 225 159 11 68 285 11 223 4 24 262 133 198 54 207 22 64 25 171 161 48 157 230 228 284 263 189 137 52 224 134 233 225 191 36 202 42 161 66 88 262 103 223 231 110 188 20 106 238 23 57 229 7 299 238 95 108 173 28 115 132 180 302 54 222 284 15 166 97 85 191 124 65 111 20 214 137 265 182 111 22 292 143 64 139 239 180 132 195 108 242 228 197 38 52 249 240 210 37 192 257 32 138 143 113 129 145 262 102 145 184 267 209 111 179 172 20 297 129 151 216 7 259 83 260 22 257 181 80 207 165 54 79 260 270 244 103 216 142 219 278 242 172 87 141 172 180 18 43 146 296 303 224 134 301 247 282 201 262 259 9 304 107 63 244 209 71 298 55 115 207 101 40 274 62 149 47 269 263 11 157 263 72 13 198 81 270 71 99 295 34 121 184 206 163 229 216 81 115 30 197 88 298 222 99 122 243 304 96 239 186 219 116 303 217 262 255 53 112 129 38 284 271 107 216 79 126 165 185 294 138 155 114 225 164 288 262 279 90 193 290 69 160 54 260 242 79 265 266 254 131 57 173 17 26 42 137 264 222 292 170 13 115 37 186 252 132 235 62 60 152 270 50 174 14 207 248 175 26 297 303 24 304 282 3 208 166 156 102 6 127 111 120 26 235 208 229 13 14 85 244 99 84 28 286 109 262 285 273 210 111 255 239 146 281 183 294 169 139 40 27 88 210 141 251 64 147 219 251 108 279 81 127 235 196 226 74 75 191 53 141 239 34 195 60 197 278 219 250 224 304 228 241 237 50 219 172 13 224 131 296 41 136 124 130 303 98 295 202 253 164 230 149 297 191 71 75 137 91 144 42 227 225 130 188 63 284 113 146 284 302 131 99 96 12 60 80 245 59 6 42 214 37 118 193 175 138 58 33 13 59 195 150 23 158 141 7 122 287 275 254 68 94 124 163 268 107 159 117 163 212 72 301 95 110 262 217 49 282 206 215 259 172 152 132 118 223 278 126 288 102 142 159 146 266 271 254 50 24 103 196 60 89 222 285 159 251 85 75 106 235 1 173 206 180 257 242 50 269 199 107 110 256 268 286 119 205 53 163 183 70 48 107 49 25 20 104 270 43 20 231 190 58 255 176 146 147 256 178 227 239 75 219 195 35 134 152 55 182 150 208 234 172 134 83 93 129 231 79 95 274 272 229 102 50 234 265 213 17 241 24 122 89 130 177 116 99 78 272 10 90 16 172 207 202 129 192 25 114 111 295 201 82 138 108 171 229 107 207 9 12 290 176 93 126 33 202 202 287 122 239 208 57 192 215 257 125 171 151 70 53 269 62 181 126 77 226 136 113 243 39 82 236 61 140 211 116 153 91 50 29 10 20 245 229 91 253 214 284 263 210 52 290 186 220 29 184 257 132 160 42 87 44 229 24 300 149 73 179 267 260 296 101 227 249 138 47 113 207 258 103 241 231 10 267 109 233 79 112 6 195 193 104 39 18 64 26 131 100 237 286 249 205 250 74 164 293 8 271 219 257 54 201 141 296 82 38 263 18 6 254 283 82 233 59 163 99 189 293 233 114 35 55 81 52 73 207 88 176 254 239 96 245 98 153 134 115 294 6 203 288 30 102 280 258 184 35 279 71 203 166 40 203 167 219 300 69 74 120 133 102 148 283 120 28 240 267 170 241 89 45 198 45 4 191 87 109 113 37 36 208 214 91 203 80 193 88 288 20 107 117 207 198 57 83 153 86 53 180 194 213 112 231 119 95 121 221 193 265 149 56 126 28 262 16 286 52 164 27 64 128 264 224 142 76 201 284 293 129 116 106 216 165 240 299 69 156 21 177 278 261 200 242 128 159 125 134 206 202 41 10 9 187 175 22 40 30 51 213 61 260 184 232 179 65 7 263 158 256 252 134 92 127 162 281 147 2 16 186 223 186 280 44 103 73 206 79 130 195 94 209 158 207 139 78 36 274 206 73 225 263 277 130 245 159 229 34 112 62 171 116 241 251 98 3 227 168 66 231 183 53 286 219 42 177 90 280 45 102 281 25 187 150 59 31 124 132 13 46 52 66 109 145 78 254 212 52 110 164 243 286 229 287 82 35 259 231 62 22 161 92 303 120 171 213 50 202 256 160 47 32 194 138 239 9 244 156 91 53 290 77 253 160 16 56 25 279 112 126 261 211 264 178 69 301 236 186 189 8 297 89 278 211 79 10 301 214 142 51 122 165 155 249 72 202 22 281 61 231 283 13 195 99 29 241 190 76 171 282 134 127 184 29 235 293 89 260 76 46 95 109 130 189 121 293 183 26 89 38 279 76 268 225 167 222 8 186 108 182 86 212 81 196 188 192 71 1 271 303 203 237 134 49 178 94 212 170 244 50 294 18 120 41 136 131 273 113 189 108 125 50 92 47 1 242 137 268 7 78 129 243 32 289 297 112 278 288 5 210 227 30 296 96 167 218 291 138 120 226 56 217 43 82 113 143 59 111 111 208 135 238 247 13 302 191 240 40 96 136 78 79 273 75 171 264 107 138 102 300 223 228 292 8 269 199 138 251 157 122 255 17 191 258 246 117 251 68 128 180 153 264 43 215 128 245 183 244 274 178 246 117 50 302 151 300 76 36 155 143 44 88 56 202 191 26 122 220 266 47 272 249 251 258 173 243 3 133 261 55 175 254 223 92 274 109 260 46 78 123 116 111 125 228 126 196 3 137 240 110 149 188 82 282 212 286 285 18 229 106 270 3 34 204 170 72 292 207 214 257 237 123 197 226 143 128 14 100 286 299 34 65 160 301 43 249 144 302 87 74 5 107 109 176 304 97 296 247 139 2 186 278 210 169 57 65 79 304 138 268 291 193 28 220 280 49 29 264 30 18 237 171 159 105 201 155 18 73 26 71 61 32 124 89 86 156 248 51 263 248 279 158 228 203 150 193 220 206 298 31 258 7 297 268 64 190 247 198 233 17 284 5 126 159 36 262 211 93 134 188 208 144 146 276 139 223 188 18 132 208 44 24 198 219 292 134 132 194 49 64 47 197 67 167 28 253 63 147 196 220 238 130 190 52 280 301 258 43 301 246 239 197 234 304 207 27 290 133 265 97 259 163 226 82 181 155 173 229 264 1 151 173 41 264 285 20 250 206 148 218 148 121 153 177 272 210 195 214 6 89 130 186 281 85 159 283 104 294 53 123 95 294 103 294 35 152 241 296 262 286 136 126 282 241 148 298 80 167 137 263 75 228 12 85 298 248 285 65 279 266 302 199 248 132 45 110 259 136 96 195 68 160 141 235 8 265 16 211 224 143 150 31 194 121 4 133 45 16 76 254 111 44 195 57 187 253 182 241 64 181 198 276 215 71 113 288 288 88 241 14 166 245 263 259 70 103 272 25 170 34 202 100 182 226 162 211 123 158 88 161 52 256 7 258 23 193 200 129 60 141 211 108 270 47 97 263 92 23 114 169 3 157 89 7 4 100 213 171 82 138 88 62 120 44 33 99 260 45 222 35 39 104 198 302 193 153 150 222 46 6 70 5 303 81 81 28 161 279 258 121 210 173 27 262 46 93 79 101 93 131 291 154 157 248 225 224 262 181 53 215 146 80 108 304 238 123 182 275 270 175 100 77 237 106 117 28 85 278 271 297 228 238 67 77 133 65 116 139 223 251 135 246 206 264 14 54 67 2 90 4 127 237 239 9 210 217 235 161 38 304 193 2 145 256 159 106 53 88 32 208 70 49 164 278 130 242 224 114 269 84 213 53 31 145 247 14 301 80 290 96 174 188 184 290 93 110 105 200 115 218 280 257 35 222 93 85 135 126 68 268 232 21 40 115 189 51 27 113 68 286 12 216 124 54 161 93 234 247 147 143 302 107 90 56 150 219 156 214 228 80 28 110 181 198 123 188 215 79 240 294 113 248 295 265 41 170 136 223 177 252 61 144 19 188 14 233 39 270 231 200 160 19 27 71 134 93 212 58 228 103 248 58 209 108 257 301 290 49 221 65 101 265 122 22 235 155 65 133 1 161 86 98 250 142 137 140 245 146 297 273 55 46 16 69 29 286 223 85 170 105 4 173 161 295 181 207 7 264 122 294 225 116 303 284 283 36 31 271 101 183 230 145 149 168 107 181 144 88 256 289 285 265 144 84 103 85 39 201 164 193 243 287 159 105 139 36 266 27 14 228 82 17 252 251 300 247 261 96 113 80 172 223 297 73 4 119 205 216 50 117 67 160 196 116 49 227 295 103 30 194 40 64 174 251 29 54 181 289 227 243 277 182 118 165 45 205 240 76 145 218 20 173 75 222 47 95 261 83 63 250 71 249 155 289 94 94 175 81 94 100 233 195 8 112 268 260 19 302 6 218 119 26 166 247 2 195 151 201 209 214 40 143 117 9 127 292 96 10 37 36 72 23 233 260 111 71 60 107 170 51 228 170 159 211 140 280 171 113 5 221 196 109 116 300 129 287 17 265 212 153 90 215 19 131 195 36 265 129 105 24 67 145 265 170 186 189 86 18 279 53 248 129 157 45 153 239 248 125 278 250 154 196 218 62 149 71 20 260 285 116 223 82 291 269 159 37 200 38 210 300 129 4 58 146 271 44 217 11 86 145 116 292 239 114 40 301 132 116 280 145 83 229 203 103 17 68 228 103 246 219 201 223 246 243 296 26 256 77 243 175 259 274 162 276 226 171 226 34 27 36 204 205 51 25 120 285 7 44 190 60 100 164 264 229 264 220 98 299 182 279 123 86 112 94 60 14 241 202 275 49 197 195 208 12 188 244 93 134 139 13 3 179 220 285 178 257 84 23 63 15 133 217 239 199 179 85 229 213 290 247 156 195 137 301 267 3 45 10 273 204 299 250 80 275 118 1 127 191 181 104 76 226 132 283 62 31 119 42 105 21 33 26 171 257 97 101 290 70 277 77 42 146 11 160 17 254 269 173 53 102 118 226 266 41 277 296 32 200 153 13 131 301 246 26 87 142 25 82 236 278 128 43 296 144 170 292 155 221 173 52 42 270 107 178 238 112 273 100 296 290 259 125 197 253 262 60 192 298 215 83 228 222 140 92 73 104 222 72 79 237 127 142 52 78 150 209 151 240 208 4 301 278 276 18 104 110 207 65 44 232 75 207 145 268 293 256 286 6 276 276 114 59 164 128 240 95 1 73 41 225 90 64 155 101 137 78 189 54 205 190 21 107 183 1 137 1 125 219 221 256 75 62 238 161 42 50 78 205 33 68 279 54 208 54 18 273 94 298 199 215 204 11 260 44 278 227 74 91 222 17 53 114 117 251 24 255 52 61 189 116 71 192 110 288 210 201 120 110 234 212 76 285 225 5 40 121 291 48 300 170 270 39 82 171 254 232 109 251 230 223 233 90 209 7 37 279 147 284 5 131 207 286 62 285 196 42 95 110 153 273 150 144 240 96 156 227 21 198 201 185 16 81 141 31 104 199 119 218 280 19 33 191 70 243 277 237 226 98 152 223 209 290 139 270 181 21 123 240 78 67 267 67 125 250 145 159 302 106 141 179 85 253 160 287 9 222 280 216 303 14 250 43 163 183 60 38 299 117 167 66 73 128 8 127 179 52 116 76 26 276 120 166 201 171 231 24 9 8 64 230 115 279 135 26 174 202 16 122 195 88 95 8 119 36 301 228 212 155 186 38 151 85 199 101 247 260 18 124 167 81 77 43 131 209 94 15 85 279 171 37 188 92 182 16 184 292 83 161 295 272 154 247 156 79 175 90 244 165 153 188 155 302 79 98 156 109 138 83 302 139 43 140 248 168 52 210 160 127 99 15 57 116 14 215 51 83 3 194 98 222 199 66 123 245 151 70 174 210 232 13 69 96 241 125 52 67 254 213 147 62 115 179 166 94 101 186 45 32 70 220 184 246 13 131 37 49 220 267 104 164 211 164 103 223 71 267 114 214 121 138 134 152 209 130 211 302 195 251 68 25 204 166 88 162 157 16 183 273 87 201 207 28 21 261 124 25 178 34 272 44 173 181 113 189 131 67 15 100 197 19 289 85 102 251 235 18 113 193 109 236 72 47 147 145 45 210 6 125 98 245 81 281 212 103 281 240 72 297 179 91 158 62 161 144 286 251 9 64 96 166 214 228 105 35 232 76 88 125 115 304 291 4 38 122 150 177 283 194 186 285 90 152 94 299 190 174 294 249 302 111 224 264 278 97 107 225 82 3 184 176 292 26 201 44 86 131 61 183 96 99 300 10 51 177 68 131 300 276 130 17 164 261 30 132 47 158 185 214 232 200 225 184 129 207 299 11 59 225 53 4 104 145 160 187 148 273 176 287 96 141 244 295 101 156 70 185 79 243 50 33 2 20 135 296 2 224 192 221 298 220 112 190 85 86 230 220 49 272 257 151 77 210 167 225 170 107 268 297 95 36 159 230 243 218 261 109 213 4 66 191 238 156 112 241 286 162 226 53 278 193 203 59 103 282 182 165 286 118 241 155 126 238 144 129 134 267 187 254 14 54 178 14 67 104 171 78 12 135 206 42 138 220 110 150 287 276 25 54 83 46 36 276 97 258 59 23 8 302 207 20 92 210 138 43 253 158 94 13 74 106 110 37 45 205 23 223 134 282 164 62 64 111 229 281 253 96 35 121 244 196 140 74 15 155 229 202 220 40 240 106 192 42 273 42 289 236 136 39 124 27 203 117 189 124 87 1 283 179 303 135 79 245 42 45 28 222 165 173 219 255 47 11 124 238 50 271 257 68 285 236 24 43 185 270 214 183 83 30 101 103 241 164 7 77 255 141 98 124 248 112 231 272 269 102 228 247 286 233 220 201 91 248 123 215 257 235 29 259 91 261 67 186 240 122 240 66 167 118 184 81 269 137 101 294 66 156 26 13 153 26 166 273 26 170 45 229 251 274 295 243 289 66 169 115 160 60 122 45 295 296 192 218 261 302 249 125 187 182 201 7 157 69 287 103 49 10 149 93 25 181 260 202 208 231 258 148 220 63 125 177 75 221 185 255 154 67 4 253 33 32 92 65 197 45 23 262 98 114 68 216 266 294 131 84 33 6 135 261 157 133 258 55 264 57 121 101 20 221 275 177 128 42 74 221 86 185 62 102 233 204 276 225 195 209 155 2 84 67 33 140 264 242 96 302 262 97 293 132 197 111 69 7 225 175 231 134 26 193 146 142 20 156 124 48 58 118 109 77 35 230 270 249 12 180 203 181 137 122 296 8 165 154 286 262 61 263 173 273 303 254 103 225 179 207 208 21 21 63 302 298 262 243 80 57 55 201 47 253 103 266 179 156 215 66 51 236 281 54 215 169 54 168 211 294 16 224 246 203 211 250 252 112 222 35 128 221 26 70 261 47 278 108 110 105 2 2 199 298 66 30 32 243 169 57 222 177 73 157 224 91 10 251 119 238 36 196 56 121 242 279 111 230 183 68 226 60 11 178 300 151 36 269 111 18 3 85 276 228 303 274 52 19 255 252 273 282 68 219 278 274 33 70 66 245 91 265 243 148 50 268 296 277 6 17 267 93 95 251 75 93 73 80 129 26 223 149 142 44 281 113 228 130 291 299 4 133 210 68 44 34 238 9 168 79 284 135 145 225 149 172 187 3 66 18 206 1 110 192 179 57 194 229 152 86 267 115 146 135 225 95 172 211 258 253 178 184 84 215 46 144 248 221 5 32 220 221 60 283 110 21 22 27 227 256 104 270 84 88 285 68 3 115 175 44 213 204 94 215 126 69 181 263 108 49 279 38 136 137 74 234 60 297 73 262 43 14 55 162 120 254 270 154 147 164 226 198 4 251 197 8 13 247 50 295 111 193 118 112 253 199 289 167 153 117 71 104 293 35 27 188 102 23 240 208 216 291 175 180 121 99 70 100 142 129 24 164 50 288 21 244 79 104 238 289 271 274 274 65 286 20 134 203 187 3 90 261 55 179 21 47 119 263 204 115 241 246 3 297 84 162 105 237 115 198 238 213 272 193 167 66 228 105 43 17 204 247 107 49 186 274 186 83 248 203 68 220 189 59 153 272 159 198 196 220 178 21 32 194 72 245 233 24 248 226 142 207 99 155 167 28 213 134 96 129 251 125 109 47 58 154 189 304 77 192 221 84 220 42 133 235 44 227 226 10 16 50 171 166 213 162 25 200 208 217 23 125 281 156 218 76 239 150 59 127 114 197 98 274 201 214 1 95 255 181 260 149 286 10 256 280 92 53 287 82 277 289 162 244 195 259 136 175 156 199 170 78 292 151 10 19 224 266 181 44 131 43 75 247 172 264 146 68 253 17 111 49 210 218 119 221 263 71 21 193 46 268 9 232 79 177 275 223 151 47 81 96 253 223 228 194 237 125 150 101 258 154 274 17 257 198 295 272 253 72 45 214 282 135 30 242 27 149 136 203 153 1 94 184 113 238 244 253 64 195 23 134 22 44 7 173 132 104 109 63 195 93 214 172 169 113 248 81 279 111 303 100 62 303 124 182 32 167 25 70 281 9 26 135 96 155 157 242 248 123 34 122 202 221 58 242 132 292 200 68 80 39 67 12 297 147 285 216 124 258 200 135 182 188 32 137 104 272 70 116 147 269 274 108 204 212 142 207 130 199 228 282 162 108 231 33 206 273 291 87 202 25 29 30 291 283 116 300 184 285 209 49 174 44 46 196 274 112 132 208 101 19 215 180 117 298 165 108 264 236 115 78 228 194 70 43 89 72 23 178 55 196 237 136 249 284 2 120 187 172 18 280 92 264 211 277 13 142 296 160 25 284 16 207 292 226 217 17 212 269 146 67 123 262 155 287 143 284 60 213 255 31 294 118 177 80 175 292 73 225 72 240 129 178 249 271 280 182 236 243 164 300 98 220 78 163 85 233 266 265 139 126 72 202 168 135 10 65 17 139 67 224 169 215 194 3 240 64 224 107 70 19 83 214 136 109 146 279 52 59 77 69 112 103 288 27 171 4 61 236 89 81 120 84 5 243 113 8 76 21 40 194 60 78 264 294 278 143 143 75 96 131 125 57 144 96 47 295 294 101 178 160 279 140 60 110 89 298 111 171 52 177 100 78 296 173 2 121 300 153 241 264 284 10 47 51 156 292 95 98 246 271 228 176 51 164 53 158 92 116 152 296 32 217 304 137 160 160 74 218 193 117 21 284 191 194 171 169 16 2 98 89 157 264 161 234 126 228 56 96 36 41 55 189 108 181 288 175 87 55 284 189 230 103 181 275 24 187 93 143 262 224 292 22 201 274 63 146 303 28 271 242 113 280 183 55 182 200 191 197 236 195 253 152 241 11 232 6 57 103 261 165 134 259 255 43 251 113 171 31 28 221 110 62 85 43 176 198 162 153 290 186 80 224 245 274 50 280 102 78 248 84 119 304 128 288 263 62 227 280 65 97 86 195 211 14 18 271 81 113 232 206 72 274 24 142 26 172 180 1 302 209 252 170 58 278 192 166 95 76 37 112 84 97 220 254 291 175 95 29 57 218 279 118 122 115 225 80 93 196 232 201 200 40 290 172 113 79 8 216 94 255 162 291 43 239 160 221 91 196 99 111 229 212 159 45 218 250 75 195 77 17 198 85 116 19 130 148 92 278 62 4 278 10 26 289 200 78 16 111 133 106 284 136 269 143 129 291 274 18 286 180 293 243 184 1 128 75 192 141 210 162 183 284 300 232 123 258 104 220 73 155 260 54 146 31 83 92 95 206 58 151 1 197 295 294 104 213 299 66 224 95 15 213 83 113 190 112 53 282 189 222 33 44 137 24 193 213 289 73 303 26 112 79 219 83 7 293 76 62 304 137 227 25 206 49 160 28 97 152 163 187 79 136 287 3 293 68 65 122 188 66 77 47 225 21 178 32 70 151 183 73 64 23 27 70 149 37 94 288 210 190 216 97 155 110 196 169 291 37 101 131 143 18 147 5 267 153 138 279 161 146 244 11 93 259 51 245 69 301 138 174 23 128 114 267 156 4 83 275 82 110 15 174 264 21 84 140 59 8 69 79 211 175 182 249 105 178 231 149 205 8 9 254 165 63 224 172 273 19 238 130 26 198 265 121 283 166 116 99 6 158 301 34 60 75 298 168 84 238 231 109 203 127 287 69 36 217 193 91 40 200 161 113 178 182 57 115 129 27 155 197 77 37 209 268 34 94 264 62 255 268 247 136 253 293 41 233 191 233 253 55 107 22 261 170 263 278 55 114 114 208 50 58 267 149 69 135 133 121 55 38 1 86 115 115 210 20 11 182 33 173 195 52 16 103 117 221 189 115 196 123 295 163 275 144 21 235 158 106 137 222 249 177 184 160 97 140 289 294 185 82 88 99 221 159 137 17 143 77 176 90 80 282 276 260 154 208 143 10 29 31 285 258 117 260 158 76 70 81 88 53 111 119 283 146 25 197 12 262 171 211 152 207 43 5 74 93 220 240 218 28 237 9 253 186 178 116 116 15 295 177 96 188 223 265 86 12 205 210 52 74 196 181 208 147 241 240 298 169 27 140 241 52 279 116 121 36 104 20 168 273 146 2 18 148 219 93 119 147 138 116 81 172 273 5 252 195 43 110 118 6 220 304 94 89 281 209 160 132 238 283 35 92 222 136 264 110 68 219 83 106 250 69 170 232 51 24 32 148 98 275 134 244 302 141 13 6 171 109 98 184 104 197 219 210 57 148 216 223 265 140 84 88 294 131 244 168 254 280 169 100 128 62 154 128 100 222 46 134 17 46 86 5 246 43 91 263 218 256 167 177 166 201 195 41 148 67 287 109 264 121 214 152 50 11 86 104 38 75 80 74 58 293 302 113 286 90 280 149 140 89 23 98 237 40 49 147 293 161 182 248 265 117 122 126 151 128 222 157 294 163 203 39 272 101 175 260 155 61 67 158 127 255 74 137 300 55 68 128 108 65 289 184 176 158 71 281 10 32 238 243 182 273 236 165 172 164 171 279 18 254 14 277 292 228 180 263 89 292 183 171 274 210 42 151 245 262 175 79 166 17 232 256 67 265 250 196 234 120 179 98 86 54 22 33 29 250 153 67 55 151 119 69 195 42 233 298 257 294 27 110 85 3 173 257 158 248 191 19 124 88 96 163 118 26 119 285 14 101 76 240 109 208 73 59 106 293 143 264 197 225 81 284 56 8 195 195 244 124 54 240 273 198 96 53 164 217 44 295 91 59 198 148 245 90 225 161 207 36 40 61 210 171 212 79 137 299 251 159 6 78 191 215 42 224 159 31 228 108 9 42 253 106 37 62 209 211 54 259 222 246 153 106 115 189 15 172 167 296 195 267 88 232 70 249 193 181 193 79 201 252 65 25 146 274 84 86 33 91 59 77 278 46 48 36 132 2 126 72 183 228 170 196 74 87 247 19 150 277 51 300 244 63 77 300 93 245 67 5 273 294 74 302 270 130 126 112 270 127 188 32 36 157 294 297 286 110 193 57 246 188 225 182 31 274 213 275 69 236 114 74 160 61 32 73 244 52 152 241 149 160 228 221 6 12 95 164 295 57 273 1 233 264 35 272 145 104 282 267 230 285 195 68 207 24 285 24 4 3 124 129 65 61 245 138 89 249 125 247 218 214 152 294 121 252 272 52 269 62 22 107 252 109 10 58 114 72 45 178 117 251 24 275 64 268 230 209 298 233 264 259 8 9 48 92 128 107 55 54 262 14 19 284 114 171 185 19 218 248 168 48 32 186 27 304 277 115 171 50 201 270 168 95 154 184 257 124 24 279 159 167 268 206 256 148 75 217 294 201 139 117 241 211 295 18 253 21 54 186 90 54 35 227 195 175 175 117 225 126 246 108 52 188 57 65 148 71 299 142 263 35 78 264 96 150 134 303 6 122 119 89 283 181 248 279 231 158 290 236 3 159 103 17 239 103 147 188 133 232 252 181 120 181 288 165 78 138 252 206 51 137 126 93 23 298 50 254 199 35 119 237 31 297 207 145 220 124 55 268 276 212 3 56 253 242 160 283 236 241 264 182 247 78 106 209 241 237 217 46 58 144 93 142 18 190 122 31 74 88 228 111 200 144 134 61 92 114 76 96 7 55 273 146 213 160 274 60 130 139 280 140 129 43 198 275 143 108 200 51 213 232 262 202 38 47 271 250 240 209 112 274 176 31 1 246 76 287 247 5 185 280 103 183 85 233 16 190 242 195 278 54 230 61 301 195 155 102 177 224 255 158 56 21 43 170 235 257 103 162 224 27 261 54 200 188 135 205 31 155 218 97 232 131 176 295 117 103 189 89 120 10 16 28 162 79 5 59 58 160 249 238 35 68 280 222 32 5 115 204 65 221 102 129 153 25 267 111 261 39 42 231 22 81 262 196 5 21 136 73 71 13 277 143 220 50 222 24 169 282 48 276 76 105 202 187 104 239 130 222 253 96 128 128 18 170 234 195 87 173 39 232 33 216 162 34 54 84 110 18 207 107 10 198 245 14 150 32 94 191 35 113 297 117 197 250 285 181 175 43 225 108 110 108 77 100 108 203 93 243 182 169 24 242 100 74 215 103 214 270 1 231 273 300 158 216 191 81 128 4 118 192 285 227 210 233 101 287 304 260 184 16 235 127 243 289 44 290 93 90 214 141 192 58 59 30 210 37 267 216 86 27 51 183 23 150 151 303 302 71 17 234 90 54 170 60 288 13 36 167 174 121 164 236 3 174 3 241 88 104 44 235 4 130 172 275 258 137 49 162 221 128 209 139 288 49 113 299 47 40 72 98 209 100 203 279 215 170 58 289 182 159 183 186 82 225 33 272 85 171 105 256 184 280 214 152 187 74 11 223 22 207 155 191 227 113 54 291 171 220 169 18 122 124 30 38 70 123 131 46 292 17 9 18 20 289 229 121 108 274 98 84 207 131 148 126 163 178 45 21 95 23 281 118 127 222 37 174 235 259 233 168 244 200 250 56 136 60 43 251 50 259 96 281 276 93 132 224 15 182 149 226 261 37 228 189 96 160 200 182 139 192 290 96 291 136 199 106 34 234 141 108 154 4 74 200 256 49 281 288 290 116 159 178 32 97 107 257 219 125 70 226 96 27 114 16 235 216 74 51 5 119 53 69 48 86 159 282 53 88 178 292 217 138 21 49 45 121 68 278 64 197 203 9 113 279 156 87 254 131 227 92 300 215 183 256 213 152 147 271 123 67 152 31 56 208 197 95 19 114 109 216 116 65 242 19 23 110 79 298 270 58 147 231 265 102 192 60 27 10 243 217 15 154 219 128 194 186 119 300 223 223 39 158 66 212 193 192 5 111 59 97 288 274 178 72 169 267 45 196 157 233 109 30 103 102 2 45 234 194 66 104 183 19 203 176 66 149 179 285 52 303 43 169 301 84 177 228 157 223 49 199 71 175 55 21 27 58 191 113 93 103 201 219 293 227 102 85 297 191 106 211 102 260 151 266 155 122 284 15 59 36 128 2 189 118 117 260 110 57 177 152 139 148 246 291 6 287 221 138 173 285 129 232 105 84 81 235 19 254 48 256 138 292 159 241 60 294 64 26 214 53 78 287 47 242 139 48 302 145 76 61 100 246 202 299 251 60 89 50 252 118 253 86 261 287 167 111 259 268 57 162 102 59 291 179 283 264 128 49 237 287 11 46 55 289 301 194 145 260 230 60 285 210 127 244 76 250 188 94 229 189 143 28 245 228 165 75 223 151 166 77 202 195 157 25 156 180 228 218 3 99 208 301 1 269 69 48 261 129 162 142 252 111 147 272 120 101 233 176 174 6 97 247 151 218 237 304 112 145 147 277 228 76 128 146 276 181 207 245 187 99 37 214 72 64 56 181 181 37 178 167 247 174 215 198 290 269 95 173 193 283 133 204 21 239 226 226 288 225 229 263 288 139 226 149 192 172 244 112 37 295 270 139 20 31 270 191 55 210 123 81 282 202 121 293 56 131 79 52 28 280 3 185 192 179 261 39 30 225 35 67 127 53 242 133 129 83 8 6 27 163 103 57 30 78 207 214 17 233 157 105 49 19 138 102 46 63 84 272 115 115 148 142 155 124 128 282 221 182 165 253 248 234 184 242 39 78 23 194 142 164 109 293 135 151 25 10 74 99 37 40 103 180 169 39 4 165 182 78 64 119 48 303 97 282 151 143 209 65 207 301 132 7 143 264 117 25 41 248 10 92 228 76 285 180 130 43 96 159 95 105 13 201 110 142 146 95 297 275 18 136 235 197 181 187 238 73 211 110 12 247 99 53 197 105 60 55 192 11 190 223 202 192 244 176 64 278 270 172 73 128 257 136 71 70 206 47 107 69 274 294 163 212 182 178 289 37 126 228 20 39 194 63 93 271 77 289 178 59 259 260 229 49 132 246 280 96 220 166 151 1 198 106 249 98 178 273 66 158 2 238 79 265 50 264 150 288 111 250 281 205 173 247 214 265 246 146 202 163 241 73 206 54 90 196 176 202 12 9 113 22 60 222 259 2 141 123 71 294 170 216 294 224 89 122 263 89 233 287 291 245 33 54 276 172 20 284 3 297 192 297 196 210 65 175 55 73 223 51 46 32 171 219 14 34 67 101 210 118 161 70 169 229 65 37 273 41 218 198 115 263 280 166 287 217 227 54 56 41 120 231 297 302 158 255 67 275 169 287 28 28 5 132 86 123 243 293 242 186 214 69 258 87 256 61 245 297 57 211 115 194 11 48 238 8 185 240 153 102 86 132 247 66 246 212 16 139 112 125 227 201 146 144 270 194 290 36 94 135 227 220 140 278 132 200 258 304 56 34 208 190 204 146 281 29 176 92 115 164 53 263 145 121 241 133 239 198 139 240 107 297 72 38 149 165 302 115 211 224 35 90 161 248 101 223 299 267 265 236 274 287 127 241 179 70 51 216 215 203 232 62 159 114 102 128 188 30 87 15 127 14 169 148 136 166 86 10 176 36 27 300 33 172 12 289 99 44 225 300 202 29 54 83 200 106 216 261 195 21 296 272 158 186 174 275 252 230 218 44 196 172 238 160 47 151 27 172 36 36 46 167 232 58 278 42 70 300 207 257 258 212 29 55 59 189 51 152 268 26 160 142 269 285 141 133 146 291 58 49 131 124 152 192 86 114 124 169 56 24 231 278 17 65 18 69 227 100 25 192 294 126 288 23 121 286 237 9 82 133 90 55 296 40 136 169 265 196 285 154 96 11 224 122 149 16 147 137 107 220 78 57 85 201 246 73 148 278 189 3 212 133 174 6 264 300 53 268 88 298 257 303 233 129 25 14 215 151 105 189 21 159 254 78 281 54 161 300 235 205 58 32 65 53 289 19 24 175 93 104 239 218 246 97 92 134 285 31 236 15 284 94 80 30 157 219 151 29 69 262 111 254 151 182 45 186 287 80 146 296 107 74 94 158 161 119 234 108 5 249 152 114 228 145 109 298 270 90 205 116 216 127 3 265 214 64 278 49 82 195 214 138 18 292 42 22 165 224 271 104 93 2 119 161 257 113 220 122 275 138 282 234 162 75 16 121 297 50 39 206 27 231 252 162 43 74 111 1 168 177 121 144 203 155 112 227 57 23 148 294 21 293 14 270 51 219 71 280 65 56 38 302 93 184 5 36 6 126 51 91 278 11 41 190 292 174 8 3 23 215 183 222 21 254 158 133 51 278 6 54 67 260 182 252 252 231 234 279 121 158 5 69 273 268 226 150 253 270 59 96 156 161 19 14 181 255 102 229 93 30 152 138 262 100 99 283 124 248 298 283 154 115 246 291 199 159 188 73 257 146 42 190 191 34 91 56 54 256 273 278 42 184 127 174 233 63 53 62 96 139 102 251 217 88 77 193 173 241 61 18 1 34 86 76 139 52 2 45 46 29 160 198 193 218 304 200 186 216 258 276 27 223 291 148 235 58 203 68 127 7 88 26 24 136 21 171 1 193 104 25 159 129 61 198 244 16 97 246 136 7 97 119 61 208 143 99 46 23 281 187 249 205 153 38 211 126 129 27 225 251 83 241 177 33 69 264 271 65 218 67 57 167 203 254 71 231 250 50 290 10 291 60 189 69 240 14 124 81 130 170 143 158 260 38 245 169 88 95 2 283 50 170 213 200 142 201 265 214 45 104 17 190 38 6 258 103 198 87 269 56 108 15 137 304 147 291 250 17 24 152 81 287 163 193 182 284 181 235 106 205 86 296 149 247 84 105 231 238 2 290 170 152 248 107 228 83 276 74 250 90 183 82 182 102 59 140 204 213 115 154 60 256 178 125 12 170 121 240 156 266 56 89 182 62 154 275 276 117 47 81 201 202 150 75 145 213 125 82 225 263 246 56 274 59 135 104 194 76 142 139 36 220 168 243 111 67 104 175 150 33 216 214 92 64 296 68 105 232 233 248 147 153 78 217 97 302 64 142 21 85 153 17 294 114 261 60 44 214 200 143 157 110 16 216 30 191 60 137 233 100 77 127 4 222 19 128 128 142 239 190 197 73 108 223 229 260 11 281 258 125 65 103 215 76 253 167 150 106 38 68 296 165 87 243 245 281 55 224 192 272 274 211 246 107 72 87 181 84 212 43 244 176 267 287 297 82 275 66 260 15 253 40 295 40 300 89 149 26 5 183 163 105 9 67 257 75 255 73 144 10 160 49 233 104 183 256 120 111 95 268 199 14 44 180 152 213 303 291 288 138 290 108 15 297 36 237 186 98 175 303 5 121 295 66 117 82 282 59 277 18 288 227 160 163 273 202 47 53 174 166 140 66 280 105 256 191 250 70 271 24 270 156 171 242 56 243 263 26 40 301 28 298 101 304 196 244 108 108 10 56 250 93 16 261 34 185 301 5 82 26 38 6 79 38 145 153 300 247 23 1 160 204 152 298 66 227 12 236 185 163 117 248 210 297 46 6 59 287 159 140 34 42 57 148 291 6 64 254 161 154 73 121 157 192 94 125 184 247 37 218 150 4 206 60 282 101 232 261 241 167 97 49 291 69 77 12 64 158 152 190 276 15 197 35 27 97 172 98 236 15 1 266 92 129 210 202 285 41 246 181 113 26 122 149 276 155 154 214 120 252 81 169 170 196 234 206 125 118 208 101 271 258 83 119 253 15 262 267 287 44 172 19 77 85 3 247 245 245 69 191 71 228 13 16 265 148 119 108 287 26 213 303 118 67 2 28 115 188 40 60 270 62 76 172 225 46 205 266 217 41 298 281 295 55 22 133 79 299 178 31 71 270 301 285 227 63 223 180 82 188 117 241 239 214 59 35 115 166 240 32 291 14 131 294 105 207 141 24 35 84 120 301 92 120 75 19 221 129 77 241 61 26 103 10 205 200 75 189 113 160 124 268 125 290 121 161 281 155 290 112 94 11 18 204 226 193 192 254 223 286 192 92 112 153 107 288 245 91 4 274 224 101 8 106 265 50 23 43 26 230 109 105 304 84 198 208 205 291 171 68 19 168 148 9 226 66 204 65 111 116 170 193 133 273 303 18 275 289 111 54 33 78 54 119 178 34 113 40 217 243 110 223 199 186 50 285 277 19 149 135 232 233 250 2 44 209 287 13 265 230 100 246 200 189 39 222 61 9 267 109 222 132 41 197 263 201 224 169 115 290 146 285 67 56 237 5 100 209 299 286 200 85 98 144 168 146 169 120 174 176 155 28 236 145 52 256 237 265 48 107 273 212 176 253 87 292 131 199 2 88 117 176 54 7 247 83 23 166 176 257 303 83 47 259 97 212 100 69 178 273 146 167 217 62 167 133 147 50 140 34 163 161 11 158 42 34 113 22 63 90 186 220 17 101 154 72 125 254 204 66 167 143 210 227 280 63 244 77 304 6 97 137 172 289 100 134 55 282 191 26 259 31 145 63 273 173 301 296 80 303 64 38 253 253 213 252 228 176 193 192 94 48 23 30 132 64 206 236 145 288 69 72 168 211 289 154 215 211 195 290 32 265 51 144 49 138 68 233 45 303 205 255 56 261 64 108 74 165 28 104 40 194 249 250 256 200 195 268 85 241 35 295 121 115 20 242 86 152 215 242 272 203 255 45 177 230 231 253 32 247 72 265 108 94 185 290 276 211 44 2 248 78 5 175 109 107 140 53 21 15 168 294 9 117 88 252 174 162 9 201 193 200 171 35 122 176 97 133 289 204 248 62 241 274 17 242 143 137 178 251 72 90 134 303 79 246 35 103 114 66 301 25 29 266 278 141 24 22 212 10 271 203 140 74 250 228 112 230 62 99 215 45 301 57 243 107 116 1 236 1 298 301 112 259 190 7 114 124 281 59 59 249 112 36 3 113 98 75 270 217 36 277 226 297 52 196 4 219 194 165 164 23 14 272 114 252 209 9 259 83 291 302 192 89 45 20 131 173 130 70 77 160 83 96 155 254 29 62 173 7 204 259 251 175 302 126 184 210 243 283 280 226 284 210 157 279 15 74 139 102 175 1 275 284 58 250 127 119 185 238 154 162 202 233 82 81 131 213 197 155 288 263 6 211 239 228 73 25 247 33 114 269 258 123 57 45 67 147 273 217 1 189 301 57 304 80 28 88 190 137 136 280 46 168 187 85 222 191 58 57 69 51 35 96 97 121 175 283 218 36 248 53 53 241 208 164 87 211 302 73 220 170 285 273 285 34 303 297 271 194 174 302 40 93 195 292 256 43 223 123 97 27 304 88 64 173 248 191 170 39 113 218 271 229 110 152 62 169 96 149 84 246 289 246 175 30 145 34 194 10 234 173 288 303 131 70 122 228 97 219 98 184 200 277 189 276 81 6 54 258 132 219 150 239 119 227 99 226 23 116 212 222 99 95 173 215 40 46 64 51 74 20 176 243 298 225 299 215 149 138 284 248 63 87 259 180 187 178 196 14 225 64 13 192 132 45 252 123 82 255 100 173 45 159 226 280 162 71 199 150 169 111 143 89 239 136 81 239 131 175 26 1 167 261 71 176 14 151 59 41 3 139 8 240 118 50 249 107 211 169 298 38 37 147 274 144 189 201 45 259 149 137 237 11 93 35 280 120 274 138 92 255 196 155 118 285 181 56 33 15 43 145 85 185 61 231 60 93025 287 18 23 16 243 261 145 282 19 191 260 74 281 111 240 72 127 281 211 209 226 134 198 284 6 114 279 257 156 10 41 239 239 88 144 230 68 299 12 125 56 109 177 71 206 183 187 130 163 29 24 23 173 182 293 250 66 162 240 89 161 64 178 212 256 274 43 71 45 81 244 298 124 205 158 11 224 225 185 150 223 59 289 204 24 61 254 113 157 104 187 1 120 43 260 166 148 39 112 265 194 248 146 127 129 204 125 253 259 195 123 120 196 202 71 187 295 153 299 20 204 281 40 225 132 60 279 144 265 244 71 216 233 193 270 249 283 153 44 18 206 256 196 128 105 112 286 150 39 32 267 70 55 178 111 101 90 169 37 85 21 89 178 19 61 214 79 85 209 26 96 241 118 143 236 210 208 82 110 130 204 142 72 236 127 96 219 232 28 92 76 41 55 196 47 221 111 160 101 239 250 238 266 147 140 11 195 145 174 139 201 151 38 160 24 223 125 90 156 179 131 219 47 63 96 221 210 183 225 168 207 296 157 18 131 65 147 50 275 197 198 232 3 106 115 38 245 67 61 237 10 263 85 213 179 160 213 135 111 276 192 39 280 96 232 93 84 28 154 13 37 156 162 120 204 57 274 15 61 47 173 227 64 7 264 288 179 23 15 236 238 71 111 275 225 213 255 154 289 154 190 80 304 285 160 197 77 144 40 178 213 154 86 61 291 189 304 27 43 191 221 107 73 118 163 301 227 36 8 220 100 77 207 221 90 64 289 90 177 281 50 128 144 31 249 260 117 252 116 175 204 1 5 227 248 114 198 34 49 237 295 26 60 161 257 36 10 212 283 255 300 125 152 115 293 17 284 20 90 78 10 15 48 41 164 217 76 119 78 11 191 175 122 226 160 210 24 225 182 266 303 87 247 186 151 157 194 207 145 8 10 71 91 245 303 65 229 91 25 89 172 236 1 287 201 92 270 198 76 174 204 74 151 267 2 256 29 96 175 180 218 259 177 223 267 147 260 146 33 253 10 138 62 83 207 219 164 72 131 274 33 220 54 248 3 225 18 83 302 278 194 67 257 304 233 197 50 225 107 190 211 261 234 226 246 178 290 69 102 135 36 135 184 288 36 148 126 251 79 95 194 23 218 179 182 302 267 4 122 96 146 80 301 79 293 218 64 99 235 217 33 76 158 240 57 99 213 192 158 269 218 110 23 267 27 120 282 230 296 186 115 129 112 196 17 21 38 62 66 287 123 190 154 284 77 120 54 11 207 237 105 78 271 26 149 169 177 161 218 264 245 289 104 244 266 113 200 255 270 163 91 210 182 105 51 304 169 13 237 170 11 149 121 59 140 267 283 142 211 131 21 301 245 265 59 284 224 169 282 82 222 187 193 160 167 88 75 123 67 28 270 268 96 296 212 189 236 149 200 278 173 291 121 150 279 30 80 264 254 66 276 33 113 67 58 209 13 168 168 117 143 222 219 150 167 103 123 206 82 240 111 258 139 184 119 222 1 41 134 35 67 301 98 223 25 267 10 297 162 151 147 219 70 202 130 276 231 178 88 181 290 21 193 18 102 15 206 265 39 182 181 295 28 244 48 65 167 293 289 125 129 141 7 280 148 1 71 13 104 75 73 179 298 42 217 254 32 74 218 33 95 80 114 225 118 15 213 30 124 38 113 49 129 283 118 36 159 277 121 301 248 287 9 86 23 164 82 210 114 282 197 133 6 36 205 72 147 33 16 202 149 84 210 7 288 271 23 210 4 115 56 212 89 104 197 258 8 69 206 289 180 194 12 16 168 147 117 268 227 279 60 276 64 71 247 261 270 173 157 88 4 167 112 239 251 3 123 139 184 128 291 209 91 277 118 188 201 218 156 226 22 238 187 298 116 61 85 71 184 205 11 218 37 42 91 33 280 243 27 3 297 61 91 70 136 133 49 65 220 236 116 11 250 51 295 51 134 251 119 195 150 142 104 64 175 137 271 193 79 270 28 218 169 119 281 195 124 208 137 5 177 153 244 286 199 217 252 73 273 13 130 92 152 213 132 164 140 266 161 49 238 96 300 141 118 152 94 171 34 192 113 75 225 245 219 248 159 129 188 5 137 64 90 255 108 70 62 245 197 289 164 215 115 212 218 24 199 11 143 166 256 57 95 74 254 119 16 276 175 260 109 3 20 180 14 126 8 10 143 258 192 130 163 96 287 117 270 253 261 27 129 301 241 103 218 199 197 299 1 253 93 177 48 86 291 16 123 135 298 236 194 205 60 8 5 53 284 92 184 44 238 146 108 52 40 28 174 267 252 302 124 296 90 247 194 93 55 90 191 151 152 145 280 86 141 37 300 165 81 289 188 257 289 233 221 155 117 221 253 278 61 125 154 234 235 101 298 220 14 204 280 113 64 182 185 55 138 257 108 67 49 74 77 250 183 231 301 71 264 166 169 107 201 101 52 117 63 113 248 75 295 277 213 143 156 136 274 198 240 29 24 89 126 135 202 4 167 249 149 210 231 17 227 149 277 106 233 133 226 157 250 147 56 210 78 15 59 275 168 103 166 172 205 148 248 191 90 195 97 121 200 273 63 262 38 286 80 278 61 182 136 100 271 47 198 273 291 269 18 179 34 94 96 238 136 58 96 213 95 76 139 265 65 170 77 45 95 231 277 172 157 80 200 100 235 185 176 137 107 258 297 214 164 263 201 206 158 257 214 33 113 271 199 211 252 29 6 65 117 75 202 123 252 240 142 182 285 16 108 211 113 261 93 263 191 201 117 295 142 169 295 120 79 46 208 22 89 159 46 72 24 164 37 173 274 72 51 151 151 167 41 181 266 250 199 138 129 241 7 116 132 213 286 135 8 125 159 242 235 304 59 203 273 20 268 300 110 283 216 100 133 176 87 259 151 287 13 131 29 151 212 108 283 47 113 273 280 11 157 15 233 171 143 26 155 66 170 297 169 144 29 187 301 21 272 132 208 104 207 293 128 303 170 139 257 20 130 6 66 67 148 188 5 75 16 48 232 75 227 258 282 285 244 200 284 94 235 253 113 281 278 99 131 70 249 68 209 75 10 289 24 106 51 215 285 156 300 303 66 179 207 159 100 138 82 223 56 23 280 10 28 247 61 89 42 42 146 295 53 179 50 6 223 276 234 142 167 44 52 127 158 197 5 58 292 6 140 169 224 266 48 18 156 149 197 32 239 156 270 204 55 57 276 241 189 173 80 236 264 268 212 21 229 23 253 189 262 37 201 292 29 287 232 270 218 194 202 116 183 258 60 287 121 58 1 121 254 294 56 59 71 289 62 246 231 54 245 14 295 172 80 169 145 159 27 244 78 8 207 126 70 100 154 140 101 207 48 282 38 173 262 113 204 48 104 257 177 101 6 54 123 286 294 234 302 125 141 289 239 298 167 118 48 87 29 256 133 155 156 181 120 102 13 174 148 33 179 241 157 52 238 303 56 203 150 223 271 3 185 213 144 297 34 277 122 43 288 188 279 61 26 208 257 84 271 48 252 277 286 36 38 49 230 296 231 181 240 270 222 143 205 180 149 86 107 285 259 190 253 222 46 95 269 139 188 24 294 214 281 250 215 210 51 64 229 283 100 15 216 303 149 152 167 249 33 233 223 298 233 23 254 28 262 217 261 155 298 268 8 182 48 81 115 29 11 284 110 1 20 85 224 288 131 137 219 189 264 249 77 198 31 173 185 180 230 75 105 61 224 66 34 17 126 226 43 276 175 219 150 25 294 273 175 234 252 277 46 48 250 221 239 121 110 238 2 267 141 299 154 251 141 155 193 132 138 32 79 249 59 166 257 296 274 98 215 65 99 234 1 235 31 183 201 111 18 95 98 67 252 142 10 132 83 286 92 127 85 207 80 115 213 87 3 237 5 189 228 57 19 208 145 117 22 201 221 225 213 201 255 232 171 63 74 143 99 156 67 131 223 205 10 152 66 166 187 252 20 136 255 170 146 227 25 203 39 78 217 170 84 44 226 192 185 299 63 95 95 145 286 148 216 265 27 287 156 122 268 29 275 253 80 254 22 180 299 176 289 231 84 225 94 40 233 186 199 281 9 164 201 99 209 126 248 292 59 29 260 117 163 118 282 116 240 271 212 263 272 4 149 187 263 161 201 140 37 95 133 31 221 141 15 181 212 61 169 172 165 21 257 206 201 47 132 54 95 263 147 125 259 93 62 254 112 285 152 94 113 122 190 174 170 269 185 49 149 202 73 85 9 87 133 164 106 204 209 2 67 150 304 155 4 35 171 283 260 200 241 231 153 278 163 300 114 252 132 37 175 252 160 210 12 50 123 169 24 60 97 15 150 55 296 15 290 84 270 46 249 98 128 303 190 304 179 79 293 128 278 228 267 240 12 227 280 178 248 43 214 302 67 24 46 175 259 62 24 174 160 161 263 31 124 288 253 236 178 165 203 82 282 208 169 7 17 107 131 190 270 109 264 176 247 274 286 261 174 105 66 11 101 140 192 147 112 132 273 20 24 97 146 248 240 232 180 304 15 231 118 189 276 115 96 257 133 110 215 196 278 212 202 185 232 227 214 176 156 31 176 100 178 63 37 1 29 212 77 86 240 21 18 172 209 123 120 260 189 63 261 76 71 9 137 223 32 225 116 290 192 151 213 221 38 126 71 258 280 148 185 49 147 12 289 99 273 158 171 40 117 189 93 282 160 131 255 15 197 143 166 259 268 178 248 168 169 76 84 231 270 136 115 205 70 70 214 215 227 101 77 271 242 167 28 228 142 223 135 46 212 284 186 204 93 5 148 296 151 246 141 205 262 20 243 123 27 16 267 218 83 137 248 22 39 284 249 281 23 174 237 233 77 184 137 104 102 195 83 248 66 41 46 74 247 175 18 234 264 187 125 248 295 53 122 283 51 183 50 160 177 120 149 209 224 147 136 291 142 144 93 79 288 62 17 111 164 124 114 214 289 124 267 47 135 192 49 92 268 138 195 2 174 207 29 49 254 149 70 95 38 224 193 33 9 265 255 79 150 166 37 91 290 258 36 24 99 239 216 182 192 231 240 185 264 2 284 291 233 186 1 208 29 228 217 231 63 238 98 3 226 114 9 90 124 153 124 198 278 98 275 182 39 209 120 157 117 266 134 113 270 57 23 194 29 202 261 66 240 269 214 146 69 243 64 232 138 112 111 61 205 303 3 185 6 186 113 145 253 44 217 25 49 51 110 33 55 9 218 106 90 48 206 4 98 112 23 171 10 170 230 210 60 147 153 215 24 85 79 195 127 17 199 276 42 79 240 253 74 238 247 49 253 248 220 167 211 89 201 36 230 46 191 93 107 283 266 80 83 231 58 53 162 292 54 72 31 104 166 130 181 160 173 111 185 165 229 25 262 53 19 105 188 248 97 121 182 21 88 163 73 103 227 117 131 22 45 81 89 175 196 276 212 156 124 291 233 70 148 290 279 288 23 150 257 183 149 160 178 84 144 209 193 229 233 221 289 265 272 190 272 133 167 284 231 152 21 147 13 197 50 286 64 229 282 133 136 219 94 13 296 301 78 109 58 211 230 64 164 220 136 107 192 12 132 262 237 124 19 206 190 9 44 101 298 110 84 63 149 150 251 262 118 115 171 127 56 120 107 295 12 109 278 245 265 250 125 263 222 23 152 186 255 139 206 206 300 49 28 95 62 206 15 143 146 224 245 235 226 213 74 248 228 150 124 214 184 290 24 104 55 197 298 212 104 186 160 239 10 56 273 42 79 172 75 86 170 82 138 130 248 108 19 12 153 173 49 258 239 299 191 73 35 276 295 274 10 184 172 90 249 185 280 164 192 183 188 13 44 191 60 282 2 232 176 80 261 182 39 203 11 178 132 116 149 295 7 114 76 81 229 199 18 31 137 49 130 267 210 303 155 229 17 100 261 184 76 140 299 198 235 117 136 152 232 297 95 6 82 193 262 103 105 267 135 248 219 53 236 33 95 83 6 44 100 148 132 186 102 253 98 59 283 86 131 192 249 273 164 168 175 267 56 220 186 160 7 141 29 111 57 97 22 68 260 298 45 56 18 170 227 63 204 212 281 48 284 31 230 200 272 93 230 90 16 103 76 184 163 46 22 165 220 189 77 284 151 280 240 263 302 98 277 191 221 63 237 294 186 27 85 280 272 285 178 44 242 186 97 32 258 20 296 255 251 88 220 130 64 110 85 207 93 171 183 3 135 41 196 99 30 180 180 142 83 57 29 143 293 8 93 129 51 140 136 115 116 143 198 140 53 98 222 170 296 79 182 112 164 7 143 287 7 301 85 118 30 107 31 68 227 224 201 130 136 241 296 110 257 125 133 265 23 155 288 250 149 67 180 209 221 220 299 58 129 191 59 251 8 179 10 274 186 54 73 101 241 200 164 227 274 112 216 172 90 54 289 145 191 173 4 99 154 143 240 22 254 288 84 122 49 181 167 222 301 165 233 49 66 229 123 105 237 105 281 15 28 183 27 164 282 190 165 182 267 179 41 239 301 67 113 216 276 213 37 155 202 57 199 79 298 96 212 11 238 44 126 103 272 12 125 17 97 19 170 260 42 288 9 166 54 111 183 161 286 75 247 242 11 231 229 57 246 146 67 144 65 22 117 207 40 238 253 283 117 102 17 58 62 228 297 223 38 132 77 11 295 202 118 267 293 140 152 248 211 186 214 208 52 205 36 214 226 97 89 302 262 12 241 212 47 291 283 193 280 43 156 139 204 69 277 163 27 245 127 269 135 224 11 269 9 134 189 77 139 98 299 172 209 19 290 295 153 265 219 48 234 95 203 215 99 78 90 260 101 246 17 210 204 167 215 201 65 258 68 216 106 8 23 13 83 160 298 282 270 139 85 273 188 177 250 283 247 177 28 133 116 94 204 61 288 115 153 213 232 270 222 65 250 153 228 29 266 259 177 87 284 5 21 79 278 26 35 213 214 57 237 132 96 147 265 154 197 68 122 292 40 48 302 269 195 181 10 94 279 84 65 220 54 246 8 267 297 236 113 158 75 104 72 280 172 291 70 291 77 212 31 168 153 237 21 205 292 253 70 140 297 237 158 30 111 176 93 3 14 13 297 159 30 290 61 225 206 251 136 196 144 189 104 67 182 188 194 276 157 176 234 286 58 298 26 59 91 20 157 146 227 112 273 234 120 41 165 236 2 163 106 206 107 118 73 15 1 65 79 247 5 288 122 35 224 246 61 106 257 152 238 141 182 35 162 69 129 216 48 248 128 22 36 18 189 260 281 217 54 216 92 93 27 282 236 102 129 169 108 202 158 75 96 29 165 81 43 27 32 254 5 295 112 160 241 134 80 276 268 56 1 49 20 177 34 143 33 193 153 105 300 290 126 253 121 78 270 182 19 21 187 297 303 299 7 3 16 23 223 262 266 190 89 214 226 41 58 239 294 240 178 146 47 95 57 83 52 28 230 215 102 95 243 62 169 297 18 110 97 247 76 177 96 268 1 211 1 287 260 61 154 211 158 112 66 136 148 128 219 130 173 62 16 89 156 85 35 62 246 289 47 284 88 59 188 252 193 167 304 222 208 1 150 39 214 116 7 275 134 61 65 53 156 115 107 274 97 256 188 132 275 74 175 43 260 225 17 186 156 174 147 283 134 15 260 23 275 208 49 284 274 120 301 285 221 225 181 139 269 206 191 277 186 112 137 45 217 60 21 295 141 239 175 171 229 204 123 212 246 64 30 260 25 172 233 156 34 55 176 58 134 297 186 224 67 185 109 10 110 59 85 276 46 92 226 145 207 12 3 54 162 279 103 2 259 145 15 93 155 293 146 285 113 10 184 271 285 214 289 259 169 150 51 80 5 77 13 114 260 141 40 257 294 214 163 239 132 13 250 262 212 20 288 8 27 221 20 210 109 120 68 92 62 93 202 67 163 133 41 242 291 155 274 262 41 256 203 210 150 238 88 44 104 254 114 55 67 119 145 122 1 98 165 54 241 155 244 220 65 66 53 95 48 91 283 289 112 114 223 170 196 133 205 38 291 260 188 134 52 225 196 303 127 112 267 179 115 11 124 45 97 52 17 284 176 298 9 46 272 287 72 72 242 115 153 163 275 171 90 279 21 184 90 2 3 2 110 110 27 120 124 297 218 143 191 142 192 8 26 243 110 65 228 269 56 32 95 137 290 128 39 126 68 193 174 287 124 292 286 278 62 209 37 60 27 267 88 55 107 144 138 242 278 22 57 101 278 197 263 97 9 225 159 289 81 55 193 60 277 206 85 256 11 238 72 2 105 282 54 295 298 156 23 115 198 36 131 238 4 64 226 77 27 246 288 46 184 261 250 71 254 110 54 65 195 108 260 59 18 230 112 24 148 1 199 299 134 225 64 148 108 236 93 63 293 288 171 36 210 162 82 213 129 152 111 71 284 92 281 166 31 69 175 128 192 243 289 213 55 163 106 266 76 117 185 250 282 2 286 294 183 165 31 113 151 52 210 75 231 242 174 105 282 91 28 101 154 113 288 280 147 130 276 105 172 105 123 122 78 139 265 149 154 37 111 157 48 273 88 273 119 183 11 97 297 115 203 215 301 264 252 105 239 16 157 124 85 84 238 166 156 215 146 287 101 37 243 60 217 12 73 249 136 75 56 103 258 52 231 187 150 4 17 289 212 198 127 169 254 11 231 284 242 243 161 301 21 209 119 93 171 284 61 204 187 255 108 78 221 298 51 87 66 71 216 90 200 73 191 67 276 64 209 123 220 88 17 143 26 258 108 183 14 236 206 195 221 100 57 170 40 128 18 5 29 294 103 259 304 72 283 158 260 174 112 242 157 96 20 69 137 173 15 179 293 149 146 21 150 23 187 106 229 42 152 214 40 83 190 69 250 261 191 300 41 178 161 172 108 138 123 63 206 216 12 84 201 110 101 93 65 145 166 108 88 192 35 32 268 279 243 222 90 64 137 148 296 302 299 247 33 223 80 72 86 63 278 297 142 28 194 219 258 154 244 165 7 46 267 24 72 113 300 128 38 285 25 201 217 207 251 34 231 254 74 171 231 234 163 1 66 180 268 194 168 150 279 167 94 229 26 242 134 66 270 103 60 230 186 276 192 170 204 234 196 109 251 26 217 282 259 200 284 8 183 274 33 43 301 15 9 234 239 118 265 212 165 81 265 130 285 79 35 52 145 163 100 205 257 219 4 107 17 36 111 263 112 256 46 32 42 186 9 161 172 238 271 262 154 165 181 197 78 18 193 111 256 18 248 45 76 8 7 294 191 270 72 215 276 287 142 279 42 144 85 228 185 17 147 182 146 209 216 170 224 160 267 211 82 273 212 172 8 54 242 277 303 21 237 91 8 218 211 175 74 134 117 110 44 239 219 40 153 301 29 249 205 21 186 16 186 58 284 115 74 145 201 185 214 177 218 216 245 92 32 172 169 258 86 147 153 89 213 251 165 88 178 79 91 84 98 237 40 41 249 114 129 66 94 230 204 201 209 265 285 29 71 300 241 169 98 287 258 136 110 248 215 125 52 7 27 243 21 230 76 205 3 231 266 184 50 262 28 223 122 70 218 146 179 181 161 229 164 90 238 239 106 146 183 173 225 139 174 304 285 268 287 193 284 155 87 135 88 217 133 206 34 122 24 19 213 286 176 175 43 85 289 200 3 31 241 267 110 278 80 74 233 235 113 182 60 152 171 246 55 292 48 185 176 96 136 201 81 237 75 106 269 29 233 204 101 152 78 247 26 139 105 214 259 56 169 114 139 47 53 199 295 76 86 198 180 297 68 147 259 193 62 55 77 236 300 148 228 304 143 207 299 172 90 108 167 39 136 242 234 255 230 137 255 279 163 106 255 2 58 110 122 96 136 75 112 144 98 240 181 274 269 13 48 276 292 8 58 46 128 151 171 201 180 142 291 77 81 97 162 213 272 70 215 187 257 205 93 276 134 262 116 119 296 155 239 17 265 189 229 293 116 248 120 187 157 77 294 295 228 90 259 53 289 263 15 297 303 23 36 119 193 96 184 53 79 294 89 138 231 46 3 181 167 44 7 11 32 183 149 78 58 22 24 255 145 131 39 224 129 147 145 163 244 186 242 271 113 207 239 119 73 127 134 17 285 59 290 30 183 81 65 109 206 17 152 285 164 201 258 29 295 150 13 205 198 258 147 255 117 64 92 208 205 278 250 24 289 196 42 278 16 278 240 85 95 168 10 6 216 253 54 10 57 14 18 25 43 96 197 13 114 268 275 265 213 116 162 61 115 46 303 174 9 220 58 19 37 256 37 179 190 109 141 66 194 144 88 129 253 131 196 204 144 296 259 184 23 128 121 135 127 205 171 133 125 222 126 236 281 121 23 134 177 47 223 213 16 163 286 75 127 197 104 221 3 205 77 59 74 30 278 302 64 92 236 22 71 123 183 129 97 151 169 259 89 142 270 56 166 144 112 229 282 59 241 83 240 32 246 245 223 75 157 37 185 176 255 141 258 181 123 201 59 12 55 278 126 210 221 6 74 296 279 260 95 3 56 165 36 242 250 44 262 166 58 161 8 35 55 50 191 208 236 134 143 21 257 6 183 277 14 152 281 289 177 111 191 29 260 28 284 257 86 214 249 87 45 300 4 121 117 97 287 122 118 151 16 206 232 243 184 208 136 146 115 87 93 197 291 149 216 160 233 281 120 5 136 76
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
