0 0 0 1 1 1 2 2 2 3 3 3 2 2 2 1 1 1 4 4 4 5 5 5 6 6 6 7 7 7 6 6 6 5 5 5 8 8 8 9 9 9 10 10 10 11 11 11 10 10 10 9 9 9 12 12 12 13 13 13 14 14 14 15 15 15 14 14 14 13 13 13 16 16 16 15 15 15 13 13 13 17 17 17 18 18 18 19 19 19 20 20 20 19 19 19 18 18 18 21 21 21 22 22 22 23 23 23 24 24 24 23 23 23 22 22 22 25 25 25 26 26 26 27 27 27 28 28 28 27 27 27 26 26 26 29 29 29 30 30 30 31 31 31 32 32 32 31 31 31 30 30 30 33 33 33 34 34 34 35 35 35 36 36 36 35 35 35 34 34 34 37 37 37 38 38 38 39 39 39 40 40 40 39 39 39 38 38 38 41 41 41 42 42 42 43 43 43 44 44 44 43 43 43 42 42 42 45 45 45 46 46 46 47 47 47 48 48 48 47 47 47 46 46 46 49 49 49 48 48 48 46 46 46 50 50 50 49 49 49 46 46 46 51 51 51 52 52 52 53 53 53 54 54 54 53 53 53 52 52 52 55 55 55 56 56 56 57 57 57 58 58 58 57 57 57 56 56 56 59 59 59 60 60 60 61 61 61 62 62 62 61 61 61 60 60 60 63 63 63 64 64 64 65 65 65 66 66 66 65 65 65 64 64 64 64 64 64 67 67 67 66 66 66 68 68 68 66 66 66 67 67 67 69 69 69 70 70 70 71 71 71 72 72 72 71 71 71 70 70 70 73 73 73 74 74 74 75 75 75 76 76 76 75 75 75 74 74 74 77 77 77 78 78 78 79 79 79 80 80 80 79 79 79 78 78 78 81 81 81 82 82 82 83 83 83 84 84 84 83 83 83 82 82 82 85 85 85 86 86 86 87 87 87 88 88 88 87 87 87 86 86 86 89 89 89 90 90 90 91 91 91 92 92 92 91 91 91 90 90 90 93 93 93 94 94 94 95 95 95 96 96 96 95 95 95 94 94 94 97 97 97 98 98 98 99 99 99 100 100 100 99 99 99 98 98 98 101 101 101 102 102 102 103 103 103 104 104 104 103 103 103 102 102 102 105 105 105 103 103 103 104 104 104 106 106 106 103 103 103 105 105 105 107 107 107 103 103 103 106 106 106 108 108 108 103 103 103 107 107 107 109 109 109 103 103 103 108 108 108 110 110 110 103 103 103 109 109 109 111 111 111 103 103 103 110 110 110 112 112 112 111 111 111 110 110 110 113 113 113 112 112 112 110 110 110 114 114 114 113 113 113 110 110 110 115 115 115 113 113 113 114 114 114 116 116 116 115 115 115 114 114 114 117 117 117 116 116 116 114 114 114 118 118 118 116 116 116 117 117 117 119 119 119 118 118 118 117 117 117 120 120 120 119 119 119 117 117 117 121 121 121 120 120 120 117 117 117 122 122 122 120 120 120 121 121 121 123 123 123 122 122 122 121 121 121 124 124 124 122 122 122 123 123 123 125 125 125 124 124 124 123 123 123 126 126 126 124 124 124 125 125 125 127 127 127 126 126 126 125 125 125 128 128 128 126 126 126 127 127 127 129 129 129 128 128 128 127 127 127 130 130 130 128 128 128 129 129 129 131 131 131 130 130 130 129 129 129 132 132 132 130 130 130 131 131 131 133 133 133 132 132 132 131 131 131 134 134 134 132 132 132 133 133 133 135 135 135 134 134 134 133 133 133 136 136 136 134 134 134 135 135 135 137 137 137 136 136 136 135 135 135 138 138 138 136 136 136 137 137 137 139 139 139 136 136 136 138 138 138 140 140 140 136 136 136 139 139 139 141 141 141 140 140 140 139 139 139 142 142 142 140 140 140 141 141 141 143 143 143 142 142 142 141 141 141 144 144 144 142 142 142 143 143 143 145 145 145 142 142 142 144 144 144 146 146 146 142 142 142 145 145 145 147 147 147 146 146 146 145 145 145 148 148 148 146 146 146 147 147 147 149 149 149 146 146 146 148 148 148 150 150 150 149 149 149 148 148 148 151 151 151 150 150 150 148 148 148 152 152 152 151 151 151 148 148 148 153 153 153 152 152 152 148 148 148 154 154 154 153 153 153 148 148 148 155 155 155 156 156 156 157 157 157 158 158 158 157 157 157 156 156 156 159 159 159 160 160 160 161 161 161 162 162 162 161 161 161 160 160 160 163 163 163 164 164 164 165 165 165 166 166 166 165 165 165 164 164 164 167 167 167 166 166 166 164 164 164 168 168 168 169 169 169 170 170 170 171 171 171 170 170 170 169 169 169 172 172 172 173 173 173 174 174 174 175 175 175 174 174 174 173 173 173 176 176 176 177 177 177 178 178 178 179 179 179 178 178 178 177 177 177 180 180 180 181 181 181 182 182 182 183 183 183 182 182 182 181 181 181 184 184 184 185 185 185 186 186 186 187 187 187 186 186 186 185 185 185 188 188 188 189 189 189 190 190 190 191 191 191 190 190 190 189 189 189 192 192 192 193 193 193 194 194 194 195 195 195 194 194 194 193 193 193 196 196 196 197 197 197 198 198 198 199 199 199 198 198 198 197 197 197 200 200 200 201 201 201 202 202 202 203 203 203 202 202 202 201 201 201 204 204 204 205 205 205 206 206 206 207 207 207 206 206 206 205 205 205 208 208 208 207 207 207 205 205 205 209 209 209 207 207 207 208 208 208 210 210 210 211 211 211 212 212 212 213 213 213 212 212 212 211 211 211 214 214 214 215 215 215 216 216 216 217 217 217 216 216 216 215 215 215 218 218 218 219 219 219 220 220 220 221 221 221 220 220 220 219 219 219 222 222 222 223 223 223 224 224 224 225 225 225 224 224 224 223 223 223 226 226 226 227 227 227 228 228 228 229 229 229 228 228 228 227 227 227 230 230 230 231 231 231 232 232 232 233 233 233 232 232 232 231 231 231 234 234 234 235 235 235 236 236 236 237 237 237 236 236 236 235 235 235 238 238 238 239 239 239 240 240 240 241 241 241 240 240 240 239 239 239 242 242 242 243 243 243 244 244 244 245 245 245 244 244 244 243 243 243 246 246 246 247 247 247 248 248 248 249 249 249 248 248 248 247 247 247 250 250 250 251 251 251 252 252 252 253 253 253 252 252 252 251 251 251 254 254 254 255 255 255 256 256 256 257 257 257 256 256 256 255 255 255 258 258 258 259 259 259 260 260 260 261 261 261 260 260 260 259 259 259 262 262 262 263 263 263 264 264 264 265 265 265 264 264 264 263 263 263 266 266 266 267 267 267 268 268 268 269 269 269 268 268 268 267 267 267 270 270 270 271 271 271 272 272 272 273 273 273 272 272 272 271 271 271 274 274 274 275 275 275 276 276 276 277 277 277 276 276 276 275 275 275 278 278 278 277 277 277 275 275 275 279 279 279 277 277 277 278 278 278 280 280 280 281 281 281 282 282 282 283 283 283 282 282 282 281 281 281 284 284 284 285 285 285 286 286 286 287 287 287 286 286 286 285 285 285 288 288 288 289 289 289 290 290 290 291 291 291 290 290 290 289 289 289 292 292 292 293 293 293 294 294 294 295 295 295 294 294 294 293 293 293 296 296 296 297 297 297 298 298 298 299 299 299 298 298 298 297 297 297 300 300 300 301 301 301 302 302 302 303 303 303 302 302 302 301 301 301 304 304 304 305 305 305 306 306 306 307 307 307 306 306 306 305 305 305 308 308 308 309 309 309 310 310 310 311 311 311 310 310 310 309 309 309 312 312 312 313 313 313 314 314 314 315 315 315 314 314 314 313 313 313 316 316 316 317 317 317 318 318 318 319 319 319 318 318 318 317 317 317 320 320 320 321 321 321 322 322 322 323 323 323 322 322 322 321 321 321 324 324 324 325 325 325 326 326 326 327 327 327 326 326 326 325 325 325 328 328 328 329 329 329 330 330 330 331 331 331 330 330 330 329 329 329 332 332 332 333 333 333 334 334 334 335 335 335 334 334 334 333 333 333 336 336 336 337 337 337 338 338 338 339 339 339 338 338 338 337 337 337 340 340 340 341 341 341 342 342 342 343 343 343 342 342 342 341 341 341 344 344 344 345 345 345 346 346 346 347 347 347 346 346 346 345 345 345 348 348 348 349 349 349 350 350 350 351 351 351 350 350 350 349 349 349 352 352 352 353 353 353 354 354 354 355 355 355 354 354 354 353 353 353 356 356 356 357 357 357 358 358 358 359 359 359 358 358 358 357 357 357 360 360 360 361 361 361 362 362 362 363 363 363 362 362 362 361 361 361 364 364 364 365 365 365 366 366 366 367 367 367 366 366 366 365 365 365 368 368 368 369 369 369 370 370 370 371 371 371 370 370 370 369 369 369 372 372 372 373 373 373 374 374 374 375 375 375 374 374 374 373 373 373 376 376 376 374 374 374 375 375 375 377 377 377 374 374 374 376 376 376 378 378 378 379 379 379 380 380 380 381 381 381 380 380 380 379 379 379 382 382 382 383 383 383 384 384 384 385 385 385 384 384 384 383 383 383 386 386 386 387 387 387 388 388 388 389 389 389 388 388 388 387 387 387 390 390 390 391 391 391 392 392 392 393 393 393 392 392 392 391 391 391 394 394 394 395 395 395 396 396 396 397 397 397 396 396 396 395 395 395 398 398 398 399 399 399 400 400 400 401 401 401 400 400 400 399 399 399 399 399 399 398 398 398 402 402 402 403 403 403 402 402 402 398 398 398 404 404 404 405 405 405 406 406 406 407 407 407 406 406 406 405 405 405 408 408 408 409 409 409 410 410 410 411 411 411 410 410 410 409 409 409 412 412 412 413 413 413 414 414 414 415 415 415 414 414 414 413 413 413 416 416 416 417 417 417 418 418 418 419 419 419 418 418 418 417 417 417 420 420 420 421 421 421 422 422 422 423 423 423 422 422 422 421 421 421 424 424 424 425 425 425 426 426 426 427 427 427 426 426 426 425 425 425 428 428 428 429 429 429 430 430 430 431 431 431 430 430 430 429 429 429 432 432 432 433 433 433 434 434 434 435 435 435 434 434 434 433 433 433 436 436 436 437 437 437 438 438 438 439 439 439 438 438 438 437 437 437 440 440 440 441 441 441 442 442 442 443 443 443 442 442 442 441 441 441 444 444 444 445 445 445 446 446 446 447 447 447 446 446 446 445 445 445 448 448 448 449 449 449 450 450 450 451 451 451 450 450 450 449 449 449 452 452 452 453 453 453 454 454 454 455 455 455 454 454 454 453 453 453 456 456 456 454 454 454 455 455 455 457 457 457 458 458 458 459 459 459 460 460 460 459 459 459 458 458 458 461 461 461 462 462 462 463 463 463 464 464 464 463 463 463 462 462 462 465 465 465 466 466 466 467 467 467 468 468 468 467 467 467 466 466 466 469 469 469 470 470 470 471 471 471 472 472 472 471 471 471 470 470 470 473 473 473 474 474 474 475 475 475 476 476 476 475 475 475 474 474 474 477 477 477 478 478 478 479 479 479 480 480 480 479 479 479 478 478 478 481 481 481 482 482 482 483 483 483 484 484 484 483 483 483 482 482 482 485 485 485 486 486 486 487 487 487 488 488 488 487 487 487 486 486 486 489 489 489 490 490 490 491 491 491 492 492 492 491 491 491 490 490 490 493 493 493 491 491 491 492 492 492 494 494 494 493 493 493 492 492 492 495 495 495 496 496 496 497 497 497 498 498 498 497 497 497 496 496 496 499 499 499 500 500 500 501 501 501 502 502 502 501 501 501 500 500 500 503 503 503 504 504 504 505 505 505 506 506 506 505 505 505 504 504 504 507 507 507 508 508 508 509 509 509 510 510 510 509 509 509 508 508 508 511 511 511 512 512 512 513 513 513 514 514 514 513 513 513 512 512 512 515 515 515 516 516 516 517 517 517 518 518 518 517 517 517 516 516 516 519 519 519 520 520 520 521 521 521 522 522 522 521 521 521 520 520 520 523 523 523 524 524 524 525 525 525 526 526 526 525 525 525 524 524 524 527 527 527 528 528 528 529 529 529 530 530 530 529 529 529 528 528 528 531 531 531 532 532 532 533 533 533 534 534 534 533 533 533 532 532 532 535 535 535 536 536 536 537 537 537 538 538 538 537 537 537 536 536 536 539 539 539 540 540 540 541 541 541 542 542 542 541 541 541 540 540 540 543 543 543 544 544 544 545 545 545 546 546 546 545 545 545 544 544 544 547 547 547 545 545 545 546 546 546 548 548 548 549 549 549 550 550 550 551 551 551 550 550 550 549 549 549 552 552 552 553 553 553 554 554 554 555 555 555 554 554 554 553 553 553 556 556 556 557 557 557 558 558 558 559 559 559 558 558 558 557 557 557 560 560 560 561 561 561 562 562 562 563 563 563 562 562 562 561 561 561 564 564 564 565 565 565 566 566 566 567 567 567 566 566 566 565 565 565 568 568 568 569 569 569 570 570 570 571 571 571 570 570 570 569 569 569 572 572 572 573 573 573 574 574 574 575 575 575 574 574 574 573 573 573 576 576 576 577 577 577 578 578 578 579 579 579 578 578 578 577 577 577 580 580 580 581 581 581 582 582 582 583 583 583 582 582 582 581 581 581 584 584 584 585 585 585 586 586 586 587 587 587 586 586 586 585 585 585 588 588 588 586 586 586 587 587 587 589 589 589 588 588 588 587 587 587 590 590 590 591 591 591 592 592 592 593 593 593 592 592 592 591 591 591 594 594 594 595 595 595 596 596 596 597 597 597 596 596 596 595 595 595 598 598 598 599 599 599 600 600 600 601 601 601 600 600 600 599 599 599 602 602 602 603 603 603 604 604 604 605 605 605 604 604 604 603 603 603 606 606 606 607 607 607 608 608 608 609 609 609 608 608 608 607 607 607 610 610 610 611 611 611 612 612 612 613 613 613 612 612 612 611 611 611 614 614 614 615 615 615 616 616 616 617 617 617 616 616 616 615 615 615 618 618 618 619 619 619 620 620 620 621 621 621 620 620 620 619 619 619 622 622 622 621 621 621 619 619 619 623 623 623 622 622 622 619 619 619 624 624 624 623 623 623 619 619 619 625 625 625 624 624 624 619 619 619 626 626 626 625 625 625 619 619 619 627 627 627 626 626 626 619 619 619 628 628 628 627 627 627 619 619 619 629 629 629 627 627 627 628 628 628 630 630 630 627 627 627 629 629 629 631 631 631 627 627 627 630 630 630 632 632 632 631 631 631 630 630 630 633 633 633 631 631 631 632 632 632 634 634 634 631 631 631 633 633 633 635 635 635 634 634 634 633 633 633 636 636 636 634 634 634 635 635 635 637 637 637 634 634 634 636 636 636 638 638 638 634 634 634 637 637 637 639 639 639 638 638 638 637 637 637 640 640 640 638 638 638 639 639 639 641 641 641 640 640 640 639 639 639 642 642 642 640 640 640 641 641 641 643 643 643 642 642 642 641 641 641 644 644 644 642 642 642 643 643 643 645 645 645 644 644 644 643 643 643 646 646 646 644 644 644 645 645 645 647 647 647 646 646 646 645 645 645 648 648 648 646 646 646 647 647 647 649 649 649 648 648 648 647 647 647 650 650 650 648 648 648 649 649 649 651 651 651 650 650 650 649 649 649 652 652 652 650 650 650 651 651 651 653 653 653 652 652 652 651 651 651 654 654 654 652 652 652 653 653 653 655 655 655 654 654 654 653 653 653 656 656 656 655 655 655 653 653 653 657 657 657 656 656 656 653 653 653 658 658 658 656 656 656 657 657 657 659 659 659 658 658 658 657 657 657 660 660 660 658 658 658 659 659 659 661 661 661 660 660 660 659 659 659 662 662 662 661 661 661 659 659 659 663 663 663 662 662 662 659 659 659 664 664 664 662 662 662 663 663 663 665 665 665 664 664 664 663 663 663 666 666 666 665 665 665 663 663 663 667 667 667 665 665 665 666 666 666 668 668 668 665 665 665 667 667 667 669 669 669 665 665 665 668 668 668 670 670 670 665 665 665 669 669 669 671 671 671 665 665 665 670 670 670 672 672 672 673 673 673 674 674 674 675 675 675 674 674 674 673 673 673 676 676 676 677 677 677 678 678 678 679 679 679 678 678 678 677 677 677 680 680 680 681 681 681 682 682 682 683 683 683 682 682 682 681 681 681 684 684 684 685 685 685 686 686 686 687 687 687 686 686 686 685 685 685 688 688 688 689 689 689 690 690 690 691 691 691 690 690 690 689 689 689 692 692 692 693 693 693 694 694 694 695 695 695 694 694 694 693 693 693 696 696 696 697 697 697 698 698 698 699 699 699 698 698 698 697 697 697 700 700 700 701 701 701 702 702 702 703 703 703 702 702 702 701 701 701 704 704 704 705 705 705 706 706 706 707 707 707 706 706 706 705 705 705 708 708 708 709 709 709 710 710 710 711 711 711 710 710 710 709 709 709 712 712 712 713 713 713 714 714 714 715 715 715 714 714 714 713 713 713 716 716 716 717 717 717 718 718 718 719 719 719 718 718 718 717 717 717