0 0 1 1 2 2 2 2 3 3 0 0 4 4 5 5 6 6 1 1 7 7 2 2 8 8 9 9 5 5 10 10 6 6 9 9 3 3 11 11 0 0 12 12 13 13 14 14 9 9 6 6 5 5 15 15 16 16 17 17 12 12 17 17 16 16 18 18 16 16 19 19 20 20 18 18 19 19 11 11 6 6 10 10 1 1 0 0 10 10 4 4 11 11 3 3 21 21 22 22 8 8 10 10 0 0 11 11 11 11 4 4 6 6 23 23 13 13 21 21 24 24 14 14 23 23 9 9 22 22 10 10 9 9 8 8 22 22 22 22 21 21 13 13 14 14 24 24 25 25 12 12 22 22 13 13 14 14 13 13 23 23 25 25 15 15 17 17 25 25 17 17 14 14 12 12 14 14 17 17 18 18 12 12 16 16 19 19 16 16 15 15 26 26 27 27 28 28 28 28 29 29 26 26 30 30 31 31 32 32 27 27 33 33 28 28 34 34 35 35 31 31 36 36 32 32 35 35 29 29 37 37 26 26 38 38 39 39 40 40 35 35 32 32 31 31 41 41 42 42 43 43 38 38 43 43 42 42 44 44 42 42 45 45 46 46 44 44 45 45 37 37 32 32 36 36 27 27 26 26 36 36 30 30 37 37 29 29 47 47 48 48 34 34 36 36 26 26 37 37 37 37 30 30 32 32 49 49 39 39 47 47 50 50 40 40 49 49 35 35 48 48 36 36 35 35 34 34 48 48 48 48 47 47 39 39 40 40 50 50 51 51 38 38 48 48 39 39 40 40 39 39 49 49 51 51 41 41 43 43 51 51 43 43 40 40 38 38 40 40 43 43 44 44 38 38 42 42 45 45 42 42 41 41 52 52 53 53 54 54 55 55 56 56 57 57 58 58 59 59 56 56 60 60 61 61 55 55 59 59 58 58 62 62 63 63 61 61 60 60 64 64 62 62 65 65 66 66 67 67 68 68 65 65 69 69 70 70 71 71 72 72 73 73 74 74 75 75 76 76 77 77 78 78 79 79 80 80 81 81 72 72 82 82 80 80 77 77 83 83 84 84 85 85 85 85 86 86 78 78 73 73 87 87 88 88 89 89 75 75 74 74 90 90 88 88 91 91 92 92 93 93 94 94 52 52 89 89 53 53 52 52 54 54 95 95 66 66 92 92 94 94 63 63 96 96 67 67 70 70 95 95 54 54 97 97 90 90 91 91 89 89 74 74 53 53 82 82 81 81 80 80 70 70 69 69 95 95 70 70 64 64 65 65 64 64 59 59 62 62 59 59 57 57 56 56 57 57 60 60 55 55 60 60 96 96 63 63 96 96 68 68 67 67 68 68 92 92 66 66 92 92 98 98 93 93 98 98 90 90 97 97 98 98 97 97 93 93 88 88 87 87 91 91 88 88 71 71 73 73 71 71 80 80 72 72 77 77 79 79 82 82 78 78 99 99 79 79 86 86 85 85 84 84 99 99 78 78 86 86 84 84 83 83 76 76 74 74 76 76 83 83 100 100 101 101 102 102 103 103 104 104 105 105 106 106 107 107 108 108 109 109 110 110 111 111 112 112 113 113 114 114 115 115 116 116 117 117 118 118 119 119 120 120 121 121 122 122 123 123 123 123 124 124 121 121 125 125 122 122 126 126 122 122 125 125 123 123 127 127 128 128 126 126 125 125 126 126 128 128 129 129 128 128 127 127 124 124 117 117 116 116 121 121 124 124 116 116 118 118 115 115 119 119 115 115 117 117 119 119 109 109 111 111 120 120 111 111 118 118 120 120 114 114 113 113 110 110 114 114 110 110 109 109 112 112 104 104 103 103 112 112 103 103 113 113 105 105 107 107 106 106 104 104 107 107 105 105 100 100 108 108 101 101 106 106 108 108 100 100 130 130 131 131 132 132 133 133 134 134 135 135 136 136 137 137 138 138 139 139 140 140 141 141 142 142 143 143 144 144 145 145 146 146 147 147 148 148 149 149 150 150 151 151 152 152 153 153 153 153 154 154 151 151 155 155 152 152 156 156 152 152 155 155 153 153 157 157 158 158 156 156 155 155 156 156 158 158 159 159 158 158 157 157 154 154 147 147 146 146 151 151 154 154 146 146 148 148 145 145 149 149 145 145 147 147 149 149 139 139 141 141 150 150 141 141 148 148 150 150 144 144 143 143 140 140 144 144 140 140 139 139 142 142 134 134 133 133 142 142 133 133 143 143 135 135 137 137 136 136 134 134 137 137 135 135 130 130 138 138 131 131 136 136 138 138 130 130 160 160 161 161 162 162 163 163 164 164 165 165 165 165 164 164 166 166 167 167 163 163 168 168 163 163 167 167 164 164 168 168 169 169 170 170 170 170 167 167 168 168 171 171 172 172 173 173 170 170 169 169 174 174 175 175 176 176 177 177 178 178 179 179 180 180 181 181 182 182 183 183 184 184 185 185 186 186 179 179 186 186 185 185 187 187 184 184 186 186 178 178 180 180 183 183 179 179 185 185 180 180 183 183 182 182 178 178 175 175 181 181 176 176 182 182 181 181 175 175 177 177 160 160 162 162 176 176 160 160 177 177 161 161 171 171 173 173 161 161 173 173 162 162 169 169 172 172 174 174 174 174 172 172 171 171 188 188 189 189 190 190 191 191 192 192 193 193 194 194 195 195 196 196 197 197 198 198 192 192 198 198 197 197 196 196 199 199 200 200 201 201 202 202 191 191 203 203 204 204 205 205 206 206 199 199 206 206 205 205 207 207 205 205 204 204 208 208 188 188 209 209 209 209 207 207 208 208 210 210 190 190 189 189 211 211 190 190 210 210 189 189 212 212 210 210 204 204 208 208 207 207 188 188 190 190 209 209 190 190 211 211 209 209 211 211 207 207 209 209 199 199 201 201 206 206 211 211 205 205 207 207 200 200 203 203 201 201 211 211 199 199 205 205 213 213 200 200 199 199 202 202 192 192 191 191 200 200 202 202 203 203 200 200 213 213 202 202 197 197 192 192 213 213 202 202 213 213 192 192 193 193 192 192 198 198 196 196 197 197 194 194 213 213 194 194 197 197 214 214 215 215 216 216 217 217 218 218 219 219 220 220 221 221 222 222 223 223 224 224 218 218 224 224 223 223 222 222 225 225 226 226 227 227 228 228 217 217 229 229 230 230 231 231 232 232 225 225 232 232 231 231 233 233 231 231 230 230 234 234 214 214 235 235 235 235 233 233 234 234 236 236 216 216 215 215 237 237 216 216 236 236 215 215 238 238 236 236 230 230 234 234 233 233 214 214 216 216 235 235 216 216 237 237 235 235 237 237 233 233 235 235 225 225 227 227 232 232 237 237 231 231 233 233 226 226 229 229 227 227 237 237 225 225 231 231 239 239 226 226 225 225 228 228 218 218 217 217 226 226 228 228 229 229 226 226 239 239 228 228 223 223 218 218 239 239 228 228 239 239 218 218 219 219 218 218 224 224 222 222 223 223 220 220 239 239 220 220 223 223 240 240 241 241 242 242 243 243 244 244 245 245 241 241 240 240 246 246 247 247 248 248 242 242 248 248 249 249 250 250 251 251 250 250 249 249 252 252 246 246 253 253 254 254 255 255 256 256 253 253 257 257 258 258 259 259 260 260 261 261 245 245 262 262 243 243 263 263 264 264 265 265 266 266 267 267 268 268 269 269 270 270 271 271 264 264 272 272 273 273 269 269 274 274 272 272 275 275 276 276 277 277 270 270 275 275 278 278 279 279 280 280 281 281 265 265 282 282 281 281 283 283 284 284 259 259 280 280 279 279 261 261 284 284 283 283 254 254 273 273 272 272 274 274 262 262 285 285 243 243 286 286 255 255 251 251 244 244 266 266 245 245 266 266 244 244 267 267 258 258 257 257 285 285 258 258 285 285 262 262 258 258 252 252 253 253 252 252 241 241 246 246 241 241 247 247 242 242 247 247 249 249 248 248 249 249 286 286 251 251 286 286 256 256 255 255 256 256 284 284 254 254 284 284 260 260 259 259 260 260 280 280 261 261 281 281 282 282 279 279 281 281 263 263 265 265 263 263 272 272 264 264 269 269 271 271 274 274 270 270 287 287 271 271 278 278 275 275 277 277 287 287 270 270 278 278 277 277 276 276 268 268 266 266 268 268 276 276 288 288 289 289 290 290 291 291 289 289 288 288 292 292 290 290 289 289 290 290 292 292 293 293 294 294 295 295 293 293 293 293 292 292 294 294 295 295 296 296 297 297 296 296 295 295 294 294 298 298 297 297 299 299 296 296 299 299 297 297 300 300 301 301 302 302 298 298 299 299 300 300 300 300 302 302 298 298 301 301 303 303 302 302 304 304 291 291 288 288 305 305 306 306 304 304 291 291 304 304 306 306 305 305 307 307 308 308 308 308 306 306 305 305 309 309 307 307 310 310 307 307 309 309 308 308 311 311 312 312 310 310 309 309 310 310 312 312 311 311 313 313 314 314 314 314 312 312 311 311 315 315 313 313 316 316 313 313 315 315 314 314 315 315 316 316 317 317 318 318 319 319 320 320 321 321 319 319 318 318 322 322 320 320 319 319 320 320 322 322 323 323 324 324 325 325 323 323 323 323 322 322 324 324 325 325 326 326 327 327 326 326 325 325 324 324 328 328 327 327 329 329 326 326 329 329 327 327 330 330 331 331 332 332 328 328 329 329 330 330 330 330 332 332 328 328 331 331 333 333 332 332 334 334 321 321 318 318 335 335 336 336 334 334 321 321 334 334 336 336 335 335 337 337 338 338 338 338 336 336 335 335 339 339 337 337 340 340 337 337 339 339 338 338 341 341 342 342 340 340 339 339 340 340 342 342 341 341 343 343 344 344 344 344 342 342 341 341 345 345 343 343 346 346 343 343 345 345 344 344 345 345 346 346 347 347 348 348 349 349 350 350 351 351 352 352 353 353 354 354 355 355 349 349 349 349 348 348 354 354 354 354 356 356 355 355 356 356 357 357 358 358 358 358 355 355 356 356 359 359 360 360 361 361 358 358 357 357 362 362 363 363 351 351 353 353 364 364 352 352 365 365 366 366 367 367 368 368 369 369 370 370 371 371 372 372 373 373 374 374 374 374 373 373 367 367 372 372 374 374 375 375 368 368 371 371 366 366 373 373 368 368 367 367 369 369 363 363 370 370 371 371 370 370 366 366 352 352 364 364 353 353 351 351 363 363 369 369 364 364 365 365 361 361 360 360 359 359 362 362 361 361 365 365 359 359 362 362 357 357 360 360 376 376 377 377 378 378 379 379 380 380 381 381 382 382 383 383 384 384 385 385 386 386 387 387 379 379 388 388 389 389 390 390 391 391 392 392 391 391 390 390 387 387 393 393 394 394 392 392 390 390 392 392 394 394 395 395 394 394 393 393 386 386 391 391 387 387 385 385 396 396 386 386 389 389 388 388 396 396 396 396 385 385 389 389 382 382 381 381 380 380 388 388 379 379 381 381 380 380 383 383 382 382 383 383 397 397 384 384 377 377 376 376 397 397 384 384 397 397 376 376 398 398 399 399 400 400 401 401 402 402 403 403 404 404 405 405 406 406 407 407 408 408 409 409 401 401 410 410 411 411 412 412 413 413 414 414 413 413 412 412 409 409 415 415 416 416 414 414 412 412 414 414 416 416 417 417 416 416 415 415 408 408 413 413 409 409 407 407 418 418 408 408 411 411 410 410 418 418 418 418 407 407 411 411 404 404 403 403 402 402 410 410 401 401 403 403 402 402 405 405 404 404 405 405 419 419 406 406 399 399 398 398 419 419 406 406 419 419 398 398 420 420 421 421 422 422 423 423 424 424 425 425 426 426 427 427 428 428 429 429 430 430 431 431 432 432 433 433 434 434 433 433 432 432 428 428 435 435 436 436 434 434 432 432 434 434 436 436 437 437 436 436 435 435 427 427 433 433 428 428 430 430 427 427 426 426 429 429 431 431 438 438 427 427 430 430 429 429 438 438 431 431 439 439 439 439 421 421 420 420 420 420 438 438 439 439 440 440 441 441 422 422 422 422 421 421 440 440 442 442 443 443 444 444 425 425 424 424 442 442 445 445 446 446 447 447 443 443 448 448 444 444 448 448 449 449 444 444 447 447 450 450 451 451 452 452 453 453 454 454 424 424 443 443 442 442 452 452 446 446 445 445 440 440 424 424 441 441 424 424 423 423 441 441 454 454 453 453 441 441 422 422 441 441 453 453 445 445 453 453 452 452 451 451 445 445 447 447 455 455 456 456 457 457 458 458 459 459 460 460 461 461 462 462 463 463 462 462 464 464 465 465 466 466 467 467 463 463 461 461 463 463 467 467 466 466 468 468 467 467 468 468 469 469 470 470 469 469 468 468 466 466 471 471 470 470 472 472 469 469 472 472 470 470 464 464 462 462 461 461 471 471 472 472 473 473 465 465 464 464 474 474 475 475 474 474 455 455 474 474 475 475 465 465 456 456 455 455 476 476 475 475 455 455 457 457 477 477 478 478 479 479 480 480 476 476 478 478 481 481 482 482 483 483 481 481 477 477 479 479 484 484 460 460 485 485 479 479 482 482 481 481 486 486 487 487 459 459 479 479 478 478 476 476 487 487 486 486 488 488 489 489 488 488 456 456 456 456 476 476 489 489 476 476 480 480 489 489 456 456 488 488 486 486 458 458 486 486 459 459 484 484 458 458 460 460 490 490 491 491 492 492 493 493 494 494 495 495 496 496 497 497 498 498 499 499 500 500 501 501 500 500 499 499 493 493 502 502 503 503 504 504 505 505 491 491 490 490 506 506 507 507 508 508 490 490 509 509 508 508 506 506 510 510 511 511 511 511 507 507 506 506 508 508 507 507 490 490 509 509 490 490 492 492 501 501 512 512 513 513 500 500 493 493 495 495 503 503 496 496 514 514 504 504 503 503 514 514 496 496 498 498 514 514 498 498 497 497 515 515 512 512 502 502 504 504 513 513 512 512 504 504 515 515 497 497 516 516 513 513 499 499 501 501 505 505 495 495 494 494 494 494 517 517 491 491 491 491 505 505 494 494 518 518 519 519 517 517 517 517 519 519 491 491 520 520 521 521 518 518 518 518 517 517 520 520 522 522 520 520 523 523 520 520 522 522 521 521 522 522 523 523 524 524 525 525 526 526 527 527 528 528 529 529 530 530 529 529 527 527 526 526 531 531 532 532 533 533 528 528 530 530 532 532 534 534 535 535 536 536 527 527 537 537 525 525 538 538 539 539 540 540 540 540 535 535 538 538 540 540 541 541 542 542 541 541 540 540 539 539 543 543 542 542 541 541 544 544 538 538 535 535 544 544 535 535 545 545 546 546 533 533 547 547 526 526 530 530 529 529 533 533 546 546 531 531 548 548 546 546 547 547 549 549 548 548 550 550 547 547 550 550 548 548 532 532 531 531 528 528 536 536 525 525 537 537 534 534 536 536 551 551 536 536 537 537 551 551 545 545 534 534 552 552 535 535 534 534 545 545 534 534 553 553 552 552 552 552 553 553 554 554 553 553 555 555 556 556 556 556 554 554 553 553 557 557 555 555 558 558 555 555 557 557 556 556 557 557 558 558 559 559