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 17 17 17 18 18 18 19 19 19 18 18 18 17 17 17 20 20 20 21 21 21 22 22 22 23 23 23 22 22 22 21 21 21 24 24 24 25 25 25 26 26 26 27 27 27 26 26 26 25 25 25 28 28 28 29 29 29 30 30 30 31 31 31 30 30 30 29 29 29 32 32 32 33 33 33 34 34 34 35 35 35 34 34 34 33 33 33 36 36 36 37 37 37 38 38 38 39 39 39 38 38 38 37 37 37 40 40 40 41 41 41 42 42 42 43 43 43 42 42 42 41 41 41 44 44 44 45 45 45 46 46 46 47 47 47 46 46 46 45 45 45 48 48 48 46 46 46 47 47 47 49 49 49 48 48 48 47 47 47 50 50 50 48 48 48 49 49 49 47 47 47 45 45 45 51 51 51 52 52 52 51 51 51 45 45 45 50 50 50 51 51 51 52 52 52 48 48 48 50 50 50 52 52 52 53 53 53 48 48 48 52 52 52 54 54 54 55 55 55 56 56 56 57 57 57 56 56 56 55 55 55 58 58 58 59 59 59 60 60 60 59 59 59 58 58 58 61 61 61 58 58 58 62 62 62 61 61 61 63 63 63 61 61 61 62 62 62 64 64 64 61 61 61 63 63 63 65 65 65 64 64 64 63 63 63 66 66 66 67 67 67 68 68 68 69 69 69 68 68 68 67 67 67 70 70 70 71 71 71 72 72 72 73 73 73 72 72 72 71 71 71 74 74 74 75 75 75 76 76 76 77 77 77 76 76 76 75 75 75 78 78 78 76 76 76 77 77 77 79 79 79 78 78 78 77 77 77 80 80 80 78 78 78 79 79 79 77 77 77 75 75 75 81 81 81 82 82 82 81 81 81 75 75 75 80 80 80 81 81 81 82 82 82 78 78 78 80 80 80 82 82 82 83 83 83 78 78 78 82 82 82 84 84 84 78 78 78 83 83 83 83 83 83 82 82 82 85 85 85 86 86 86 87 87 87 88 88 88 89 89 89 88 88 88 87 87 87 90 90 90 91 91 91 92 92 92 93 93 93 92 92 92 91 91 91 94 94 94 95 95 95 96 96 96 96 96 96 95 95 95 97 97 97 95 95 95 98 98 98 97 97 97 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 106 106 106 107 107 107 108 108 108 107 107 107 106 106 106 109 109 109 110 110 110 111 111 111 112 112 112 111 111 111 110 110 110 113 113 113 114 114 114 115 115 115 116 116 116 115 115 115 114 114 114 117 117 117 115 115 115 116 116 116 118 118 118 119 119 119 120 120 120 121 121 121 120 120 120 119 119 119 122 122 122 123 123 123 124 124 124 125 125 125 124 124 124 123 123 123 126 126 126 127 127 127 128 128 128 129 129 129 128 128 128 127 127 127 130 130 130 131 131 131 132 132 132 133 133 133 132 132 132 131 131 131 134 134 134 135 135 135 136 136 136 137 137 137 136 136 136 135 135 135 138 138 138 139 139 139 140 140 140 141 141 141 140 140 140 139 139 139 142 142 142 143 143 143 144 144 144 145 145 145 144 144 144 143 143 143 146 146 146 147 147 147 148 148 148 149 149 149 148 148 148 147 147 147 150 150 150 151 151 151 152 152 152 153 153 153 152 152 152 151 151 151 154 154 154 155 155 155 156 156 156 157 157 157 156 156 156 155 155 155 158 158 158 159 159 159 160 160 160 161 161 161 160 160 160 159 159 159 162 162 162 161 161 161 159 159 159 163 163 163 161 161 161 162 162 162 164 164 164 165 165 165 166 166 166 167 167 167 166 166 166 165 165 165 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 175 175 175 173 173 173 177 177 177 175 175 175 176 176 176 178 178 178 179 179 179 180 180 180 181 181 181 180 180 180 179 179 179 182 182 182 180 180 180 181 181 181 183 183 183 184 184 184 185 185 185 186 186 186 185 185 185 184 184 184 187 187 187 188 188 188 189 189 189 190 190 190 189 189 189 188 188 188 191 191 191 192 192 192 193 193 193 194 194 194 193 193 193 192 192 192 195 195 195 196 196 196 197 197 197 198 198 198 197 197 197 196 196 196 199 199 199 197 197 197 198 198 198 200 200 200 198 198 198 196 196 196 201 201 201 202 202 202 203 203 203 204 204 204 203 203 203 202 202 202 205 205 205 206 206 206 207 207 207 207 207 207 206 206 206 208 208 208 209 209 209 208 208 208 206 206 206 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 256 256 256 257 257 257 259 259 259 258 258 258 257 257 257 260 260 260 258 258 258 259 259 259 257 257 257 255 255 255 261 261 261 262 262 262 261 261 261 255 255 255 260 260 260 261 261 261 262 262 262 258 258 258 260 260 260 262 262 262 263 263 263 258 258 258 262 262 262 264 264 264 265 265 265 266 266 266 267 267 267 266 266 266 265 265 265 268 268 268 267 267 267 265 265 265 269 269 269 267 267 267 268 268 268 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 275 275 275 274 274 274 277 277 277 278 278 278 279 279 279 280 280 280 281 281 281 280 280 280 279 279 279 282 282 282 280 280 280 281 281 281 281 281 281 279 279 279 283 283 283 284 284 284 285 285 285 286 286 286 285 285 285 284 284 284 287 287 287 287 287 287 284 284 284 288 288 288 289 289 289 285 285 285 287 287 287 290 290 290 291 291 291 292 292 292 291 291 291 290 290 290 293 293 293 294 294 294 295 295 295 296 296 296 295 295 295 294 294 294 297 297 297 298 298 298 299 299 299 300 300 300 301 301 301 300 300 300 299 299 299 302 302 302 303 303 303 304 304 304 303 303 303 302 302 302 305 305 305 306 306 306 307 307 307 308 308 308 307 307 307 306 306 306 309 309 309 310 310 310 311 311 311 312 312 312 313 313 313 312 312 312 311 311 311 314 314 314 313 313 313 311 311 311 315 315 315 313 313 313 314 314 314 316 316 316 315 315 315 310 310 310 313 313 313 315 315 315 316 316 316 317 317 317 310 310 310 315 315 315 311 311 311 310 310 310 317 317 317 318 318 318 319 319 319 320 320 320 319 319 319 318 318 318 321 321 321 319 319 319 321 321 321 322 322 322 322 322 322 321 321 321 323 323 323 320 320 320 323 323 323 324 324 324 324 324 324 323 323 323 321 321 321 323 323 323 320 320 320 325 325 325 325 325 325 320 320 320 319 319 319 326 326 326 327 327 327 328 328 328 327 327 327 326 326 326 329 329 329 330 330 330 331 331 331 332 332 332 333 333 333 332 332 332 331 331 331 334 334 334 335 335 335 336 336 336 335 335 335 334 334 334 337 337 337 338 338 338 339 339 339 340 340 340 341 341 341 340 340 340 339 339 339 342 342 342 343 343 343 344 344 344 343 343 343 342 342 342 345 345 345 346 346 346 347 347 347 348 348 348 349 349 349 348 348 348 347 347 347 350 350 350 351 351 351 352 352 352 351 351 351 350 350 350 353 353 353 354 354 354 355 355 355 356 356 356 355 355 355 354 354 354 357 357 357 358 358 358 359 359 359 360 360 360 361 361 361 360 360 360 359 359 359 362 362 362 363 363 363 364 364 364 363 363 363 362 362 362 365 365 365 366 366 366 367 367 367 368 368 368 367 367 367 366 366 366 369 369 369 370 370 370 371 371 371 372 372 372 373 373 373 372 372 372 371 371 371 374 374 374 375 375 375 376 376 376 375 375 375 374 374 374 377 377 377 378 378 378 379 379 379 380 380 380 379 379 379 378 378 378 381 381 381 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 387 387 387 386 386 386 389 389 389 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 395 395 395 394 394 394 397 397 397 398 398 398 399 399 399 400 400 400 399 399 399 398 398 398 401 401 401 402 402 402 403 403 403 404 404 404 405 405 405 404 404 404 403 403 403 406 406 406 407 407 407 408 408 408 407 407 407 406 406 406 409 409 409 410 410 410 411 411 411 412 412 412 413 413 413 412 412 412 411 411 411 414 414 414 412 412 412 413 413 413 415 415 415 416 416 416 417 417 417 416 416 416 415 415 415 418 418 418 418 418 418 415 415 415 419 419 419 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 425 425 425 424 424 424 427 427 427 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 433 433 433 432 432 432 435 435 435 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 441 441 441 440 440 440 443 443 443 444 444 444 445 445 445 446 446 446 445 445 445 444 444 444 447 447 447 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 453 453 453 452 452 452 455 455 455 456 456 456 457 457 457 458 458 458 459 459 459 458 458 458 457 457 457 460 460 460 461 461 461 462 462 462 461 461 461 460 460 460 463 463 463 464 464 464 465 465 465 466 466 466 467 467 467 466 466 466 465 465 465 468 468 468 469 469 469 470 470 470 469 469 469 468 468 468 471 471 471 472 472 472 473 473 473 474 474 474 475 475 475 474 474 474 473 473 473 476 476 476 477 477 477 478 478 478 477 477 477 476 476 476 479 479 479 480 480 480 481 481 481 482 482 482 483 483 483 482 482 482 481 481 481 484 484 484 482 482 482 483 483 483 485 485 485 486 486 486 487 487 487 486 486 486 485 485 485 488 488 488 488 488 488 485 485 485 489 489 489 490 490 490 491 491 491 492 492 492 491 491 491 490 490 490 493 493 493 494 494 494 493 493 493 490 490 490 495 495 495 491 491 491 493 493 493 496 496 496 497 497 497 498 498 498 499 499 499 498 498 498 497 497 497 498 498 498 499 499 499 500 500 500 499 499 499 497 497 497 501 501 501 502 502 502 503 503 503 504 504 504 505 505 505 504 504 504 503 503 503 506 506 506 507 507 507 508 508 508 507 507 507 506 506 506 509 509 509 510 510 510 511 511 511 512 512 512 513 513 513 512 512 512 511 511 511 514 514 514 515 515 515 516 516 516 515 515 515 514 514 514 517 517 517 518 518 518 519 519 519 520 520 520 521 521 521 520 520 520 519 519 519 522 522 522 523 523 523 524 524 524 523 523 523 522 522 522 525 525 525 526 526 526 527 527 527 528 528 528 529 529 529 528 528 528 527 527 527 530 530 530 531 531 531 532 532 532 531 531 531 530 530 530 533 533 533 534 534 534 535 535 535 536 536 536 535 535 535 534 534 534 537 537 537 538 538 538 539 539 539 540 540 540 539 539 539 538 538 538 541 541 541 541 541 541 538 538 538 542 542 542 541 541 541 542 542 542 543 543 543 543 543 543 542 542 542 544 544 544 545 545 545 539 539 539 541 541 541 539 539 539 545 545 545 546 546 546 546 546 546 545 545 545 544 544 544 546 546 546 544 544 544 542 542 542 546 546 546 542 542 542 547 547 547 548 548 548 549 549 549 550 550 550 549 549 549 548 548 548 551 551 551 552 552 552 553 553 553 554 554 554 555 555 555 554 554 554 553 553 553 555 555 555 556 556 556 554 554 554 556 556 556 555 555 555 557 557 557 557 557 557 555 555 555 558 558 558 557 557 557 558 558 558 559 559 559 560 560 560 561 561 561 562 562 562 561 561 561 560 560 560 563 563 563 564 564 564 565 565 565 566 566 566 565 565 565 564 564 564 567 567 567 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 573 573 573 572 572 572 575 575 575 576 576 576 577 577 577 578 578 578 577 577 577 576 576 576 579 579 579 579 579 579 576 576 576 580 580 580 579 579 579 580 580 580 581 581 581 581 581 581 580 580 580 582 582 582 583 583 583 577 577 577 579 579 579 577 577 577 583 583 583 584 584 584 584 584 584 583 583 583 582 582 582 584 584 584 582 582 582 580 580 580 584 584 584 580 580 580 585 585 585 585 585 585 580 580 580 586 586 586 587 587 587 584 584 584 585 585 585 588 588 588 589 589 589 590 590 590 591 591 591 590 590 590 589 589 589 592 592 592 593 593 593 594 594 594 593 593 593 592 592 592 595 595 595 596 596 596 597 597 597 598 598 598 597 597 597 596 596 596 599 599 599 600 600 600 601 601 601 602 602 602 601 601 601 600 600 600 603 603 603 604 604 604 605 605 605 606 606 606 607 607 607 605 605 605 604 604 604 607 607 607 608 608 608 605 605 605 609 609 609 608 608 608 607 607 607 608 608 608 609 609 609 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 623 623 623 624 624 624 625 625 625 624 624 624 623 623 623 626 626 626 626 626 626 623 623 623 627 627 627 628 628 628 629 629 629 630 630 630 629 629 629 628 628 628 631 631 631 632 632 632 633 633 633 634 634 634 633 633 633 632 632 632 635 635 635 636 636 636 637 637 637 638 638 638 637 637 637 636 636 636 639 639 639 640 640 640 641 641 641 642 642 642 641 641 641 640 640 640 643 643 643 644 644 644 645 645 645 646 646 646 645 645 645 644 644 644 647 647 647 648 648 648 649 649 649 650 650 650 649 649 649 648 648 648 651 651 651 652 652 652 653 653 653 654 654 654 653 653 653 652 652 652 655 655 655 656 656 656 657 657 657 658 658 658 657 657 657 656 656 656 659 659 659 660 660 660 661 661 661 662 662 662 661 661 661 660 660 660 663 663 663 664 664 664 665 665 665 666 666 666 665 665 665 664 664 664 667 667 667 668 668 668 669 669 669 670 670 670 669 669 669 668 668 668 671 671 671 669 669 669 671 671 671 672 672 672 672 672 672 671 671 671 673 673 673 674 674 674 675 675 675 676 676 676 675 675 675 674 674 674 677 677 677 678 678 678 679 679 679 680 680 680 679 679 679 678 678 678 681 681 681 682 682 682 683 683 683 684 684 684 683 683 683 682 682 682 685 685 685 683 683 683 685 685 685 686 686 686 686 686 686 685 685 685 687 687 687 688 688 688 689 689 689 690 690 690 689 689 689 688 688 688 691 691 691 691 691 691 688 688 688 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 708 708 708 705 705 705 709 709 709 706 706 706 708 708 708 710 710 710 711 711 711 712 712 712 713 713 713 712 712 712 711 711 711 714 714 714 715 715 715 716 716 716 717 717 717 718 718 718 716 716 716 715 715 715 716 716 716 718 718 718 719 719 719 720 720 720 721 721 721 722 722 722 721 721 721 720 720 720 723 723 723 724 724 724 725 725 725 726 726 726 725 725 725 724 724 724 727 727 727 728 728 728 729 729 729 730 730 730 729 729 729 728 728 728 731 731 731 732 732 732 733 733 733 734 734 734 733 733 733 732 732 732 735 735 735 736 736 736 737 737 737 738 738 738 737 737 737 736 736 736 739 739 739 740 740 740 741 741 741 742 742 742 741 741 741 740 740 740 743 743 743 744 744 744 745 745 745 746 746 746 745 745 745 744 744 744 747 747 747 748 748 748 749 749 749 750 750 750 749 749 749 748 748 748 751 751 751 752 752 752 753 753 753 754 754 754 753 753 753 752 752 752 755 755 755 756 756 756 757 757 757 758 758 758 757 757 757 756 756 756 759 759 759 760 760 760 761 761 761 762 762 762 761 761 761 760 760 760 763 763 763 764 764 764 765 765 765 766 766 766 765 765 765 764 764 764 767 767 767 767 767 767 764 764 764 768 768 768 767 767 767 768 768 768 769 769 769 769 769 769 768 768 768 770 770 770 771 771 771 765 765 765 767 767 767 765 765 765 771 771 771 772 772 772 772 772 772 771 771 771 770 770 770 772 772 772 770 770 770 768 768 768 772 772 772 768 768 768 773 773 773 774 774 774 775 775 775 776 776 776 775 775 775 774 774 774 777 777 777 775 775 775 777 777 777 778 778 778 778 778 778 777 777 777 779 779 779 780 780 780 781 781 781 782 782 782 781 781 781 780 780 780 783 783 783