1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116
|
#----------------------------------------------------------------------
# This file was generated by encode_bitmaps.py
#
from wx import ImageFromStream, BitmapFromImage, EmptyIcon
import cStringIO
def getAutoRefreshData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x08vID\
ATX\x85\xc5\x97[l\\\xd5\x15\x86\xff}9gf\xce\x8cg\x1c\xdb$.\x0e1\x01\xc7%\x0e\
\x14\xb5)!M\x9aV\t\x90\xa4\x10\x15D\x01qi+\ni\x08\xb4\x12U\x1fJ\x0b\xad\xe8K\
Q\x1f*\x1e(\x82\x8a\x12\xa0\x17z\xa1\x10\xa4\x16p\x1c\x14LD\xc8\rP#\x12;\xa5\
v\xe2\xc4\x97\xd8\x8e\x13\x8f\xe7\xe29\x97}Y}0cMlc\xfb\xadK\xda\xd293{\xaf\
\xff\xdb{\xaf\xb5f\r\xf0\x7f66\x9fI\xdf{kU\x8b\xe7zw2\x927\x19\xa6.UZWq&4\
\xe7\xcc\x97\xc4N(\x16\xbdo\xac\xfeW\xae\xa1\xb8\xef\x1fWvF\xb3\xf9\xda\xbek\
\xcd\xb7~\xb7y\xffk\xf3\x02\xd8\xbag\xed\n\xc7\xc6w\xd4\x9a\xfa+V\\\xbc*U\
\x9fY,RN\x15\x1c\xe9\xc2Z\x8dPG(\x04c8[\x1c4\'G:\xc7\x07\xf0\t\t#v\x04:z\xea\
\x85-\x07NO\xf5w_\xdb\x9a\x8d\x0c\xd4\xb6c\xd3\x81I\xdd\xcf\x04\xd8\xda\xb6\
\xe6\xde\x04\xab\xfa\xed\r\x97\xdc\x91\xbc\xb4v\x19\x03\x00K\x06\x96\x08D\
\x06\x06v\xd2\x01\x07\x07c\x02\xbe.\xa2k\xf8cu8\xbbG\x91\xd1/\x1b\xb7\xf4\
\xe8s\xeb?:\x07\x00\xf7\xb7\xad^\xeb\xf0\xd8ne#oN\x80m\xadko\xf5d\xf2Ow,\xff\
\x91\x97\x8ee&\x84a\x01"\xd0$\x88\x01\x11M\x00\xc1\x82`\xc1\xc0\xe1r\x17\x86\
\x0c>\xee?\xac>\xc8\xee\t\xc0\xa2\x07\x0c\xb1\xe3\x82\xc9\xf7nX|[\xaa\xb5\
\xef\xaf\xa8\x04\x90S\xc5\xbf\xb3\xf3\xbaZ.\xd5\x0b\xb7,\xdb\xee\xa5c\x19\
\x80\x08\x91\x0e\x90\x0f\xf2\x88\x8c\x0f\xce%\x92n\n)7\r\x0b\x0bk54)hK (\x94\
T\x08\xc6\x04\xae^\xb2\xdai\xackrvw\xbf\xf2|\x9e\xcez\x1b\x1an\xa3EU\r\xd36;\
\r Y\x15|\xff\xaa\xd4\xd7cu\xa9\x85\xe8\x19\xf9\x0f\x1d<\xbd\xd7\x8e\x8a^.\
\xc0\x18\x11a\xe2*\xc8\x12\xe3\xaa\xd1Y\x1e6/\xbc2\xb5\xa4\xe6r\x1e\x97.B\
\xe3C\x91\x8fRT\x80_,\xc0\x95\x1e\xbe\xd1|\xa7\x17(\x1f1\'\xc6\xac\xb5s\x030\
\xc4\xb6\xad\xa8_\x19\x7f\xe3\xe3\xbf\x99^\xdb\x01\x08-\xc0E\x18\xe8`\xc0U\
\xf6\xeeg\xb6\x1c:\x04\x00\xdb\xde^\x99\xe9\x8a\x8e\\\xdb7\xd0\xb9\x15}t\xd3\
\x15\xa95\xac\xb9~y\x82\x0b\x82\xafK0\xb0(\xa9\x1cB3\x8e\x8c[\x87\xa1\xf1\
\x1e,N5O\x03\xb8 \x06\xb6\xfds\xa5\xe7x\xd5#\xcb\x13\xd7\xb8\xc7J\x07Q\x8b\
\x06)!q\xd6\x9e\xccF\x94h\xda\xb1y\xf7\xe8L1\xf3\xe0\x1bW-0n\xe6A\xce\xe4\
\xcf\xbe\x98Y\x17o^t\xa5\xcc\x85\xe7Q\xd2c\x9f\xc6\x89\x01\x00,\xcd\\\x8d\
\x17;~M;6\x1f\xe0\xe5\xb5\xbc\xd2\x91M\xc6\x97\x12\xc8\xeb(\x1e\x16\x8d\xeer\
\x96\x89W\x8fr\xc9\x86\r\xa8\xe3\xb3\xc4\x01\xe0\xd9-G\xb3\xcfm\xdc\xf7DD\
\xd1\xe7\x8fd\xdf\xdd\xbd\xf3\x93\x17\x91\x925\xa8K4\x80\x88P\xbe:\xc198XX\
\xb9\xf6\x02\x00n\r\x0f\x8d\x0f\x8f\'\xce\xc7\xe2\xde;\xae\x9bxGG\xb6\x0b\
\x96\xa6\xe5\xf4L\xf6\xc2\xc6\xfdg\x088\xe8\xc2\x89\x84\x10(Dy\x18\xd8\xc9\
\x94\x9d"\x07`J\x0c(%\r\x17\x06unCk\xd2\xf1:9g9\xe5\xa5\xbd\xb3\xbe\x9cW\xc5\
\xdc\xd6\xbaz\xbb\x87\xba\x9f\xde\xb8\xec\x0e7\x1f\x8e\xc0W90\xd8IY\xce\xa6\
\xbb\xb9\x10@\xe4O\xc7\x90\x84\x1f\x94\xf6\x9e\xb1gO8P\xc5B\xe9|h\xa4-\xce%\
\xfeP\xeb\xba\x9b\xb9H<\xb9e\xd9\xdd\x89\x98\x13C\xdcI\xa26\xd10\x11d\x8cAp9\
q\x02t!\xc44\xa4{w\xad\xbb\xe4\xa5\xcd\xef\xf5\xcdg\xc7e\xdb\xda\xb6j\x03A\
\xec\x99\xef\xfcY+\xe1\xfdm_!N\xd2/\xbfs2Rsrfrd\x13b\xe1\x8b_\xdb72_\xe1\xdb\
_\xb9]d2CK\x9e\xdf\xf4^O\xf9\xb3iu\x00\x00\x1e\xb9\xf6\xa9\x04\x00X"\x00\x16\
\xca(XXpp\x0c\x15\xfa\xf0j\xf7\xd3\xf9\xc8F+\xe7\x12o\xefi\x8f\xaf_\xba>(\
\xbfgR}\xdf$\xb0\x9d\xa8\xd8\xf8\xf4\xb0\x04`\xad\xc5\xa9\\\x07N\xe5\x8e\xe2\
T\xae\x03\x03\xc5\xff\xa2\xa4r\x18\x0b\xce\xe1\xf5\x13\xbf\x1bgQ\xb8q\xc7\
\xe6\x83\xdd\xb3\x89\x13\x81-p\xc4\x92c\xc3\xed\xf5\x93\xbbe\xdc\x00\x13ElV\
\x80\xa9\x96t\x16@@\xe2\xef\xc7\x9f\xb1\n\xc1=\xe5j8\x9b\xfd\x12\x8f\xb3\xd3\
a\xd7:F\xee\x8a\xa3\xc3\xfb.ooo\x97\xc2qn\x9e\xf86>;\x00U<3p\xa4\xdd\x1a\xf8\
\xba\x04\x108\x88\xdf\xb5\xad}e\xdd\\\x00\xd5G\xc6\xd2%;\xb6\x86\x18ka\\\xac\
\x18m\xe8^\x0fKwKb\x10a\xbe0\x07\x80\xbd\xe0y\xb0x\x12\x8c\x11\xbe}\xd5\xc3\
\xb8&s\xdd\xad\\%N<\xd0\xba\xf6\xe1{\xdeZ\x95\xfe,\x00\xc3\x8a\x9b\\\xe6\xac\
\xe0\x8c\xb7\x94\x82\xdc\x97\xf7\xf5\xbe\xfarZ\\$8\xe7\x85g\xb7\x1c\xcd\x96\
\xe7\xcd\x18\x84\x04\x0b\xc6\x04\xea\xe2\xf5\x18\r\x86`H\xa3\xa8\xb2\x80\xca\
\xe2\xe2\xbaK\x9d\rU\xb79\xdd\xc3\xc7\x9f\xe8\r;~\xb5\xbd\xed\xab\xafE,\xfcc\
\xa8\xd9\x07/\xdfx8\xff\xc8\x87\xd7g\x1c\x95\xfe\xe1\xb8\xf2\x1fiL6\xe7\x0f\
\x9ci\xab?2\xfanC\x92US\xd2I:YC\x1fVj\xcd\x98\x86?\xfe\xd2\x93P6@!\xc8#\x19O\
!\x17\x9c\xc39\x7f\x10\xb9\xe8\x1c\x8c\xd5\x90\xc2AJV\x03\x00\xfa\xc7z\xcd`\
\xb1w<OC1)dLH\x0e0\x02,\xa3\xc8\x18$)cj\xe3\x8bd"\xee\xe2T\xbe\xab\x10\xa8\
\xe2C\xcfm:\xf4\xe7YO\x00\x00\x06\xc6z\xec\xceS\xbf\xe7\x97\xc9/\xf8k/\xbb>!\
\x84\x00\x07@l\xa2A\x195\x83\x90L\xa0&U-\x16U]\x946\xb0(\x85\xe3\x08\x95\x0f\
M\n\x82\t&\\\x0ec\xb54\xd0\xc8\x95\xf2\x88\x94_\xcc6\x14^\xa9\xd4\x99\n\xc0\
\x00`8\xdf\x8b7{^*\x8c\x1c\x1d\xdb\xe47|\xb4\xa1Ou\xfe\xa2%\xbd\xdai\xac[*\
\x8b:\x8fR4\x06E\n\x9a"\x04&\x04+\xc7\x0c\x03\xb8\x0b\xc4H\xc2\xc0B\x99\x10\
\x8c1\x04A\x80\xa1\xd2i\xbf0\x1c}\xf7\xdf?\x88&\xdaHL,\x12\x15\xe2\xbc\xb1\
\xb11\xd6\xbc%\xfd\xf3\xe3\xf9#\xe3C\xc7\xce\xdfu\xe87\xa3\'\xbb\xde\x1c\xfd\
$\xd0\x857\xcc\xc5\xd9\xcf\xf5\x14\xbb\x16{T\x85\x9a\xe4B\xee\xca88\xe3\xb04\
\xd1\x11\x12\x01\x16\x04F\x04\xcb&~\x82\x19\x08\xe7\x0bcv \xec)\x8d\xf6\xf8\
\x0f\xec}l`?\xe7\x9c{\x9e\xc7\x8a\xc5"\x01\xb0\xe5\x18`MMMn6\x9buo\xf9Ks\xbe\
\xd0\x1f\xdc\xb7\xf7\xd13\xedB\x08\xd7\x18\xe3r\xce]c\x8c\xdbx\xa3{Y\xd3\r\
\xf5w\xa5\xabc\xd7gd\xbd\xadK,Lx\t\x8f9\x8e\x03\xc6\x18,\x19(\x1d\xa1\x14\
\x15\x91\x0f\xf2fD\r\xfa\x91\xaf\x8eu\xee:\xf3\xd8\xe9\xd7\xc3\x1e\xc7q"\xad\
u\x14\x86a\x94L&\xa3\xfe\xfe\xfe\xb0|\x05L)\xc5\xac\xb5<\xc8\xa9\x9f\xec\x7f\
|d7\x11\xc5\x88\x88\x97\x87\x10B\xf4\xb6\xaa\xc1\xfe\xb6\x81\xa7y]\xf8\x87\
\xcb7\r]\xbd\xe8\x8a\xf4\xb5^m\xac9\xe6\x8a\x8b\xac I\xcc\n\xa1yQ+;\x98;\x1b\
\xed\xed{\xff\xfc\xae\xfe\xb7\xd5)kmd\xad\xe5\xe5\x91N\xa7Y\x14E\xec\x82,hii\
qGFF\xdcX,\xe6\x06A\x10\x93R\xbaZkW\x08\xe1\n!\x9c\xf2IXk\x1d\xce\xb9CD\x92\
\x88\x04\x111\xc6\x18\x01\xb0\x9csm\xadU\x9cse\x8cQB\x88\xc8Z\x1b\t!"cL\xa4\
\xb5\x8e\\\xd7\x8d\xc20\x8cjjj\xc2\xee\xee\xee\xb02\rYSS\x93\x9b\xcb\xe5\x9c\
X,\xe6\x86a\xe8:\x8e\xe3h\xad\x1d)\xa5c\x8cq\x84\x10\xd2Z+\x89HXk\x85\x94\
\xb2\xb2\x90\x911\xc6p\xce\r\xe7\\k\xad\xb5\x10Bi\xad\xb5\x942RJ)\xc7qT\x18\
\x86Q}}}\xd0\xd99\xf1\x17n\xa6N\x87766\xba\xc5b\xd1I$\x12N\x14E\x8e\xeb\xbaR\
k-\xad\xb5\xc2Z+\\\xd7\xe5\xd6Z\x0e\x80\x11\xd1\xa7=\x07#\xc6\x98e\x8cY\xa5\
\x94\xe1\x9c\x1b)\xa5\x8e\xa2H;\x8e\xa3|\xdf\xd7\xb5\xb5\xb5Awww\x84\x8aj?W\
\xab%\x9a\x9a\x9ad.\x97s<\xcf\x93\xc6\x18\xae\xb5\x16\xd6ZND\x93\xe2\x15\x00\
\xc49\xb7\x9cs\xeb\xfb\xbe\x8e\xc7\xe3j\xc1\x82\x05\xba\xb3\xb3S\x97\xd3n\
\xaa\xcd\xab\xd7\x9baM\xe5@\xc5\x8e\xa8b\xcc\xcb\xfe\x07Z\xc6x\xad2\x15\xdc\
\x06\x00\x00\x00\x00IEND\xaeB`\x82'
def getAutoRefreshBitmap():
return BitmapFromImage(getAutoRefreshImage())
def getAutoRefreshImage():
stream = cStringIO.StringIO(getAutoRefreshData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getCopyData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x02\
\x8aIDATX\x85\xcd\x97Mk\x13A\x18\xc7\xff\xcf\xce\xee\x9a\xe0!9X\xfa\t\x92\
\x8dh\xfd\x06\x82\x07\x11z\n\xf8\x1dz\xd0[%\x8d"\x05O\x966*\x05\xf1\x05\xf1\
\xe0I\xc5\xb3w\xa9\x96\xe2QQ\x0f\x01\xb5*B$x\xc8\x8b\xdb$\xe6e\xc6C\xdc\xcd\
\xce\xb2\xb3/\xbaA\x1f\x08\x99\xd9\x99\x9d\xffo\xfe\xcf3\x9b\r\xf0\x8f\x83\
\x00`{\xbbvn0\x1c-\xa6\xb9\xb0a\x18\xdf+\x17\xaa\xb7\xa3\xe6\xe9\x000\x18\
\x8e\x16/U/\xa7\xa9\x8f\xcd\xda\xc6B\x9cy\xba\xb7\xd3n\xb7S\x11\xcf\xe7\xf3\
\xb1\xe7j\xa9(\xfeE\xe8\xd1S\xe2\x07\xe7|>\x00\x8f\x9f<<\xdf\xedvb\xe5\xd4\t\
"`\xb3v\xf5\x8aR\xd80\xdeVV\xab\'\x02\x01\xea\xf5\xba\xd4\xefv;\x0b\x17\xd7\
\xd2-\xd2\xadk\x1bK\x80\xc2\x81R\xa9$\xf5\x9f\xef>\x03\x90N\x91\x12\x11r\xb9\
\x9c\xdb\xff?\x8b\xd0\x9f\x82\xb4B\x08\x11\x0f@\x95\x824\x84\xfd\x10\xa1\xa7\
@u\xac\x928\xe4\x08\n!P(\x14\xa0\xeb\xb2\xa42\x05ag\xda\xefP\x98\xb0\x1f"\
\xd2\x01\xce9\x8a\xc5\xa2tmwo\'R0J8h<\x10\xc0\x0f\x13\x14\xaa\x14\x84\tZ\x96\
\x15x\x8f\x04\xe0\x08&MA\xd8\xae\xfdcD\xa4\x06p \xfc)\xd8{\xf9"\x10$\xae\xdd\
sIA\\A`j\xbf\n\xc2\x05\xe0\x9c\xbb\x82a\xf6\x0b!\xdc|F\xd9\xed|{\xdbD$\xad/\
\x01\xc4\x11\x8f#\x185?\x14\xc0\x1b\xfek\xce\x02\xaa\x14D\xc1X\x96\x05"J\'\
\x05\x7fR\x80\x8c1\xf5\x930\xed\x14x\xc74M\x03c\xcc\x05\xd0\xb4\xd9\x8f\xb0\
\x04\x90\xc9d$\x08\xefD\x7f1\xc5\xd9=\x11I\xc2N\xbb\xf1\xad\x01\x011\x030L\
\xa3y\xeb\xceM\xe5\xff\x02\xa2\x19T\x12\xbb\x89\x08\xf7\x1f\xdc\x83i\x9a\x00\
\x00\xd301\x1c\r\x91\xcdd\xa7\x8b:\x00\x95\xd5\xea]\x9580}\xb7\xe3\x9c+m\x0e\
\xb3\x1b\x00N\x9f:\x03\xe7\xfe\xc1`\x80\xd7o^\x81@\x8f\\\x808\x11\x04\xe0m\
\xab\xecf\x8c\x81s\x8eV\xab\x05!\x04>\xec\xbf\x87\xdd\xb7;}\xfb\xe7Jb\x00\
\xd5\xaeU\xc2\xba\xae\x83s\x8e^\xaf\x07\xdb\xb6\xf1\xe5\xebg\xf4\xfa?ZG\x8f/\
\x9d,/\x97{\x89\x00&\x93\t\xb2\xd9\xacT\x8cD\x04"\x82\xa6i\xd2\x871\x06!\x04\
\x0e\x0el\x00\xc0\xfe\xa7\x8fh4\x1b\x02\x02;\x87\x8e\x1c>[^.\xbbo\xb7\x14,\'\
\xc7\xf5\x1b[\xef\xc6\x93\xf1\xb1\xb8\xb0N\x88\xdf\xb5\xaei\xac9\x16\x93\x95\
\xf5\xb5\xf5\xa7I\xd7\x98{\xfc\x02\\\xe5\x0c\xee\x86\xfe\xecP\x00\x00\x00\
\x00IEND\xaeB`\x82'
def getCopyBitmap():
return BitmapFromImage(getCopyImage())
def getCopyImage():
stream = cStringIO.StringIO(getCopyData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getCutData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x07\
\xe4IDATX\x85\xad\x97{PU\xc7\x1d\xc7\xbf\xbb{\xce\xb9\x8fs/\xf7\x12^\x82T\
\xb8\x02Q\xab\xc18\nV\x1b\x9f\xa0M\x1f\x99\xb6\x7f\x946&\x13;M\x94\xe9\xa4\
\x99vb\x0c\x125\xe6\x86\xd2\x82\x8f\x90L\x9264\xd3vR\x9b4\xb1\xc9\xc4\xcc\
\xb4\xd3\xd6\x17\xad\xd1&\x05\xb5>\x88\x164 p\x91\xc7\xe5\xa1\xf7r\x9f\xe7\
\xecn\xff\xc0\xeb\xe0\x03\x84iw\xe67\xe7\xcc\xd9\xdf~\x7f\x9f\xf3\xdb\xfd\
\xed\xd9C0A{\xe9\xe5\xddU\xf1xl[$\x14wz\xbd\xde\x91\x89|om\xbb_\xaa\xad3M\
\xf3\'*\xb3\xda7m\xda\x14\x19\xcf\x8f\x8e\xd7Q[[\x9b\xc59\x7f:#=#\x96\xe4\
\xb2{\xa7\x12\xbc\xa6\xe6\xc5\xfb@HyZZzL\xc0\xdc4\x91\xef\xb8\x00\xaaF\xdfY\
\\\xbcX[S\xba\xd6"\t~X\xbd\xbbz\xf6d\x82K)\x89f\xb1\xee]\xfa\xa5/[\xd6\x96~\
\xc5\xc2(\xad\x98h\xec\x1d\x01jj\xaa\x96*\x9a\xb2\xb0 \xff^EJ\x82%\xc5K,6E{k\
2\x00;\xf7\xd4lp:\x93\xf2rsr\xa9\x10\x12\xc5\xc5\xc5v\x9b\xa2\xd5N\t\x00\x94\
\xce\xcf\xce\xfa\x02\xe3\x9cCJ\t\x8f\'\x8fZ\xad\xb6\xb9\xb5\xbb\x7f\xf6\xc8D\
\xc1\xab\xab\xab\xd3\x18%\xbbW\xaf*u\xc4\xe3\x06\xa4\x94\xc8\xcc\x9cN\xa5\
\x94ES\x02\xe0\xc0\xd9\xcf\xdb.1\t\t\x000\x0c\x13kJJuF\xd8\xab;^\xd9\x914\
\x9e\x98M\xd7^\x9d\xfb\xc5y\x9a\xa2\xa8\x90R\x82R\x8a\x93\xa7\x1a#\x9c\xf3O\
\xa6\x04\xb0\xf5\xd9\xad\xc7\xa5D\xdd\xf1\xe3\xc7\xc2\x94RH)a\xb5\xda\x91\
\x9f\x9foM\xe2\x8e\x9a;\x8d\xf9\xf9\xae\xaa\xe5\x84\x90\x87\xee\x9b7\xdf\xc2\
9\x07\x00\x84BAttv\x85B\xc1\xe8\xfa)\x01\x00@(\x18y\xd1\xd7\xdd5\x12\x0c^\
\x03!\x04\x9c\x0b\x14-*\xb6\x11\x8a\xf5;wV\x17\x8e\xf5\xad\xaf\xafW-\x8a\xe5\
w%\xabJ\xed\x86a\x02\x004M\xc5\xe1\x86\xc3!a\x98\x1b&*\xe1q\x01\xbc^o\xd80\
\x8d\x8d\x87\x8f\x1c\ni\xdahJ\xe3q\x03\x0f,]fe\x9a\xf6\x96\x94\x92$|\x83\xc1\
\xe1-\xe9\x19\xe9\xa9n\xf7=\x10B\x80\x10\x82\x8b\x17[\xcch,\xdaXQ\xb1u\xffx1\
&\x04\x00\x80\xcag\xb7}\x14\x8b\xc5\x9aZ/\xfe\xc7$\x84@J ++\x9b&9\x9c\xf9\
\xbbv\xd5\xac\x07\x80]\xbb\xaa<\xa0d\xcb\xf2\x07V\xeb\xf1x\x1cRJ0F\xd0t\xf2D\
\xdc\x88\xf2\x1fL\xa4\x7fW\x00\x00\x88\xc7\xf8\xe3M\'N\xc4\x15E\x81\x94\x12\
\xb1X\x0c%\xab\xd78\x08#\xaf\xd4\xd5\xedp3\xd5\xf6\x9b\xc5\xc5K4\xc3\x18]\
\xf5\x16\x8b\x05G\x8f\xfd=D\xa4\xac\xa9\xac\xac\xbc\xfc?\x03TVV\xb6I)^>v\xfc\
h81\x15\x84P\xcc\x993W\xe3\xc2\xfe\x81\xc5b)\xca\xcd\xf1(\x89\xd4_\xbd6\x84\
\xbe>\xff\xa0\xd3\x99|\xc7\xc5:e\x00\x00\x18\tD\xaa|\xdd]\xc1\x91\x91 \x00\
\xc04M\xdc_x\xbf\x952\xba\xaahQ\xb1\x1e\x89D \xa5\x84\xddn\xc7\x91\x86\xc3!3\
\x1e\x7f\xac\xbc\xbc\xdc\xf8\xbf\x01x\xbd\xde\xa8\xc9\x8d\xc7\x0f7\x1c\n\xd9\
\xedvH)\x11\x89D\xb1jE\t9s\xf64\x84\x10P\x14\x05\xe7\x9a\xcf\xc4Mn\xfe\xa5\
\xa2b\xeb?&\xa3;i\x00\x00\xd8\xb2y\xdb\x9f\xe3F\xfc\xd3K\x9f\xb7\x9a\x8a\xa2\
\xe0\xe2\xa5\x16$\'\'C\xd34\\\xeeh\x07S\x18\xce5\x9f\x8b\t#\xf4\xe4d5\xa7\
\x04\x00\x00<\x1e\xdd\xd0\xd8\xd4\x18\xb7X,\xf0u\xfb\xd0\xdf\xdf\x8f\x15\xcb\
V\xa2\xa5\xf5\x02\x0e\x1e\xfak\x88ss\xcb\xe6\xcd\xde\xfe\xa9h\xb2\xa98\x1f<\
\xd8p\xf5\xeb32\x9f\x18\x94"yu\xc9\x83H\xec\x92$\x1cF\xef\xc7G\r\xc7\x81\x86\
\xb2?\xf5\xf4\x88\xa9h*Sq~\xc3\x86E\xeaG\xef{\x06=y8u\xb2\x11\xe6o\xeb\x119\
\xff\x19b\x83\x03\xb0\xc5c\xbat\xba\x9e\x07\xb0}*\x9a\xe4\xee.\xa3\xad\x1eP\
\x15\x079\xbf sf\x9e:#\x97\xb4gg\xa1\xf7\x83\xbd\xc8w\xa5!\xdb\x99\x02P\xe0\
\xe3\xce\x960\xe7r\xd6\xc6\x08|\x93\xd5\x1d7\x03o\x03\xc9\x92\xd2\'UB\xd6q)\
\xb3A\xa0Q\x83)\x16\xc2\x88>0\x00\xe3\\S\x04 \x1fv\x04\x87\xbe\x95\xa2\xeav\
\xcdb\x81\xc7\x9d\xaeu\x0e\x0f\x9c~\x97A\x95\x00e\x94v\x19\x9c\xbf\xab\n\xf1\
Z\x1904\xe9\x0c\xbc\r|\x87P\xfa\xebT\x97K\xc9\xce\xc8\xb0\xb9t\x1d\x12@\xdf\
\xd0\x10\xda|>X\xdc\xb6\xa8?6r\xc4\x19\x10\xdf\x0e:\xc9{\x19\xba\xeb\xab\xd3\
T\xa7\xc5a\xb7\xa3y\xa8\x1bk\xe7\x15\x81\x00\x18\x0e\x04\xd0\xe6\xf3E\xae\
\x0c\x0c\x98\xe0\xfc\x89u\xc0\xbe\xbb\x02\xfc\x81\xd2g(c/\x14\xe6\xe5\xe9\
\x86i\xa2\xa3\xb7\xf7Z0\x1c\xd6\x18c\xea\xc29s\x94p$\x82\xcf:\xda\xfbX\xdc\
\x9c^\x06\xf0\xd7\xd2\xe0\xb0G\xe9\xd1\x99\xee\xf4\xf9\x0e\xa8\x94ZU\xb4uv\
\x07\xb8\x10$\xc5\xe9$3\xb3\xb3\x1d\x94R4]\xb8\x1029\xafz\xd84o:\x1d\xddT\
\x86\xef\x00e\x84R\xef\xc2\xd9\xb3\xf5\xce\xde\xdeps[[\xd7\xf0\xc8\xc8\xf7\
\x15!R\xa2\xdcx\xee|[\x1b2RR L\x91T\x06p\x00\xf8\x91\x1f#AU\xac\xbc<\xd4\x0f\
S%h\xef\xba\x12\x88\xc5b\x0fs\xc3\x98\xdd;4\xb4\xe5_\xcd\xcd\xc3\x1d==\xd1\
\xa5\x85\x85\xbaB\xe9\xf6\xdfS\xfa\xdd;\x02\xec\x03\\\x84\xd27\xe7\x17\x14\
\xd8\xdb\xbb\xbb\xc3\x83\x81@\xa3[\x88\x82\xc7\x80\xfde@D\x13\xf8c8\x16\x8b(\
\x8a\x02Hy\xd3\xda\xf9\xf1\x10\x02jDr]\xd7\x117\x0c\x85\x00\'\xd7\x01W\x1e\
\x05^gBx\xae\xf8\xfd\xad\x97:;cEs\xe7\xea\n!\xbf\xda\x07\xdcs\x1b\x80Iiy\xaa\
\xdb\xad\x00\xc0\xc0\xd5\xab#n!\x1e\xfc\x1a\x10K\xf4s`Y\xb2\xae\x1b\xc1P\x08\
\nc\xed\xb7N\x9dBY\xbb\xce,p\xdal\xa6\x00V&\x9e\x97\x01\xd7\x98\x10\xcb\xbb\
\xfd\xfe(\x01\x90\x95\x96\xa6\x1a\x94n\xbc\r\x80\x12\xb2>;=\xdd\xee\xeb\xef\
\x0f\x9bB\xfctl\xf0z\xc0\xce\x18\xdbyonnRgOO\x94\x0b\xb1\xf7V\x00.\xc4\xde\
\xae\x9e\x9e\xa8\'++\x89R\xba\xa7\x1e\xb0\x8f\x85\x90\xc0\xce\x8e\x9e\x9e\
\xa8\';\xdb\xa62v\xe3\x88F\xc7\x08x\x1c\xba\x8eP8\x1c\'\xc0\xa9\xb1\xc1\x93\
\x18;\x90\x99\x9a\xea\xd24\r>\xbf\xdf0\x84\xf8\xe5m\x19\x10\xe2\x17\xdd~\xbf\
\xa1i\x1aR\\\xae\x14\'\xa5\x07\xc7Bp!\x9a\x82\xa1P\xd4\xe5t\xc2\xe4<\xf76\
\x00B\x88\t\x00\xba\xcd\xc6\x08P\xf8\x14\x90\xf4&\xb0\xce\xc1X[fj\xea\x82y\
\x05\x05\xb6O\xce\x9c\t\rJ\xf9\xf4z@\x02H\x01\x90\x9a\xb02\x80\x0c\x00\x9bN\
\xb7\xb6\x86f\xe5\xe4XS\xdd\xee\x05\x0eJ\xdb\xeb\x81u\x8f\x00I\x84\xd2\x85\
\x0e]W)\xa5\x00pc\xbb\xbeQ\x86\xef)\xca\x87\x0599\xdfLq\xb9Hcss\xc8\xe4\x9c%\
\xe9\xba1\xdb\xe3qZ5\r\xff<{6\xdck\x9a\xf5Oq\xfe\xc6up\x8a\x9b\xcbX\x02\x10u\
\x8cm\x9c\xceX\xf9\xc2Y\xb3\xecQ\xc3@\x9b\xcf\x17\x0c\x84\xc3\x9a\xaa(\xa2d\
\xf1b\xdbp O\x9c?\xff\xb7\xef\x19\xc67\x00\xf0\x84\x80R\x03\x14\xe40\xf6\
\xe9\xac\xdc\\\xc7\x8ci\xd3\xa8\xaa(\x08\x8c\x8c\xa0\xbd\xbb;\xea\xf3\xfb\
\xf9\x05)_\xa8\x12\xe2\x00\x00\x15\xa3;h\xc2\x18FK\xd2L\xd8s\x94\x96\xce\x03\
\xb6g\xa5\xa51\xcf\xf4\xe9\xd6\x14\xb7\x1b\x00\xe0\xeb\xeb\x13\xffni\t^4\xcd\
\x15\xcf\x03-\x00\x8c\xb1o@\xeb\x80\xc2tE\xd9CF\xffd(\x08\xe9\x1d\xe6|\xff\
\xfbR\xeem\x00\x82\xd7\x83%\x8c\x8c19\xc68\x00\xbe\x0cp\x96\x11\xf2h\x8a\xa2\
<D\x84\xc8\x04 $\xa5\xa7\xba\x0c\xe3\x99\n\xe0\xccuX9\xde\xc7(!Lo\tJ\xef`\
\x899\x95c\xae\xfc\xfa}"3bL\xdfM\xed\xbfj\xaa\x81\xd8\x9f\'F\x8c\x00\x00\x00\
\x00IEND\xaeB`\x82'
def getCutBitmap():
return BitmapFromImage(getCutImage())
def getCutImage():
stream = cStringIO.StringIO(getCutData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getLocateData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x04\
\x13IDATX\x85\xed\x95\xc1oTU\x14\xc6\x7f\xf7\xbe\xf7\xa6\xa5C`\xda0Hc\xcd\
\x9b\xab\x06"A;&$\x98aQ\x08\x06vn\x8d\x88\xa9\x7fBa\xe1\n\x95\xc4\xbdv\xeb\
\xc2HM l\x8c\x04\x17\x06\xdc\xd4\x84b\\1\x06\x82bHg^\xa8\xb5\xcc0c\x8b\xbe7e\
\xdaw\xae\x8bv\xda\xe9\xd8\xce\xb4hbb\xf8\x92\xb7x\xef~\xef|\xdf=\xe7\xdc{\
\xe0)\x9e\xe2?\x86\xda\xea\x0f&g\xc6\xd3\xfb\xd2C\xeb\xadE\x95\x88\xdbWno)\
\xe6\xa6\xc9&gF\x81,0\xc8.R$\xd6!U\x80:y,s\x85\x1b\x85#\xff\x9a\x81e\xf1\xe1\
\xf4\xc1t\n\x17\xca3e(2\x8e"\x03d\xb0\x8c\xd1\xc70=\x90\x1eH\x13\x15#\xc2\
\x07a\xbe0Qx\xf5\x1f\x1bh\x16/?,#\x05y\xcbq\x9c\xfbZ\xf4LL\xfc\x19\x8a!b\x0e\
)Wy"\x92T}\xeaj\xb2?\t\x156e\xc2\xdd\xaax\xf0}p\xa9i}\x85;y}r\x02 \x93\xcb\
\x9c\x08\t\xaf&\xfb\x93$If\xcdas\xb3\x9d\x89\xb6\x06\x80l\xfa\xb5t\xaa<\xb3V\
\xdc\x9c2\xa3X\xb2,0\x88\x00.\x9f\x9a\x17\xcc\x9cX\x19)^,^k5\xd1N@w\xd8\xfd`\
\xb9\xf4wqA\xf2\x82\x9c\xa3J\x91Y\x90P\xc6\x049\xa7\xb5\x1e\xf1O\xfa\xd9\xe2\
\x8d\xe25[\xb5\'\xc2\xdfB\xc2G!\xe6\xb0\xb9\xb9e\x03\x8d\xdd#\xd0*\x8e\xc3\
\xe5\xe0B0N\xc4\x1c5\xa0J>\xb8\x10\x8c\x8b\xc8h\xb3\t\x00\xfa \xbd7\xbda\x16\
\xda\x19\x00\xc0\x06vx\xf5\x85,\x96b0\x16\xcc\x02\x082"\xc8Q\\\xf2\x00\xc1\
\xc5 \x8f%\x83"\x05`\xab\xf6\x04Q\xfb\xf8\x9dz\x00,\xef\x98\x9c9\x06\xf8,0\
\xa8\xab\xfa\x13\x933s\x82\x8c\x047\x82|\x83\xb6rO4q:\xc6\xde\x8c\x01\xa5\
\xd4\xeb+/\x02@v\xf9\xf0\xa6Z\xa8Y\x14C-\x9c\x8e\xe8\\\x02\xecpa\xa2\xa0\n\
\x13\x05\x85K^\xb6\xc9\xe9\xe6\xb4\xafz[-G\x83#\xc8\xd1N\xf1;g\xa0W\x8d\x01_\
\x00\xe00\xc7\x0e\xf2\xc1\xd7\xc18\xac\xa6\xbd\xb9\x1c\xe6m\xb3\xc21\xc7\x8c\
\xa5\xbb}\xfc\xb6\x19\x88\x8a\x11\xf4@&\x979\x0eP\xb8P8\xa2\x95~\xd7?\xe97\
\xbaz)\xed\xcbMgN\x99QQr~%;\xdb\x80hiHm\xb8\xc1\x8d\x16\xfc\x9c\x9f\xd5J\x7f\
N?Y\xe6\x97:\xbaq\xb4\xcc)s\x1eKf\xf9"J\xe1\x92\xc7aN\x94\x9c\xc7\xe1r0\x16\
\xcc\x9ac\xc6\xd2\x0b\xcc\x82\xd4\xe4t0\x11\x8cn\xc9\x00\xac\x8e\xderX\x86\
\x08x\xc8\x1b\xf1t|])e\x81n\xf5\xa2\xfaV)u\xc0z\xf6\x03\x8d\xfefQ\x16\x7f\
\xdd~\x7f{\xa5\xd6_{L/$\xdd$D\xb4\x1d\xd1mK\x10K|\xa6t\xb7t+\x9dLC\x0f\xb0\
\x8b+z\xb7>\xde\xd5\xd5\xe5z\x9e\xe7\xaaH\xfdA\r\xa8\xf0C\xfdV}\x92\x9f\x98o\
\x15\x0f\x1f\x86g\xfc!\xbf\xf5\xc4l\xce\x80[r\xa7l\xcd\xbeW\xba[\xba\xdd0\
\xa1\xf6\xa8K\x0b{\x17\xca\x0b}\x0b\x07\xad\xb2\x16@\x89\xea\xf2\xf6y\x15\
\xe7\x15\xa7\xbaF\xfcAxVB\xf9*\xf8n\xe9\xe2Z\x0f\xedK`\xcc3J\xa9.\xdbg\xf7\
\xda\x84\xfdx\xf7\xbe\xdd/\x03\xac\x94\xa4\x19\xddK\xc2=\xdbz\x88*\x11\xe1\
\x83\xf0l\\\x8b/&\xa2\xc4\x9f\xf7\xee\xdd+?\x91\x01\xdf\xf7\xf7x\x9e\xe7ZkU\
\xdc\x1b?\x8f&\x85\xcbG\r#\xadh\x08\x13\xf3\xb3\x8e\xf4\x8fv\xde>\xaa\xd7\
\xeb\x8bSSS\xd5\'2\xb0\x7f\xff\xfeD\x18\x86=J\xa9\x9d\x8e\xe3x\xd6\xda:;8\
\x80\xc3NQ"*\xa1>D\xf1\x92]\xb4\xef\xebE=)Z\x16mh\x7f!d\xc6q\x9cD\x1c\xc7\
\x8f\x92\xc9dt\xe7\xce\x9d\xfa\x13\x19h\xe2h\xdf\xf7=\xc7q\xba\xb4\xd6\t\x11\
Q\xf5z\xdd\xf3\x9e\xf3\xbeDs\xc8\xd6\xed\x9b\xb6d\xaf\x01\xdd"\xa2\xe38~<==\
\xfd;`\x97\x9f\r\xd1y\x18-\x05\x88\x83 \x88\x81\xf9\xc6\xc7\x81\x81\x81g[\
\x89A\x10\xccl"\xde\x1at\x9c\x05O\xf1\xbf\xc7_\x86\xf4\x11\x04\xae\xb8O\xbf\
\x00\x00\x00\x00IEND\xaeB`\x82'
def getLocateBitmap():
return BitmapFromImage(getLocateImage())
def getLocateImage():
stream = cStringIO.StringIO(getLocateData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getMoveDownData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x04fID\
ATX\x85\xed\x96_\x88\x1bE\x1c\xc7\xbf3\x99\xec\xedmsI\xecyW\xef\xc8u\xcbY\
\xa8\x82\\\x03\xf7\xd2\x07mz-\x9c!-RD\xaa\xe0\xf5A|P|\xa8\x15|PP\x8a\x08\xfe\
y\xaa\x8a\x08\x05\xff }\xa9}\xf0A\xa9\xcd\xd5\x96^\xde<\xb9\x82Ji+\xe4b\xb2\
\x9b^\x92\x86#\xff6\xbb\x9b\xdb\xec\x8c\x0f&\x10\xae\xc9\x91\xbb\n\xfap_\x18\
v\xe6\xb7\xdf\x99\xdfgfg\x86\x05\xb6\xb5\xad\xffX\xa4[0\x1a\x8d\xa6\xe3\xf1\
\xf8\x9e\xf5\xf1\x03\x07\x0e|=99y,\x18\x0cz\xf2\xf9\xbc\xa9i\xda\x8fKKK\xaf=\
\x08\x00\xeb\xd7\xb8\x7f\xff\xfeOb\xb1\xd8\xb3\xb3\xb3\xb3\x01!\x04r\xb9\xdc\
\xce\xabW\xaf>O)\xad\x14\n\x85O3\x99L\xfe\xdf\x04\xd8\x11\x8dF\xe7\xda\x8dF\
\xa3\xf1\x88\x10\xe2\xa9\xa1\xa1!_6\x9b\x85m\xdb`\x8ca||\xdc\xef\xf7\xfb\xf7\
\x95J%\xcf\x15U}\\\x02d\x0f!\xbc\xe98\xab3w\xeff\xb7\x0c@\x08\xf1\x028\xdfn\
\xcb\xb2\x0c\x00\xd04\xcd\xb5m\x1b\x92$\xa1^\xafC\xd348\x8e\x03J\xa9O\xb8\
\xee\x8cD\xc8>J\xe9\xcb\xcc\xe3I\xfe\xa2\xaao4\x81\xd2\x93\x99\xcco\x9b\x06\
\x10B\x94\xe3\xf1x\xb03\x16\x0e\x87?\xf7z\xbd\'k\xb5\x9a_\x96e\xd4j5\xe4r\
\xb9Z\xb5Z]6M\xb3\xf6t6\xfbE\xcb\xfa\xfa\xc2\xee\xdd\xa7|B|+\x13R[P\xd5\xe7\
\x0ee2\xb77\x05\xb0^\xd3\xd3\xd3\xder\xb9\xfc\x8d\xa6i#\xe5r\xf9\xf0\xe0\xe0\
\xa0\xc7\xb2,\xabR\xa9\\\xb3,\xeb\xa2\xae\xeb+\x9d~S\x92\xce\xc1q\x0c\x1f\
\xf0UP\x88\x0f\x13\xa1\xd0\x07uY\xbe\x13K&\xab[\x02\xb8q\xe3\x86\x13\x89D~O\
\xa7\xd3gl\xdb\xfe\x8e1\xc68\xe7\xb6\xeb\xba\x7f2\xc6\xfeZ\xef\x8f%\x93\x8d\
\x1f\xc6\xc6.\xb8\x8c\xa9AB\xde\x02\xa57c\xc9\xe4\xaf\xdd\xc6\xa6\xfd\x00\
\x00@"\x91\xe0\x92$\xad1\xc6\x1a^\xaf\xd7&\x84\xd8\x9csgdd\x84w\xf3?\x93\xcb\
\x99T\xd7\xdf_\x15\xe2{?0wmb\xe2\xe3n\xbe\xbeV \x12\x89\xb0B\xa1\xf0\xd8\xf8\
\xf8\xf8\xdb{\xf7\xee\x9d\r\x04\x02lee\xc5L\xa7\xd3\xf3\xc5b\xf1\xb3H$r3\x91\
H4\xd7\xf7\x9b\x01\x9aW\x80&\x08Q\t\xe7\xe1-\x03$\x12\x89f8\x1c~\xf5\xc8\x91\
#\xc7fff\xfc\x9cs\x14\x8b\xc5\xe0\xc2\xc2\xc2\xf1\xc5\xc5\xc5\xd5T*u\x16\xc0\
\xcaFc\x10Bf7\x03\xe0\x8fF\xa3\xa7\xdb\r\xc7qF8\xe7\x07eY\xde\xa1\xeb:\xd6\
\xd6\xd6@)\xc5\xf0\xf0\xf0\x90\xcf\xe7{tpp\xd0\x0f \x07@\xf43\xa1~\x00@\x089\
\xdb\xaeK\x92\x04\x00\xc8d2\xaem\xdb\x18\x18\x18\x80a\x18\xd04\r\x8dFc\xc3\
\x04\xa4Uz\x91\xf5\x02\xa8^\xbe|ygg`jj\xea,\xa5\xf4\xa5Z\xad\x16\x18\x18\x18\
@\xbd^G>\x9f\xafT\xab\xd5;\xb6mWz\xe5\xf0\xb4\x9e\x9b\x05\xb8\xcfW\xaf\xd7\
\xbf\xd44m\xb8R\xa9\xcc*\x8a\xc2\x0c\xc30\r\xc3\x88\xdb\xb6}A\xd3\xb4b\xaf\
\x8e\x14\xff\xac@\xaf\xe3\xd6/@syy\xf9\xf6\xe4\xe4\xe4;\x96e\x9dg\x8c\x11\
\xc7q\xd6\x84\x10\xa9T*\xb5\x02\xe0\xbe\x13\x00\x00K\xd3\xd3\xde\xfa\xbd{L\
\x00\x10\x80\xf5 \x00\x00 R\xa9\x94\x06@\xebe\xb8\x08xN\x00.\x00\\W\xd5`\xa5\
P\xf8\xe8!\x8f\xe7\x85\x8a\x108\xac\xebJ\xb7>\xfd^D2\x80\x00\x00(\x8a"\x00\
\xc4ZE\x00P\x01H\x00p\x02p\xe7C\xa1[\xd7\xc7\xc6\x1e\x06\xe7\xef\x05<\x9eW(\
\xc0\x05\xb0\xd8k\xe0~W\xc0n\x15a\x9a\xe6Q\x00?\xb5\xe2G\x15EI\x9b\xa69\x01 \
{eb\xa2J\x850\xfc\x92\xf4\xae\x00N1\x00U\xce\x13\x87t\xfd\xf0\xa6\x00\x9a\
\xcdf\xb05C\xb4\x92\xb5\xebs\x1d\xc91::\xeaX\x96u\xfa\xdc\xae]\xc7\xf7x\xbdo\
\xfa\x08\xf1I\x94\x0ey\t9U\xe7\x1c&\xf0\xf3A]\xefz\x01\xb5\xd5\xf5\x13PJ\x1d\
EQ.)\x8ar\t\x00:\xear\xa7\xafT*\xe5\x0c\xc3\x18\xbd\xe7\xbaE\x02\x08\x17 kB\
\xa0\xc2\xf9\x1fU\xd7=yP\xd36L\xdeS\xd1h4\xdd\xe3U\xfb\xfb\xb7\xf5bkO\xec\
\x02\x80\xf9P\xa8<\x1f\n\xa5\xe7C\xa1\'\xb6\x94x\x03\x80\xce\x95Z\xbf\tqFU\
\xe5\x8b\xad;g>\x14\xba%z\xfc\xecnk[\xffK\xfd\r\xa2\x1e\xee\xad\xfa\xa1G\xfd\
\x00\x00\x00\x00IEND\xaeB`\x82'
def getMoveDownBitmap():
return BitmapFromImage(getMoveDownImage())
def getMoveDownImage():
stream = cStringIO.StringIO(getMoveDownData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getMoveLeftData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x03\
\xd0IDATX\x85\xed\x96Ol\x1bE\x14\xc6\xbf\xd9\xf5\xc6k7Y6\xb5\xb0!Y\'\xc4\xa8\
\n\x87J\x0e\xf2\x81\xa8\x97\xa0\n\xa2U\x8aPh\x0f\xbdP\t.\xa0\x02\x07\x0ep\
\xe0\xce\x9f\x03H\x14\xc1\x05\x84@\x08\x04\x12\x91\xb8@#\xbb\t\x87\\!\x91\
\xdcJ\xb1\x12G\xe0\xcd&\xcd\xc6\xe9*Y{\xbd\xbbv\xed\xdd\xe1P;5\x95M\x1cc\t\
\x0e\xf9\xa4\xd1\xcc\xbc\x1d\xcd\xfb\xed\x9b\x997\x03\x9c\xe8D\xff\xb1H+\xa3\
,\xcbJ2\x99|\xac\xc9\xc4\x02p\'\'\'\xbf\x8a\xc5b\xcf\x89\xa2\xc8\xee\xee\xee\
\xda\xaa\xaa\xfe\xec8\xce\xa7\xab\xab\xabY\x00n7\x00\xbe\x0e\xc7\xb9\xf1x\
\xfc\xda\xcc\xcc\xcc\xc5\xe9\xe9\xe9\x87(\xa5\xd04\xed\xf4\xe2\xe2\xe2\xe5\
\xe5\xe5\xe5\xc2\xe8\xe8\xe8\'\x9b\x9b\x9b\xbb\xbd\x048%\xcb\xf2\x8b\x8dN\
\xa5Ry\x04\xc0yA\x10\x06\xb6\xb7\xb7Q.\x97\xe1\xf3\xf9044$\x08\x820n\x18\x86\
\x08 \x0f\x80\xf6\x04\x80\x10\xc2\x01\xf8\xb6\xd1\xe7y\x1e\x00\x90\xcb\xe5<\
\xc7q\xd0\xd7\xd7\x07\xcb\xb2\xa0\xaa*\xaa\xd5\xeaq}\x1e\r@)5\x92\xc9\xa4\
\xd8l\x9b\x98\x98\xf8\x8c\xe3\xb8+\x96e\t<\xcf\xc34Mh\x9af\x16\x8b\xc5?\x1c\
\xc7)\xa2\x8b\xbfo\x0b\xf0\xa0\x12\x89\x04g\x18\xc6\xd7\xaa\xaa>l\x18\xc6\
\xf9@ \xc0:\x8e\xe3\x14\n\x85_\x1d\xc7\xf9q``@\xef\xc69\x000\x9d\x0cZYY\xa9J\
\x92t3\x9dN_.\x14\no{\x9e\xa7\xeb\xba~\xb5\\.\xbf\xe7\xf3\xf9nf2\x99\xbb\xdd\
\x02tz\n\xb0\xb4\xb4T\x03@\xc2\xe1\xf0<\xcb\xb2od2\x99_p/\xec\x87\xa1O$\x12\
\\\xa9Tz\x82\xe7\xf9\x11\x96e\x89m\xdb&\x80\xec\xda\xdaZ\x1e\x80\xf7\xaf\x00\
\xea\xa2~\xbf\xdf\xab\xd5jxp\xc2D"\xc19\x8e\xf3T,\x16{\x7fll\xec,\xcf\xf3DU\
\xd5\xc2\xd6\xd6\xd6\xf7\xe3\xe3\xe3_\xac\xaf\xaf\xab\xad \x8e\x0b\xd0V\xba\
\xae\x0fG"\x91wfgg\xcf\xc5\xe3q\xb6Z\xadBUUqaa\xe1\xe5t:\x9d\x8fD"_\xe6\xf3y\
\xab\'\x00\x84\x90\xb0,\xcbo6\xdb*\x95\x8a\xc4q\\\xdc\xe7\xf3\xb1\x8a\xa2\
\xa0\x1e%\x84B\xa1\x10\xcf\xf3gB\xa1\x90\xbf\'\x00\x81@\xc0*\x95JQB\xc8\xc7\
\xcd\xf6F\xae\xd8\xd8\xd8\x80(\x8a`\x18\x06\xc5b\x11\x9a\xa6\xc1u\xdbg\xe9c\
\x03\xcc\xcd\xcd9hq\x87\xc4b\xb1\x11A\x10\xae\xf1<\xff|(\x14bY\x96E\xb1X\xc4\
\xce\xce\xce\x9em\xdb\x99\x83\x83\x83rO\x00\xdaippP3\x0c\xe3#EQ\xc4\xfd\xfd\
\xfd\xc79\x8e;e\x9a\xa6aY\xd6\x0f\x96e]\xd74\xad\'\x00\xa4^hSM\x81{\xb9bjj\
\xea\xb7\xc9\\\xee\xdd\xa7u=\x7f\x97a\xa2{\xc0\xe9\x0f\xfd\xfe\x1b\x8a\xa2\
\xec\xa3\xcd1\xec(\x115\x89\xd6\'j\xae\x0f\x97\xe3\xf5\xa5%\xfa\x8c\xe7\x99\
\xfd\x1cg>J\xe97\xa3\x94F\xb3\xd9\xac\xde\xce\xf9q\x00\xb8F#\x18\x0cV\x00\\\
\xac\x97F\x04\xfa\x00@\x8cF/\xd4\x18f;\x00\x80!$\xcc\x02\x7f\x1e5q\xa7K\xd0\
\xb8\xf2\xa8m\xdb\x17\x00\xcc\xd7\xfb\x97\xea\x00\xd1T4\xfa$\x80\xefX\xe0\
\x05\xea\xba\x1f\x00\x80Ki\xcb\x07\xcf\x91\x00\xb5ZM\x040S\xef\xce\xd7\xdb\
\x16\x80\x97\x9a\x9c\x03\xc0O\x00.}\x1e\x89\xcc\x82\xd2\xb7\xfa\x19\xa6\x9f%\
d\xb1F)j\xc0\xef\x8c\xe7\xadu\x05\xc00L5\x18\x0c^\x07\x00\xdb\xb6IS\xfb\xb5V\
\xe3\xf7\\\xf7\xce\x18\xc7Q\x17 \x1e\xa5\xb0(\xbd\xc50\xcc\xab\xcf\xde\xbe}\
\xeb(\x80\x96\x92eYi\xf3\x89\xe2~d\x80\xfb\xfb \x92\x1c\x199\x97\x92$#%IJJ\
\x92\xcev\xe5\xf8\x1f\x00\x0e7k0\x18\xa4\xf8\xfb&\xc4+\x00G\x01rcx\xf8LJ\x92\
2\xb4\xcdc\xf7D\'\xfa_\xea/\x13,\xa41\xc1\xc7M\xb4\x00\x00\x00\x00IEND\xaeB`\
\x82'
def getMoveLeftBitmap():
return BitmapFromImage(getMoveLeftImage())
def getMoveLeftImage():
stream = cStringIO.StringIO(getMoveLeftData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getMoveRightData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x03\
\x8cIDATX\x85\xed\x96Kl\x1bU\x14\x86\xff3\x9e\xf1x\xae\xd3\xdaq\\\xd4\xb8\
\x16N\x10i\x91\xe5(J\xc4C2\x8f]\xaaI\xb2k\x10\x95*v\xb0-H,X\x00\x0bXA\xcb\
\x82E\xa1\xa8\xa0\nU\x08\x16\xc0\nDcR)E,\xa8\x85X\xb0\x01\xb1\x98X\x93x\x147\
q\x1d\x93\x99\xe9\xf5cl_\x16M\xaa\xe2zJc\x82`\x91\x7f\xf9\xcf\xbd\xe7|s\xce}\
\x01\xfb\xda\xd7\x7f,\xeae\xea\xban\xe6r\xb9\x91n\x7f|||0\x1a\x8d^\x1a\x1d\
\x1d\xcd\x86\xc3a\xb2,\xcb.\x97\xcbg\x00\\\xca\xe7\xf3\xb5~\x00\xe4]\r\x96\
\xe5w\xe7\xe7\xe7\x8fg\xb3Y\xb5\xd5jaee%\xb6\xb8\xb8\xf8\xe6\xf2\xf2\xf22\
\x80+{\t\x10\xd6u\xfd\xf9n\xb3\xd9l>\xc1\x18\x0b\xae\xae\xae\xa2\xd1h \x10\
\x08 \x91H\xc48\xe7\x0c\xb7\xaa)\xf6\x04\x80\x88\x14\x00\x9fv\xfb\xaa\xaa\
\xa2P(\x88j\xb5\x8a@ \x00\xd7uaY\x168\xe7\x00 \x01h\xef\t\x80\x10\xe2\x8f\\.\
\x17\xed\xf6\'\'\'?\xd14\xedT<\x1e\x0f*\x8a\x02\xdb\xb6\xb1\xb6\xb6Vu]\x97\
\xa3\x8f\xbf\xf7\x05\xf0\x93\xe38/\x9b\xa6\x99\xacT*\x8f\xc9\xb2\xac\xd5\xeb\
\xf5u\xce\xf9\x05I\x92\xbe\x07\xd0\xf9\xd7\x01\x0c\xc3\xb0\xd3\xe9\xf4\xc9R\
\xa9\xf4\x8c\xe38H\xa7\xd3?;\x8eS6\x0c\xc3\xeb\'\xb9\xaft]7\xfff\x88\xaciZi/\
rI}\xce#":\xec\x13/\xaci\xda\r\x00\xb3\x00f\x19c;k#\xd8+\xd0\xaeZp\'\x00\xe7\
\xfc\xd5\xae\x18-\x00!\xc6\x98\xcb9\x9f\x03p\x19\x008\xe7s\x8c1\xc19\xefy\
\xe8\xf5\x0b 1\xc6\xcer\xce\x7f\x02p\x00\xc0\x03\x00\xbe\x06\xf0l\x8fD\x979\
\xe7s\x91Hdpkk\xabzW\xa0>\x01no9\xc6\xd87\x9a\xa6]\xdc\x86\xfa\xb0\xcfx\x7f\
\xd5},B?\xb1\xed\x9e\xcf\xde\xe1\xed\xac\x83\x07{M\xe8\xb7\x05~\xaas\xce\x07\
\x19c\x16\xe7\xfc\xb9m\xa2o9\xe7\x11\x00\xf5^\x13\xfam\x81\x9f:\x00\x9c\x03\
\x9c?\xf4\xf9\xf0\xf0\xc3_%\x12\x8f\x1e\x02\x86O\x03\r\x01\xf4<+v]\x81\x89\
\x89\x89#\xc9d\x92\r\x0c\x0c\xd0\xc6\xc6F\xbbX,\x96\r\xc3\xb0w\xbe_M\xa5\x14\
\xaf\xdd\x9e#\xe0\x0c\x11\x85>\x8e\xc5\xc05\xed=\xaaT\x1a\xff\x14\x802\x99\
\xcc\xb1\x91\x91\x91\xf3ccc\x93\xa1PHRU\xd5%\xa2\x0b\xf1x\xfc\xfd|>\xbf\xf9\
\x05\x10\xf0\xda\xed\x17At\x8e\x11!\x00\xc0\x06\xdeb\x9av\xf3\xc7d\xf2|\xd6\
\xb2\xeez3\xec\x06@\xa8\xaa\xfa\xc6\xf4\xf4\xf4\x93SSSA\xcf\xf3\xb0\xbe\xbe~\
pii\xe9\xa5#\xd7\xae\xfd\xf0v*\xf5{G\x88\xa7\x85\x10\xe7\x08@\x00\xb7k~U\x10\
\x1d\xb3\x85\xd0\x00\xdc\x1f\x00\x11EgffNu\xfb\xcdf\xf3q"RL\xd3\x84\xe7y "D"\
\x91\x83I\xc0\x0b\x01\x8f(D\xf1\x0e\xf0\x8e\x04\x9c\x10DG\xedv\xfb\x8a\x00^9\
nY\xbf\x92\xcfm\xe9w\x1d{D\xf4Y\xb7\x1f\x0c\x06Q(\x14D,\x16\x83,\xcb\xb0m\
\x1b\x96e!\xe5yC-!.\n .n\x05\xa8\xb7\x80/;\xc0k\xbae\x19\xbe5\xf5\x03\x00psa\
a\xe1P\xb7\x99\xc9d>\x90e\xf9\x85\xa1\xa1!UQ\x148\x8e\x83R\xa9T\xfe\xa5\xd3\
\xb1\x8e\nqbg\\K\x92\xca\x9dF\xa32{\xfdz\xf9^\xc9\xef\x05\xd0S\x8e\xe3\xbcn\
\x9a\xe6\xe1\xcd\xcd\xcd\xa7TU%\xd7u\xb7j\xb5\xda\xd9\xefj\xb5\xdf>*\x16{\
\xee\xf3}\xed\xeb\x7f\xaf?\x01\xe5\xdek\xe0\xaa\x83\xc3\x05\x00\x00\x00\x00I\
END\xaeB`\x82'
def getMoveRightBitmap():
return BitmapFromImage(getMoveRightImage())
def getMoveRightImage():
stream = cStringIO.StringIO(getMoveRightData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getMoveUpData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x04~ID\
ATX\x85\xed\x95Mh\\U\x14\xc7\xff\xf7\xbe\x97\xf9x\x99\x8f\xc4iZHf\x1a\x9b\
\x994\xb6\x8a\x1ft!\xb8\x98t(i\xa7M\x17\xae\\\x88\xe8B\xc4\x82\x8au\xa1\xb4"\
\xba(.DP\x88\xab\x82 R\n\x05ADm\xc7\x04\xc4&\x0b%\x08\xa5\x8b\x92J>\x9a\x997\
\xc94\x99i\x92\x99y/of\xde\xc7=.:Sc\xc9L\xd3\xe8\xa2\x8b\xfc\xe1r\xcf\xb9_\
\xe7w\xcf;\xdc\x07\xechG\x8f\xa2\x92\xc9d\xfa\xbe!\xa9a(\x8aB\x00N\xd4\x1b\
\x01\xe8\x00 \x11\xc0\xc6zz\xfaG\xc3\xe1)\x02\xd8Vc\xf1-\xaes\xea=\x19\x861\
\x0c\xe0J\xbd\r+\x8a\xb2\xe6\x05\xf6\x8c\xed\xdd\xfb\x021\xf6\'\x00e,\x1c~r\
\xab\x00\xf2f\x83B\x88v\xdc\xbd!\xea\x81\x1a\xf6+u\xbf\xa1+\x92$\x9d>\x1b\n%\
\xc4\xa7\n\xe7A\t\x08:\xc0\xc5\xd1\x9e\x9e\xcf\xc1\xd8\xf5c\x0b\x0b7Z\x01l\
\x9a\x01!D\x9b\xa2(\x97\x15E\xb9\x0c\x00\x1bl\xfb\xfe\xb5\xba\xae\xef\x0e\
\xc9r\'\x00H\x00\xb9\x18C\x90\xf3\xa7\x03\x92t\xc1\xcb\xf9\x17\xa3\xe1\xf0S\
\x0f\r \xcbr\xd10\x0cf\x18\x06\x03\x80\r\xf6\xa5\r\xd9\x00\x80\x0f\xbc^\xef\
\x87o./\x7f\x0f\xc6\xde\xd1\x89\xf4\xa2\xe3\xdc\xb6\x88F\xda\x18C\x80\xb1!/c\
#c==\xfd\x0f\x05\xd0B\x0c\xc0e\xfcS\x84\x9f\xd5\xc1\xee\x1c\xcbf\x7f"\xa2\
\xd7\x1c\xa0X6\xcds\x9a\x10#6\x80\x00\xe7\x83.I\xba0\xda\xd7\xb7\xfb\xff\x00\
h@\xfc\x81\xbb\xb5\xc0\xea\xcd\x04\x80\xd2\xc2\xc2\x8f\x9c\xf3\x93\x89\xdb\
\xb7\xef\x80\xf3OJ\x8es^\x00\x9c\x01\xcf\xcbBx7;l\xd3"l"\xde\xdf\xdf\xff\xb8\
$I\x07\x14Ea\xb5Z\xcd4Ms\xb6\xbb\xbb[\x1d\x1f\x1f\xb7\x01\xe0%\xc0\x81\xaa\
\xde\x02\x80D&S\x04pj<\x12\x19\x08r~x\xd5qn\x02P\xb6\x05088(///?\xd1\xdd\xdd\
}6\x16\x8b\x1d\r\x06\x83r.\x973\xd2\xe9\xf4h\xa1P\x18\x01p\xbd\xd9^"Z\xaf\
\xa7i\xfb\x19H\xa7\xd3\xbb:;;O\x1d9r\xe4d"\x91\x08\x08!P(\x14:\xae^\xbd\xfa\
\xe2\xe4\xe4\xe4J+\x00\x1b\x98&`X4\x99o\x06\x10H&\x93\xa7\xeb7h#"\xcb\xb6\
\xedA\x8f\xc7\xd3\x9e\xcdfa\x9a&8\xe7\x08\x85B~\x9f\xcf\x17m\x05O\x8c\x05Z\
\xcd7\xcd\x00c\xec\xcbz\x0f\x00\xb0,\xebF&\x93A\xb5Z\x85\xdb\xed\x86\xae\xeb\
PU\x15\xb5Z\xad\xd5\xf9\xc0\x03\n\xbd\x19@9\x95J=\xd6p\xf6\xed\xdb\xb7\xc7\
\xef\xf7\x9f\x99\x9b\x9b\x8bh\x9a\x16t\xbb\xddX__\xc7\xd2\xd2R\xa9\\.\xff\
\xd5*\x80 \x92\xa8\x05\xc5\x96j`~~~%\x1a\x8d~\xad\xaaj\xa8T*\x1dU\x14E\xd6u\
\xdd\xd0u\xfd\x97j\xb5z\xa9\xe5f\xc6|\x00@D\xe6\xb6\x01\x00\xd8sss7\xfb\xfa\
\xfa>\xaaT*\x178\xe7\x92\xe38U"\xba\x15\x89Dr\xd3\xd3\xd3\xcd\xe3\x13\xf9\
\x01@\x00\xb9\xff\x02\x00\xdc\xcdb\xc0\xe7\xf3\xed\xf2\xf9|\x92\xae\xebUM\
\xd3\n\x8b\x8b\x8b\x126\xf9G\xfc\x1e\x0e{+D\x89N\xce\xdde"8\xc0\xc4\xb6\x01\
\x0e\x1d:\xd4\xa6i\xda\xb3\xd1h\xf4\xcc\xc0\xc0\xc0\xe1@ \xe7r\xb9\xca\xcc\
\xcc\xcc\xaf\xab\xab\xab_\x1d<x\xf0\xda\xd4\xd4\xd4\xbd\x14\xff\xd6\xdb\xeb\
\xa90\xb6? \xc4\x90\xc4X\x9c\x88\xbe\xe1.\xd7{\xdb\x06\xc8\xe7\xf3]]]]\xaf\
\xc7\xe3\xf1\xa1x<\xeew\x1c\x07+++\x81\x89\x89\x89\xe1\xc9\xc9\xc9|>\x9f_H\
\xf5\xf6\xca\x96i\xe6\x01\x80\x01\xcf\x04\x88\xde\x92\x19{\xb9(D\xca\x10\xe2\
\xe3\x13\xaaZ\xda2\x00c\xac\xe3\xf8\xf1\xe3\xaf6|\xdb\xb6\xfd\x8e\xe3\xc4eYV\
2\x99\x0c,\xcb\x02c\x0c\xc1`\xb0]Q\x94^\xce\xb9\x8f\t\x11\tI\xd2\x80\xcc\xf9\
~\x01\x9c\xb2\x88\x0eT\x80\xef\x04\xe7\xef\x9e\xc8f\x97\x9a]nS\x00"\xb2\x18c\
\xdf\xde[$\xcb0M\xf3\xda\xc6w@\xd3\xb4\xfb\xdf\x81s\x0ec\xcf\t\xa2\x1c\x01?\
\x18\x8e\xf3\xb6-I\xd7Of2k\xad\xb2\xdb\xec\x13\xac\xa7R\xa9\xae\x86\x13\x8b\
\xc5\xba<\x1e\xcf\xfb\xb3\xb3\xb3}\x9a\xa6u\xb8\\\xae\xc6;\xb0V,\x16oX\x96\
\xb5&\x11\xbdQ%\xaa2!j\x8e$\xe9\xc9\xc5\xc5\xd5V\x81\x1f\x04\xf0/\xcd\xce\
\xce\xae\xc4b\xb1\xf3\xaa\xaav\x16\x8b\xc5\xe1\xf6\xf6\xf66\xc30\xf4r\xb9\
\xfc\xb3m\xdb\x17\xe7\xe7\xe7\xef\x0c\x01\xcb[9kG;z\xe4\xf47_C\x08\xf4X\xab\
\xf4\x92\x00\x00\x00\x00IEND\xaeB`\x82'
def getMoveUpBitmap():
return BitmapFromImage(getMoveUpImage())
def getMoveUpImage():
stream = cStringIO.StringIO(getMoveUpData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getNewData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x03\
\xa8IDATX\x85\xc5\x97\xcdN\x1bW\x14\xc7\x7f\xe7\xce\xf5\x076\xb8@0\t\r\xd9T\
\x95\xca&\x8bnP\xd9t\xd5M\xb7}\x016\xac\xfa\x10\xddv\xd9\x15\xddU\xea\x0b\
\xf4\r*e\xd1E%\xd4\xd0(HMhD]\xd2\x00\x01SC\x80\xf8s\xee=]\x8cM\x8d=\xe31\x94\
*G\x1a\xcd\\\x8d\xe7\x9e\xdf\xf9\x9fs\xee\xf5\x85wl\xf2\x7fL\xaaJ\x8e\xd3\
\xdc\x02\x19?\x8b\x0f&\x000\xaeA\xc7\xd4\x98n\xed\x8b\xd0N\x04X__\xff\xc2Z\
\xfb\xbd1f\xca\x18\x831\x06\xef=\xde{\xc20\xc49\x17{\xef=O\xe4\xdf0\xf3\xde\
\t\x93\xc53\n\x13\r\xac\xedt\xbf5\xad{\xf3\xc7\xdf~\xfa\xc9\xce\x0f\xd0\xfc]\
JT\x01\xec \x801\xe6\xbb\xb5\xb5\xb5)\x91\x88-\x0cC\xac\xb5\xdd\xc8t R\xbd\
\xfa\xac\xaf\x11\xfd\r\xd1\x1d\xd0W\xa0U\x84F\xf4N\x8a\xb9G\x8f\xea_"\xd9\nh\
A\xb5\xf5X\x84\xda\x10\x80snZD\xa8T*\x88\x08\xce9\x8a\xc5"\xedv\x9b\x1e\xd4\
\xe0=zn\x93\r\xb6\xc8\xdam\xac\xd9!c\xf7\t\xa4\x8aJ7\x03\xd2f\xf1~=\x07\xb9\
\x87\x00\x9cK]\xb5\xf9\xf3\x10@/*\x11\xb9\xbc\xfa\xc7I\x00\x81\x1ca\x83Clp@&\
\xd8\'0\x17H\xf0\x11\xc8\x9d\xee/j\xcc\x97\xb7@\xb2K\xe0/\xc0U\xb9(\xbe\x18\
\x02\xf0\xde\xc7:\x1c\x05\x02`\xed\x19\x81y\x83\x91\x1a\x81T\x91`\td\t1\x8b\
\xd1o\xd9#\xc8\x9c\x83\x1e?@\xec+\x08\xca\xd0\xb8;\x12`\\%z\x12\x8b41\xd2\
\x04\x99\x00\x99E\xcc\x03\x08>\xeeN,\x88\xf9\x03\xa4\x94A\xff.!R\xc0\x05S\
\xb1\x00qi\x88\x93\xbf\x1f )5Q\xa3]-\xde\x7fe\x93N\\\x11\x8et\x9eX\x07\x92G5\
\x8f\x92G}\x1d1\xb5\xa8\x13\\o\xe6=\xd4\x1f\x83\x9e\x85\x88;G\xb5N\xe0c\xbb`\
\x08 i|5\xdaY\x94\x19\x949<5\x02\xff2\x8a[\x0e\xbb\xefOp\x9d?\xa1\xe0^\x82;\
\x00W\xe5\xb4\xf5\xda\x8c\x02\xd8\xdc\xdc\x8c\x05\x88\xbb<wQ\xde\xc7\xeb}\
\x9c_\xc4\xf9"\xb8mpO\xba\xd76\x87GM\xd0\xf66\xda\xa9 \xfa\\\x16x\x9b\xa8\
\x00\xc0\xf2\xf2\xf2e\xff\xa7\xa7"\x8f\xe7\x03\x9c6\xa2\x8f\xb5\x882\x07>\
\x1a\xdbL\x89\xca\xeec\x96>l=E\xdbO\x99lnA\xccJ\xe8\x9cCU\xa3\xa8\xae\xd9\
\x92J\x19\xa7\x0f\x81\x02\xeag0r\nD\x00\x81L\xf3b\xe7\x19\x9f\x7f\x16\xfe\
\xc4dsK$\xaa\x8e\x91\n\x0c\xda85\x01s8fPN\xf0\x1c!z\x01\x92\xc5\x9b\x05~\xf9\
\xf5Gd\xb2\xfe\xa4\x7f\xce\xb1\xbb \xcd\xf9\xd5\xd6\xb3(eT\xcb\xd1PA)Po\x0c\
\x95\xdcx\x00\xfd\x11\xa6\xb5g\x92\xa9\xeaeJS\x01\x06w\xbd\x9e]wm\x18\xb5{&\
\x02\x84a\x18\xeb4\r(\x0e`\xd0\xc6V \xceq\xda:pS\x80\xc4\x85\x08`cc\x03c\x86\
\x0bg\\@cLjm\x0c\xcd\x1e\x86\xe1e\xaeVVVFnLI\x8e\x93\x14\x8a\xb3\x91)\x18\
\xdc\x9aG)\x11\xbf&\xa4\xdb\xc8\x14\x8c\xe34\xed]\x1aLl\x17$\xb5\xe1M\xc0z\
\xcbz\x92\xddH\x81\xdb\xb4k\xed\x05iv\x13\xe5n\x04\xd0\xdf\x19i \xaa:\x12l\
\x10\xa0$"g\xaaZ*\x95J\x88D\xe7\x02k\xed\x7f\xae\x0b\x80l6{\x0e\xdc\x03N\x80\
\xd6 \xc0\x14P\xde\xdb\xdb\xfbzuu\xf5+\x91\xee\x89\xe2\x96LU\x9b\xbb\xbb\xbb\
\xdf\x00\x0b@\x00\x1c\x00\xbe_\xc3\x1c0\x0f\xdc\x01\xa6\xbb\xe3\xe0\x96\xfc7\
\x89\x82}\x0b\xd4\x80\xbf\x80\x0b\x88?\x1d\xe7\x80|\xf7~[\xa7g\x07t\x88do\
\xd1\xf7?\xfd\x1fi[\xcc\xd5\x90zP\xe4\x00\x00\x00\x00IEND\xaeB`\x82'
def getNewBitmap():
return BitmapFromImage(getNewImage())
def getNewImage():
stream = cStringIO.StringIO(getNewData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getOpenData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x05MID\
ATX\x85\xed\x96Ol\x13\xd9\x1d\xc7?ofl\'v\xb6\x0eN\x1c\xa5E\x02\xad@P$\x96C\
\xb47\n\xe5\x92Ks\xe1\x88\xb6R9\xf5\xc4\xa9\xf7\x82\x84\xf6\x80\xe8\xb5\x87\
\xaa\x08\xf5\x86\xca\xa1Zi\x0fU\xa5\xa5\xda\xf6\xd0U\xcb\x8av\xd5\x06*6 \xc7\
I\x086\x8e\'x<\xf6\x8cg\xe6\xfd\xe9!\xb1\xeb\xb1M \xab\xaa\xbd\xf4;\x1a\xbd\
\xf7~\xbf7\xef\xfb\xfd\xfd\xde{\xf3\x1e\xfc\x8f!\x0er\xae\xac\xac\xfc\x00\
\xf8m&\x93\xe9\x8e\xf6\xb5,\x0b\xdb\xb6\xb1m[\xd8\xb6\x8d\xe38\xfd6\x96eaY\
\x96\rd\x87m\xc3\xe5\xad[\xb7\x04\x80s\xa0:!\xbe\x9c\x9e\x9e\xe6\xfe\xfd\xfb\
\x05)%\xc6\x18\x00\x8c1\x83\xb7\x8f\xd1\xb6eYd2\x99\xd4x}\xff\xf5\xeb\xd7\
\x076\x07\xe0\xea\xd5\xab\x7fL\x92\xe4\xfb\x93D\x84a8,(U\xbe\r\xc3\x82\xfaPJ\
\xa1\xb5V)\x01I\x92\x9c\xbfq\xe3\x06\xadV+\x15\x811\x86\xdb\xb7o\x03\xe0\xba\
.\x0f\x1e<x\'\xe2I8}\xfa4\xe7\xce\x9d\xc3\xf7}\x84\x10\x9d\x94\x00\xdb\xb6_W\
\xab\xd5\xf2\xf3\xe7\xcfS\x1f\x05A\xc0\xc9\x93\'\x91R\x02\xb0\xbc\xbc\x0cL\
\xce\xc4\xa4\xfa\xa8-\x08\x02\xea\xf5:\x96e\xd5G\x05\xb8\xc5b\xb1<77\x97\x12\
\xd0n\xb7YZZ"\x0cC\xda\xed6\x0f\x1f><t\xe4\x97.]J\t\xa9V\xab\xc4q\xfc\x97\
\x94\x00\xa0\xd6j\xb5\xbe\xeb\xban\xea\xe3\x8d\x8d\r\xae\\\xb9B\xab\xd5"\x8e\
c\x96\x96\x96\xde\x1a\xe5h}t\r\xad\xaf\xafw\xc30\xfcSJ\x80Rj;\x9b\xcdR.\x97\
\xd1Z\x03\x90$\t\x9e\xe7\xb1\xb8\xb8\xc8\xea\xea*/^\xbc\xa0\xd3\x19L\xdd\xa1\
q\xe6\xcc\x192\x99\x0c\x95JEi\xad\xd3\x02\xb4\xd6\xd5\x9d\x9d\x1d\xe3\xfb\
\xbe\x88\xa2\x08c\x0c[[[\xac\xac\xac\xd0h4\xe8v\xbb\x94J%J\xa5\xd2\xa1\xe7\
\xbd_&IB\xadV#\x8a\xa2\xe6\x9d;w\x9e\xa6\x04\x18c\xea\xbd^/Y\\\\\xcc\xfa\xbe\
\x0f\xc0\xa3G\x8f\xb8v\xed\x1akkkx\x9eG\xb7\xdb}\xe7h3\x99\x0c\xf3\xf3\xf3cB\
VWW\xc30\x0c\x7f1\xdcw \xc0u\xdd\xc4\xb2\xac\xac\xe7y\xb4\xdbmfgg\x91R\x0e\
\xb6f>\x9f?\xd4\xea\x0f\x82 eK\x92\x84g\xcf\x9e\xc5B\x88\xbbc\x02\x80W\xbe\
\xef\xeb\xb3g\xcfb\x8c\xa1R\xa9p\xf9\xf2e\xfe\xf9t\x8d\x9f}\x161\xfe;\xf9\
\x86\xc8.\x17\x81\xd7\x1f\xfexy\\@\xbb\xdd\x16\xae\xeb\xd2h4\xd8\xdc\xdc\xe4\
\xe8\xd1\xa3|\xfe\xe7U\x8e-\xce\xf0\x93\x8f\xce\x1f\x9e\xcc\xf4\x8bq\xf9\x06\
\x88"\xc9O\x7f\xf9\x87-\x07\xc0\xb2\xacW\x9e\xe7\xe5\x16\x16\x16\xd8\xde\xde\
\xe6\xd4\xa9St:\x1dZ!|\xa7<\x8b\xebG\xacnx\x07\xf1\xa4\x08\xc7m\xe9\xf6\xd1\
\xb9i^\xbf\xee\x80\xb1>\xb7\x00\xee\xdd\xbb\xd7\x8e\xa2\x08\xd7u\xa9T*\\\xb8\
p\x81f\xb3\xc9n (\x15\xf3\xb4\x03\x99"4\x801\xa0\xf7\x0f m\x0c\x1a\xb3\xdf\
\xde\xf3\x19\xdd\xef\xb3\xdf6{\xd2\x946d\x1d\x8b\xaf7\x9b]%\xe5\xef\xad\xfe\
\xc0B\x88V\xa1P I\x12fff\x10B\xd0\xe8\x18f\xbf\x95\xc7\x0f\xe5D\xc2\x14\xc1(\
a\xff\x19\x9c\x9c \x95!L$SY\x9b\xb5\x8d\xa6\xb0\x84\xf9bp\x1c[\x96\xb5\xdbl6\
\xcb\x9dN\x87L&\x83\xd6\x9a\xa6\xaf\x98\xc9gi\xf5\x12t\xff(\x9e\x98\xde\xfe1\
\xfd\xe6\xe9I\x94&\x91\x9a\xc2\x94\x83\xeb\x85D\xb1\x8c\xbf\xbc\xfb\xa3\xf5\
\xe1\x0c\xd4\x1c\xc7!\x08\x02\n\x85\x02\xb6\xed\xe0v$\xf9\xa9\x0ca\xac\'\xa6\
S\x0fE\xb7\x175\x83z\xdf\xa7\x94\xa1\x97(b\xa91@>g\xb3Q\xf3\x10\xb6\xf5\x05\
\x0c]H\xb4\xd6\xdb\xbb\xbb\xbb(\xa5\x10B\xb0\xd3\xd1\x94\x8f\x14\xe8%\x06\
\xa5\xf4X\x84\x93\x16\xdfp\x1f\xa5\xcd\xe0\x1dF\xd6\xb1Y\x7f\xe1vu\xac~\x93\
\x12\xa0\x94Z\x97R\x1a\xc7qD\x14El4c\x16\xe6\xde\xc3\x0f\x93At}B\xdd_\x07z\
\x7f\xae\x87\xa7c\x90\xa1q\x08\xb1w\xaf\xdb\xac\xb7l\xa9\xad\xcfF3\xf0\xaa\
\xd5jER\xca\xa9\x9b7o\xd2\x9e\xfb\x1e\x1f\x9e\xbfD\x10)\xa4\xdeK\xa52\x06\
\xa3\'\x0f\xfe.\xc896\xf5\xdd\x0e\xc6\x98\xdaW\xbf\xfa\xe8eJ\x00P\xeb\xf5z\
\xc9\xc5\x8b\x17\xa7vvvx\x18|\x9b\xfcT\x16/HH\xf6\xa7`\x14\x93\xae\\\x03\xdf\
\x04\x9b\xb0`\xf3\xe5\xae4\xda|\xd2\xb7\r\xef\x82\x86\xef\xfb*\x97\xcbQ\xf7\
\x14\xf6\xb4C\x8cE\x10\xff\xfb\x1f\x80\x99<\xf0\x81\xc4\xfb\x06\x01\xc4\x89a\
\xe3e\xb3\'5\xbf\x1e\x13 \xa5|\xe5\xfb\xbeS.\x97\xa9\x89\xf7\x99/\xcf\xe3\
\xf7$Z\x8dl\xbf7P\x9aqS\nB\x08Z\xcd6I\xac[\x7f\xbb\xfb\xc3\xbf\x8e\tx\xfc\
\xf8qx\xe2\xc4\x89\xdcW\xf5)B{\x8ecG\x8a\xf4b5>\xd2\x9bx&\x90\xa6\xfd\x86j\
\xb5\x16\x06\xbb[?\x07\xde\x03\xfc\x94\x80\'O\x9eD\xc7\x8f\x1f\x7f\xda0\xc7>\
@\x1a\x9e\xfc\xfd\xeb\x03\xc9\x0f\x03\x03\xca\x08\x81\x8a:\xffX\xfb\xf4\xe3\
\xdf\x01\xd9\xbeo\xf8\x82_\xcc\xe5r\xe5bi\xe1}\x91?R\x92I\x92\x1d\x1f\xea\
\xf0\xd0\xda\xc8^";Bi\x154+u\xa0\tl\x03jT\x00@\x0e(\x02\xd3@\x86\xff\x1c$\
\x90\x00\x1e\xd0\xe5\xedk\xf9\xff\xf8\xef\xe1_\x86IG\x92\xf3G\x04=\x00\x00\
\x00\x00IEND\xaeB`\x82'
def getOpenBitmap():
return BitmapFromImage(getOpenImage())
def getOpenImage():
stream = cStringIO.StringIO(getOpenData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getPasteData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x03\
\xbcIDATX\x85\xad\x97\xddk\x1cU\x18\x87\x9f3\x1f\xbb\xf9\xe8d\xf3\x01-+\xdeh\
+\xd9\xab\x82W\xd2J!`\xf0BH\x11\xf4F\x02\xb2\xe0\x1f\xa0\x11k\xc1?@\xd0\x80(\
HEP(B@oD\x11+\x94(H\xc5\x14o\x94bI\xa0\xea\xb6\x12\x8aH\xd8d\x9b\xcdnvv\xe7\
\xbc^\xec\xced\xbevw\xb6\xe6\x85\x813\xb3\xe7\x9c\xdf\xf3\xbe\xbf3g\xce*F\
\x8c\xe5\xe5\xe5;J\xa93i\xbf\x89\xc8\x1fkkkO\x8c2\x9f5*\x80R\xea\xcc\x85\x0b\
Ob\x18*\xf2\\k\xe1\xc6\x8d_S\xc1\x06\xce\x97\xa5S\xb9\xfc\xf2\xbb\x9d\x8e~\
\x1d0\x01\xce\x9e}\x8c\x83\x83z\xa4\xcf\xe4\xe4\tn\xdd\xaa\xf8\xb7\x9ee\x19\
\xef]\xbd\xfa\xd9\x9b\x99\x01._<\xb9\xea\x8a\xbc\x86\xa8DUvf\x9eeq\xf1\x1c\
\xa6y\xf4\xd3\xfe~-\xd2\xc7q\nA\xdb\xf3:\xac\xafo0W\xbd\x8eJ\xa4(\x1dK\xa9\
\xf7W\xbf\xf9\xf7\x12\x84,hkV^|z\xd6L\x0e\x80+\xbfC\xb1\xf8(\xb5\xda.\xaa\
\xd7all\xac\x9bAl\x80R\x8a\xa9\xa9iD6Xz\xaa\xc0x\xce\x88\xfc\xde\xee\x88\xf5\
\xf5\xcd\xbd\x15 \n \x10\x88\xfff\xbf\xc0\x03o24l\x93Ba\x06\x11\x01\x04\x91\
\xde\x08\x08\xda\xe1g\x13\x13\xdd\xb1?\xa9\x97\xc8\x1by\x00\xc6\xa93\xf7\xcf\
\x17<~\xd2FzVF\x00\xc2\xf1\xc0\x9b\xe4\xf2\xa5\xb7\x82\xfbr\xb9L\xa5r\x07\
\xcb\xb2C\xa2=\xf0\xf0M\x0f\xa0Z\xadb\x9a&+\xaf\xbe\x81\xe38\x00\xbc\xb3\xfa\
6:\xdcu\x10\x80\x1f\xb5\xda\x1e\x00\x8b\x8b\xcfp\xed\xda:Z\xebA\xdd\x830\x0c\
\x83\xf3\xe7\xcfQ\xaf\xef\xa3\xb5G\xa10\xdd\xc5K\x19\x9e\x00\xd0\x92\xc4\\ZZ\
baa\x81\x83\x83F&\x00\x00\xcb2\x83u2h\xee$\x80&\xe4\xd0Q8\x8e\x13\x943k\x88H\
\xc4\xa2L\x16\xa4@\x8e\x1ca\xd1h;\x03@\x1a\xe5\xd6\xd6\xd6C\t\x97J\xa5\x88h\
\xa6\n\xa4\xf9T*\x952\x8b\xf7\xcb>3\xc0\xa8\x16\x1c\t\xc3\xa0\xbd!\r(\x15 \
\xab\x05i\x99\x86\x05\x8b\xc5G\x98\x9ar\x1e\xc6\x82d\xa7\xb8\x05\xf1r\xf7\
\xcb>^\x81\xffm\xc1 \x9f\xa3e\x8f\xb7\xfb\xcf\x9di\x11nnnFD\x92\x82\xe1g0??\
\x1f\x81\xf0w\xd0\x91-\xf0\xb3\xeb\xbeN\xc3\x17[Z\xf6"r\x04\x90B0\xd4\x82\
\xe1\xc2\xe9\x10\x91\x1d\xb0\x07\x90\xcd\x82\xd0\x07\xc3\x9f$nA|"\xc7q(\x16\
\x8b1\x98\xee\xd9\xc04\x8f\xf6\xf5\x917"_p~\xbe\xc4\xf0\xec\xa3Y\x9b\xa6\x19\
\\\xfe\xa1e\xa4\xb7 ~\xf8\xc8*l\x18F lY\x16\x9dN\x87\xca\xbd\n\x82\xa4\x1e@\
\xfb.B\xffK6\xc8\xe7x\xb9-\xcb\xe2\xe3O?\x8a\xcc\x97\xb3s\xb8m7qt\x1b\n\xa0\
\xb5\x1e\xb0\xb0\x92>\x87\xcb}\xf1\xb9\xe7\x03A\xd7m\xf1\xc3\x8f\xdf\xe3\xb6\
Z\xd9\x00$\x00\xf0R\x05\xfb\xf9\xec_"\x12\x88Ww\xab\xdc\xfc\xe5g\x1a\x07\rr9\
;k\x05\xba\x02\x9e\xa7\xfb\n\xc7}\xf6\xdb\xae\xeb\x92\xcf\xe7\xd1Zs{\xf36\
\x7f\xdd\xfd\x13\xf7\xb0\x853y\x82V\xbb5\xda\x1a\xd0Z3>>\x918\xd5(\xa50\x0c#\
r\xf9\xaf\xda\xbd\xbf\xef\xd2j\xb5\xf8\xee\xfa\xb74\x9bMt\xdbcff\x9a\xd9\xd9\
9\xb6\xefog\xab\x80\x08\x8cI\x9d\x0f\xaf|\x90:`P\x08\xdd\x7f:^\xa7M\xce\xb6\
\xc1\xb6i\x1c6i\xdc\xdf\xc6\xf6\xeax\x03\x00\x0c\x01\xdd\xee\x88q\xfa\x94\
\xcdi\xf92\xfc\x11;\x9e0\x80\xd2\x18MW\x10\xd0\xc0)`\xc7\x07\xc8\xb7\\\xfd\
\xc9W\x1b\xbb\xaf\xa0T\xca\x91\xf4\x18C\xc4\xdbkx\x9f\x03\x13\x80\x19^\x17\
\xe3\xc0\x1cP\x00r\xbd\xeb8\xc3\xa5[\x87C`\x07\xa8\x02\xed\xff\x00\x10\xb0XI\
\xa09\x8fs\x00\x00\x00\x00IEND\xaeB`\x82'
def getPasteBitmap():
return BitmapFromImage(getPasteImage())
def getPasteImage():
stream = cStringIO.StringIO(getPasteData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getRedoData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x05mID\
ATX\x85\xd5\x95Yl\x94U\x14\xc7\xff\xf7~\xcb,\xdd\xe8\x12JK+\xb4bE\x8a .mR7\
\x12\x16\x83\x0eBb\x9a\x10\x83\xf1\x05\xa1\xf0\xe2\x93>\xca\x83/\x9a\xa8\xf1\
\xc1\x18[\x9e \x06\x03\x06\x0cK\x13pCQD\xa0-\x96\xb6`)HK;\xa5e:\xcct\xda\x99\
\xf9\x96\xbb\xf8\xd0\xce\xf81|C\x01\x93\x1a\xcf\xe4\xe4\xdc;\xdf\xbd\xf7\xff\
\xbb\xe7\x9c\x99\x0f\xf8\xbf\xdb\xfa\x16\xed\xd3\x9d;A\x1ft\xff\x03o\xfc\xc7\
\xc8\x8e\xceJ\xedx\xe3\xc7\xf0\xfd\'\x00\x04 K\xab\x1a^\xb0\x0b\xf43\x81f\
\x94\xcc:\x00\x00\xd4-^\xa5\xd7\xd7\xae^\xa2P\xadsc\xb3\xe7\xe1Y\x07\xa0D\
\xc1\xe2\xca\'\x94UOn\x9c\'(\xda\x02\xcd\xea3\xb3\x06@@@\xa1"l\x0f\xa0\xbct!\
\r4l\x9a\xa3Q\xfd\xc4\xfa\x16=0;\x00\x84\x80\x12\n\x02\x8a\x885\x88\x82\xfcB\
lx\xf1\x8d\x1c\xaf\xee\xd9\xf7j\x8b\xda4\xf3\x05\xee\xc3\x02\xcd\xf0\x03\xfa\
Z\xaa`\x13\x01\x9e\x86\xc4\\\n5\xaf)\xf0>\x86\xcd.pi\x83K\x0b9J1\x08S\xd1z\
\xfa\xabx<\x19\xfb\xfc\xd0[\xf6\xbb\xff\x1a`\xc3.\xcfJ\x10\xf9uy\xd1C\x9e\
\x9a\x05+rK\xf2KI\xae\xa7\x10~=\x1f\x94\xa8\x18Nv\x81I\x1bB\xda`\xd2\x86\x97\
\xe6B\x85\x1f\xdf\x9d=\x10\x8f\xc6\xa2\xad\xf3\x84\xb5\xb9e\x1b\xec\xfb\x06h\
\xdc\x0f\xdd\x1c\xd7>*\xf4\x95mY[\xf7\x9aoA\xd1\xe3H\xb2(L\x19\x87-\x0c\xd8"\
\tK&\xc1\xa5\x05.\x19\xb8\xb4`\xf0\t\x0c\x1b\xddP\x89\x17\xa5\xfa\xa3\xb8\
\xd0\xf3Gbt\xec\xc6y\tk\xdd\xe1-\x98\xb8g\x80\x97?\xf3\xcf\xd3\xbc\xf6/\xf5\
\x8f\xac\xablX\xfc\x8a\x87\xc3DR\x8cCH\x06&\xadtL\xa5>\x05\xd0\x9fhC\x92G\
\x01\x00\x1e\x9a\x8b\xf9\xdee\xb8\xd8\xd7c\x0e\r\xf5\xf7\x9b\t\xbb\xee\xd8\
\xdb\x88\xa54\xd4\xbb\x01\xe8>\xbb\xa5n\xf1\x9a\xaa\xe7j\x02\xca\x04\x0b\x81\
b\xaa\xd9\xa6\xc8I:\x12\xc77\x13,\x94\x16\x07\x80\x1c\xb5\x18\xb6\xcd\x10\
\x1e\x0b1\x10\x1ct\x8a\xdf\x15 \xf0\x85g\xd5\xfc95k\xea\x17\xadS\xa2v\x10\
\x00 \x89\n@\xa6?H\xcfR#\xe0\xa6\xd9\x97>\xa3D\xaf\x86\x87\x17\xe2\xd4\xb9\
\x9f\x13\xa6e\xbewx\xab\xfdI\xa6\x8e+@\xe3~\xe8\xd6\xb8\xd8\xbdzE\xa37\xce\
\xc3`\xd2\x04\x85\n\t\t"\t\xbcJ\x1e\x14\xa29v\x10\x04\x8d\x0b\x88\xd9\xa3\
\xb0D\x02\x00P\xea\xa9\x011\xfd8\xd5~2aY\xd6\x8e#\xdb\xec\xddnZ\xae\x00fD\
\xdb\\]Q[\x94\x93\x93\x83\x885\x08JTH\x00\xf9j)4\xe9C\xdfH\xa7\x0c\x86{\x93c\
\xb1\x90\x88L\x84\xfdo\xae}\x87J)\x10\xb2\xae\x02\x00\xca\xbcK\xc0\xe2\x14g:\
~M0\xce^?\xb2\xcd>\x94-\xd3\xae\x00\x92\xa2\xb6\xba\xb4\xd6;\xc9\xc6 $\x03\
\x01E\xbe^\x8a\xe1[W\xf1]\xdb\xfed\xcc\x88\xee\x85\x94\' d/\xa1\xda\xefR\n\
\x8c\x98\xbd0\xf88\xca\xbdK\x91\x8cq\xb4\x9d\xff-.!\x03G\xb6Z?e\x13\xcf\n@\
\x15\xfaXqn\x19\xb1D\x12\\2\xcc\xd1\xe6\xe3\xcap7?\xd6\xb6g\x84s\xd9x\xb4\
\x89\x9dN\xad\xdd\xb8K\x95\xa3F\x1f\xc2\xe65T\xf8\x96#:6):z\xda\'\xc0\xf9\
\xea\xc3M\xac\xedn\xe2Y\x01\x88D\xb5\xa6i0\xc5\x04T\xaa#i%p\xacm\xaf\xc5\x98\
Z\xdf\xba=\x19t\xae\x15R \xce\xc3\xa8\xf0-Gh$\xcc\xbbz;#\x82\xe3\xf9\xa3M\
\xec\xcf\x99\xc4\xb3\x02\x08!K\x18IBH\x0e\x0f\xc9A\xe7\x95\xd3I)\xf9\x87\xad\
\xdb\xad\xa0\xdbz&\r\\\x1f\x18d}\xfd\x97G\x04W\x9e=\xba\xcd\xb8~/\xe2@\x96\
\x97\x91B\xd0\x1dI\xdc\xc4\xd4OK\xe0\xdaH\xaf$\x9c\xb8v1\x00\\\xea\xeb\xb1\
\xfa\xfa/\xff\xa5X\xfaS\xf7#\x9e\x15\xc0c\xc8=\xe1\xc8\x80M@`K\x0b\xb6\x95`0\
\xcc\xe8\xf4z\x05S\x99K9\x82\xc1\xa1\xee\xf8\x15\xbb\xe1\x9b\x1d\xf1[\xd3\
\xcf\x95\xe9\xb53\xfe\xd5\xbb\x03\xd8\xf6\xc1\xe1\xa1\x9e\x0e.\x18,\x91@\x91\
\xd7\x17\xb9\xd9\x0b\x1d\xb8\xc3=\x9c\x89\xd6K_Z/\xfd\xf0\x01\x8c\x8cg\x9a\
\xc3\xd5l@\x8a\x1bT\xe7q\xd8+V\x8a\x11\xb5P\xd9\xe0\xf3\xe7k\x8c\xc6\x153v\
\xf3\xc2\xc5\xef\xe5\xb5\x8c\xdb+7:\xc4\xd1\x1b\xdd\xe0\x8e\x9b\xa7n\x9f\x99\
\x89T\xbc\r\xc2\t@\x9c\x87\x04;\xf8@e]<\xe4/*h\xc8\xc9\x9d\xa3NN\x06\xcd\xeb\
\xed\xf6\xc9\xc48\x88\x13\xc0\x9aL\x97$\x13\xc0)\xe8\xe6\x00 \x9d\x00\xd4\
\xb99\x1e\x07=w\xc0\xe8Z\xb0f\xfcJ^Aq\xb9?//\xaf\xb04::\xd8\xcdB\xc6d\x1aVs\
\x11\x9eI\xd4ii\x00g\x8a\x9c\xf4\xb4}_\xf2\xaa\xaf"r\xaar\xd1\xc2\x12_\xb9\
\xaf\xcaW1yk\xe0\x9c\x1de\xc6m\r\xe9\x9a^`\xfa=\xe5>\x96\x99\x19\xc8FL.\xffh\
Lt}\xdb\x7f.\xb7\\\x1d*\xa9*\xa8([F\xd5\xe8\xa8\x88\xc5G\xb9\r@8\x9cO\x1f\
\x9c\x9aK\xc7\\f\xb8\x00 2\x89o+Cf6\x00P\xe4\x82V.\xf3\xe9s+\x85\x8f\xeaR\t\
\rQ\xb3\xff\xaca ~\xc7\xe1\x99 NP6\x1d]\xeb\xe2,Cf\x07g\xa6\xda-\xe5\xae7\
\x9d\x1e\xf3i\xbfM\xecn\x96\x12\xcb\xecjdD\xd7\xfa\xe2\xceR\xb8\n<\x88\x91\
\x8cq\xb6f\x9b\xd1\xfe\x06%@\xa0\xd7\xa5<\xcc\xbe\x00\x00\x00\x00IEND\xaeB`\
\x82'
def getRedoBitmap():
return BitmapFromImage(getRedoImage())
def getRedoImage():
stream = cStringIO.StringIO(getRedoData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getRefreshData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x07\
\x9eIDATX\x85\xc5\x97kpUW\x15\xc7\xff{\x9f\xd7}%7\tI\xca3\r`M\x9b\x00\x02\t\
\xd0\x91\xe1\x03\x95\xa1\xb6\x8c\xd6\xe2\x14\r\x01\xac5\x04\xebt\xa6\xa3\x1f\
ZE\x1d\xfdb?8\xa3\xce\xa8\x1dF\n\x14!\xc0HAe\xd0Q\xe8\x94\x88H\xa7\x05B\x08\
\xaf\x88\x90\x17\x98\x84\x90\xe4\xbe\x92{\xefy\xed\xbd\xfcp\xef\xcd\x9c<H\
\xf2\xcd5\xb3\xe7\xdc}\xee\xda\xeb\xff[\xfb\xae\xbd\xee9\xc0\xff\xd9\xd8L\
\x9c\x96\x7f\xf3p\xa5\xcf\xa7}]U\xd8&\xe1\xcar\xd7\x95y\x8c\xc3e\x8c\xa5\x15\
\x85\xb5;B^\x14B\x9c6\xe3\xbe\x7f\xdd\xfe`\x8b=U\xac\x9a\x9d\x87\xbez\xe5\
\xbd\x1d\'g\x04\xb0\xaa\xfeh\x95n\xf0\xfd\x05!\xdf\xd3k\x97\x95\x85\x9e\x9c[\
\xa0\xe4\x07u\x18\xba\nWJX\xa6\x83\xa1\x84\x89\x9eG\t\xd1z\xb7?\xd9\xf3(A\
\x8ca\xbfe\xcb_\xb7\x1c\xd8\xd6=>^\xf5k\x877\x82\xb33\xcd\xfb\xb6\x8d\xea>\
\x16`U}\xe3\xab>\x9f\xfa\x9b-\x1b\xaa\x82\xcf,*aD\x80$\x02I\x82 \x82\x94\x19\
?\x02\xc0\x19\xa0r\x86D\xcaA\xcb\x7f\xfa\x9c\x7f^\xeer\x1c\x12G\x84\xc4\xee\
\xe6\xbdu\x83\x00P\xfd\xad\xc6\xb5\x9a\xca\xcf:B\x06\xa6\x05\xa8ih\xdc\x1c\
\xf4i\x87\xdf\xfc\xda\xb3\x81\x82|\x1fdV\x90@ \x99\x01q%\x81\x88 %A\x12 )\
\x03bh\x1cB\x12.^\xebv\xce7w\x9b.\xb0\x8b\x0b\xd9\xc6\x15~\xe1+_X\x12:q\xf6:\
\xbc\x00\xea\x84\xcc\xb7\xff~\x96\xc2\xf9\x81]/\xd7\x04\x8a\xc2>\x08"\x98\
\xb6\x8bH,\r\xd3v\xa1*\n\xf2\x82:\xc2!\x03D\x80#$lW\x82$\xc1\x91\x04\xcb\x11\
P8\xc3\xba\x15\x0b\xb5\x8a\xf2R\xed\xd8\x99\xd6}\xb1\x84\x19x\xf9\xb9JZ0;\
\x7fB\xb2\x13\x00\x10Tw\xae\xae\x9ag\xcc)\xc9\xc3\xf5{\xfd\xf4\xe1\xa7\x9dr0\
\x96\xe4\x8c1FD\x99m\x97$9\x87\xb3h^\x91\xb5\xfc\xe99\xa1\x8a\xf2b\xee\xd3\
\x18\x92\x96@\xcar\x10O\xd9H\xa4\x12\x08\x1a*\xea^\\\x11H\x9b\x0etCcB\xd2\
\xf4\x00:\xe7\rk\x96\xcc\xf3\x1d8uU\xb4\xf7D!$\x14\xce\x98e\xd9\xa2\x07\\lm\
\xde\xbb\xe3S\x00\xa8n8\x1en\xeb\x18X\xd3\xde\x13\xa9\x07h\xd3\x8a\x8a\xb9lY\
\xc5\\?\xb8\x82\xa4) $\x10M:\x18\xb1\x04\x9e\x08\x1bh\x7f8\x82\xca\xf9\x13w`\
L\rT7\xfc.\xe0W\xc3\x03\xcb*f\xebW\xdb\xfaP\x14\x0e\xa9\xaa\xca\xd17\x10\x8b\
*B\xfb\xcc\'\xfb\xb7D&\xab\x99\xa5\xaf\x1f)\xf4\x0b\xfe:g\xf8\xc1\xb3\xcb\
\xcb|\xcb+\xe6\xa8\x03q\x0b\xd1\x94\x03)\t\xb9\xcck\x16\x17\xe2\xe7\x07/P\
\xf3\xbem<\xb7\x96{\x03q\x99\xb7\x90\x80@\xeb\x9d^\xa5|^1+*\x08F\x14\x85\xf7\
\x03\xec\xd6\xe3\xc4\x01\xe0\xc6\x9e\xba\xe8\xa5\xbd\xb5\xefX\x0eU|\xdc\xda}\
\xf6\xe0\x9f\xaf`VHEYq\x00D\x99b\x05\x00\xce\x19\x18c\xd6\x18M\xefDr\xc9M\
\xdb\x85n\xf8\x86B\x01\xe3\\\xc0\xa7\x9fs\x1dq\x97HL8\xd3\x93Y\xcb\x81\xad\
\xbd\x0c\xf4\x89\xa2p[UUDGl\x10\x01D\x00c\x00g\x13\x0f\xdd\x98\x1aP\x1c\x12B\
a()\xcc\xfb[\xc0o\xdcf\x8a\x12/(\x08\x04\x06#\xc33\xea\x98\xd5\xf5\x8d\xdf\
\xce\xf3\xeb\xdf\xdf\xbai\xb9\xde\x1f7\x11K\xda\x90\xc8\xf4\x8a\xdc\x0eL\t`:\
\xd4\xad)\x0c#\xe9\xd4\xf9\xfe\x1e\xb7\xddU\x95\x91\xb8\x19\xb3\x84pF\xa6\
\x13_\xbd\xab\xf1%\xbfn\xfc\xf2\x1b_Z\xe97\x0c\rA\x9f\x8e\xb2\xe2\x00\xc0\
\x00\x06\x06M\xe1P\x18<8\x19\x9b\x80T\xf3\xea\xb1\x05W\x0e\xd6>\x98I\xc69[Y\
\x7f\xe89\x06\xfe\xd1L\xfd\xa7\xec\x84\xd5\xf5\x8d\xc4\x19\xd2\xb99\x11T\x02\
\xb4\xc9\x02\t\xa1\x97^{\x7f\xcb\xc0L\x85_y\xe5\xb8\xd2\x1d6\xcb.\xed\xdb\
\xd1\x99\xbb7\xb1\x11\x01x\xf7\xad\x17\xfcYqH"8BB\xcaL!u\xf6\xc5\xb1\xe7\xc4\
\xe5\x84\xed\xb8\xd5\xd3\x8975u\xfa\xd6\xaf_h\xe6\xe6\xeda\xeb\xcb\x0c\xfc\
\x8f\xf0$\xce\'[(\x89\xd0\xda\x15CKg\x14\xad]1\xdc~\x90@d\xc4\xc2\xa3h\n\xef\
\xfd\xa99\xe9Jwc\xcb\xfe\x1d\xf7\xa6L\x97\x88\xb9\x85ZY\xd3\xcd\xfe\xd9\xa3b\
\x0c\x02\xc84\xb1)\x01\xc6[QH\x87\xa60\xbc\xfb\x87K\xd2t\xdd\xba\\7\x9c\xca~\
\xf2S\xb0\xb6\xff\xa6\xd6)\x8c\xaa>\xba\xd1\xbf\xb8\xa9\xa9IUU\xed\xa5\xcc\
\xb7\xe9i\x00<\x85\xca\x180+OG*\xed\x801\xe2\nxmu\xc3\x91\xe2\xe9\x00\xba\n\
\xae\xe5GG\xe4\xe7A\xacRaTu3\xf2\xc4z\x02me\x0c\xb0\x15uxJ\x00\xef\x7f\x06\
\x11p\xb7o\x18\x92s|w\xfbZ\xac[Y\xb6\x993\xd6^\xb3\xf3\xf0\x9b\xab\xeb\x0eOl\
\xeeYK\t\xe7y]C\x15\xe3\xa8\x8c\xa5\xac\x9a\x13\x17\xda\x8e\xe4\xe7\x87\x14\
\xc6\xf9\xf0\x8d=u\xd1\x9c\xdf\xa4E(\x89\xc0\x19\xc3\xdcb?z#i8\x82\x10\x19\
\xb6\x11\x19\x06\x16-(\xd5\x8a\n\xf3\xb5\xd6\x7f\xf7\xbd\xd3\xd53\xf8\xb3U\r\
GO\xba\xae8\xa4Y\xb8|\xe9\xc8\xf6D\xf5\xdb\x1f\x86\xf3\x14\xe3\x8d\xe1\xa4\
\xfbv\xd5\x93y\x89\xd3\x17\xef\xcf\xbep\xads^0\xe8#_\xc0\xafQl\xf8\x8aWk\xd2\
c\xf8\xab\xefmD\xda\x16\x88%\xd2\xc8\x0f\xf9\xf10\x96F\xcfP\x1a\xfd1\x0bBJ\
\x18\x9a\x82\xc2\xa0\x06)\t\xdd=\x11\xf1\xa0o(\x19K\xa4\x0cE\xd5\x0c\xc6U\
\x10c`$I\xba.\x02\x01C\x14\x16\x85U#\xe0\xc7\x83\xae\x9e\xe1\x94e\x7f\xa7e\
\xef\xd6\xc6)w\x80\x08\xb8\xfb *\xdf?u\x95?\xb5`V\xfa\x85uO\xf9U\x85\x831\
\x02\x01HY.\x92\xa6\x0bEa(,\xcaWJK\xc3\xf9$\x81\xe1\xa4\x89\xa4\xe9\xc0\x15\
\x04\xce\x19\xe3\xaa\x0eARu\x05\x90\x88\'a[\xd6\x88\x15\xd5\x8e{\xb5\xc6\x03\
0\x00\xe8\xe8\x8b\xa1\xf1\xaf-\xc3C\xdd\x97\x9fw\x12\xe5\xcfu\xf4\x0e\xfdx\
\xe53\x0b\xb4\xc5\xe5\xa5j<\xe9 \x92\xb4\xe1\xb8\x04\xdb\x95\xb0\x1c\tI4\xba\
\x9c\xeb\x06\x14\x99\xe9\x1b\xb6\x10\x001\xa4Ri<\xea{\x98\xb6\xe2\xbd;n\x7f\
\xf0\x16C\xa6\xf6$\x00(\x1eq\x0e\xc0\x98W\xbd\xf9G\xadw\xfa\x93\x83\xf7[k;\
\xce\xfc\xa2\xa3\xff\xd6\x99;\xa6\x19\xfb\xcb0+\x9ds\xef~t\xbe\xdfP1\xbb0\
\xc4\xfd\x86\n\xc6\x90}.\x04Hf\xae\x92d6\x8f\xccnE\x06\xe3r\xe0\xe1@*9\xd0\
\xb1\xeb\xd6\xc9\xdd\x1fgu2\x0e\x80d\xa3\xe8\x80\x0e@\xaf\xaeoL\xa4c\xf7_\
\xbb}bwS\xee^n\xcc\xaa\xdc\xb0h\xee\x92\x17k}\x05\xc5\x1b\n\xf2\x02\xb2\xa4\
\xb8\xd0\x1f\x0c\xfa\x99\xaek\x00cp%`Y\x0e\x92\xa6\x8dX<)\xe2C\xd1\xb4c\xa7o\
\xf6^=\xf5\xc3\xfe\xeb\xa7;\x01\xd8\xe3\x86\xc5<\xd9\xeb\x00\x8c\xa5\xb5\xbf\
m\xb8q\xec\x8d\xa3\x00\x8cq\x00\xa3s\xdd\x1f\xce+\xa9\xfa\xe2\xe7\xc2\xf3\
\x97\xae\xf1\xe5\x97|\x96k\xbe\x12\x80\xa9\x921\x85\x93\x1c\x11\xc2\xee3#}\
\xe7\x87\xee\xfe\xe3\xef\x8f\xda\xceu\xe5\xc4\xbc\xc2\xd9\xab\xe9=\x05\x93\
\x8ae\x876\xee\xb3\x96\xad\x1f\xc5\xbb\x9d\x00\\\x00\x8eg\x8c\xcfxL\xf6\x00,\
o\x11:\x18{,sAE6\xb0\x9b]\x98\x13V0\xb6\x91Q\xd6\xd7\xeb\xefx\xd6y\xa1\xcc\
\xecu\xd2\x17\x93\xdc\xcf\xa1al\xb6\xe3\x85s\xc5\x94\x8b\x91\x03\xceAO\x06\
\x92\x13\x1e\xed\xb5\xd3=j)Y\xe1\x1c\x04\xf7\x00x\xc5s\x00^\x08\xaf\xb0\x9b\
\xbd7\xc1f\xf4\xac7\xc9\x1a\xef\xc8\x89{!&\xbe\x81<\xc6\xfe\x07H\x07\xb8\x9f\
\xc2hn\xc7\x00\x00\x00\x00IEND\xaeB`\x82'
def getRefreshBitmap():
return BitmapFromImage(getRefreshImage())
def getRefreshImage():
stream = cStringIO.StringIO(getRefreshData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getSaveData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x07jID\
ATX\x85\xc5\x97}l\x14\xc7\x15\xc0\x7f3\xbb\xf7\xe1\xb3\xcf\x17\x1f\x0e&\xfe\
\xc06N\x1cc\x02D\xb81\xf9\xc0\xd0\xf0i\xd2\x98P\x82\xd34*\x89PR\xaa\xf4\x9fT\
j\xaaP%-j\x155\x91h*\xf5\x8fV*\x8d\xfa\x0fU\xd5D\xa5Q\x9aF!T\x90\x94\xb4I\
\xaa\x94&\x18T\x01&\xe5\xcb\x18\xf7(\xf6\xf9|\xbb\xbe\xdb\xdd\x99\xe9\x1f\
\xe6\xb6\xb6\x81\xd0(T\x1d\xe9ig\xe6\xcd\xce\xfb\xed{o\xdf\xec\xc2\xff\xb9\
\x89\xab-h\xfe\xc2\xf3\x9d\x1a\xf1\x15)X\n"j\xc0A\xe9w\x8c\xe1\xe5S\xbb\xb7\
\xbe\xff?\x03\xa8_\xfdB\xda\xb2\xbd_U\x94\xc7\xef\\8\xaf\xa9\xbcqV\x95\xbc\
\xae\xb2\x8c P\x9c\x19\x1a\xd1\x07\xfaN\x142Y\xe7#e\xfc\x07\x06^\x7f\xe6\xec\
5\x05\xa8\xeb~\xbe>"\xcd\xfe\x8e[\x1as\x8b\x17\xb6T\t)gGl\x0bK\x82%%R\n\x84\
\x80CG\xcf\xaa7\xf6\x1f\xca\x17\x03\xd35\xf0\xc6\xd6C\xd7\x04\xa0\xbdw[4\x9f\
\x8f\xbf\xdd\xb5h\xce9\x84\xac?\x9b\x19\x9de\xdbve\xc3\r\xe9\xca\x85mu\xd2\
\x92\x92\xa2\xa7\xd0\xc6\x90\x88\xd9\x0c\xfd+\xc7/_{?\xa3}\xff\xd6\xd3o>s\
\xee\xd3\x02X\xd3\'\x12\x8dk\x9e\x98Q\x95\xb8k\xf0|\xae\xed\xf8\x99\xcc\xfe\
\x91Q\xf7\xd9\x91\x9c\xf3\xca\xc9\xb3\x99\xb2#\x1f\x9fk\xbe\xa9\xa9&bG,\x8a\
\x9e"_\xf0I\xa7\x12TT\xc4\xcbN\x0c\x8c\xcc\xc9\xf6\xff\xe1\xe5\xcf\xe4\x81\
\xfa\xde\x17\xcad\xbe\xb8\xcf\x92\xf2\x96\x00u\xcf\x99\xd7\x9f~g\xb2\xbe\xb1\
\xfb\xf9\x07gT\'~\xfe\xf0}wU\x8c\x8c\x15\t\x94\xc6\x18CM\xba\x9c_\xfcf\x7f\
\xee\xc2ha\xc9\xa7\r\x85\x9c<\xb0r\xc5[\x81\xd3\x81V\x1b\xa6\x1b\x078\xb5{\
\xeb\xaf\x87\x87\xc7\x7fw\xecDF\xd9\x96\xc4\x0f4E_\xe3\x8c\xfb,jo.\x97\xe8\
\xcd\x9f\xc68L\xf3\xc0\xec\xb5\xcf\xdeo\x0cm\xb7\'\x0f\xbe\xa4\xb5\xfeY$\x12\
\xf9\xbcm\xdbS G\xfd\x04\xe3\xd7-b\xd5\xd2\x0e\x86\x86\xf3\x04j"\x17\xe2Q\
\xc9K\xaf\xbe\xc5\xe7*\x8fb\x8c\t\xd7+\xa5\x94\xe7y\xbb\\\xd7}x\xf7\xee\xdd\
\xc5\xe9\x00\xf6\xe4\x816\xf2\xb4T\xeaoJ\xa9\x9fl\xda\xb4iyOO\x0fR\xcapCc\
\x0cy\xb7\xc8\xdd[^DJ\xf0\x02\x8d\xd6\x86\xb1q\x9f\x9at\ni\'\xd8\xb1c\x07\
\xc6\x98\xc9b\xed\xdc\xb9\xf3\x81\xbd{\xf7\xfe\x15\xd8\xfe\x89\x00\x9egNw\
\xdexfL\\\x10\x8bW\xaf^\xcdko\xf7\xf1\x8d\x1f\xbdy\x89\xdbl["\x84\xc0\xf3\
\x15Z\x1b\xb41\xc4"\x16N\xc1c\xee\xc6\x1fOY\xbb~Y+O\xf4\xaee\xdf\xbe}\x8f\
\x01?\x04\xcc\x94\xbd&\x0f2\xfb\x9e\xfeg\xac\xea\xfe/\xaf\\\xb92mY\x16\x9dsk\
\xf8\xce\xa3Kx\xf1\xd5>\x96\xdf5\x9f\xb2x\x14K\nlK"\x00\xcf\xd7hc\xd0\xda`\
\x04l\xdd\xb2\x16)\x05\xc6\xc0_\x0e\x9e\xe0\xdc\xd0y\xbe\xfe\xc5\x05\xa4R)\
\xe6\xcd\x9b\xd7\n,\xdf\xb5k\xd7\xde+\x02\\t\xf3\xa3\xdd\xdd\xdd\xe4\xf3y|\
\xdfgMg\x13\x99a\x97\xdf\xbf\xfbw\xee\xbec\x1e\x99\xec8n!\xc0`0f",n1\xe0\x95\
?\x1e\xc7-\x06t\xb4\xd6\x10x\x05\x0e\x1d9\xc9O\xbf\xb9\x1c\xad\x02\x1c\xc7a\
\xd5\xaaU\x1c>|\xf8k\xc0\x14\x80)\t\xb6a\xc3\x869555\xcb\xeb\xea\xeap\x1c\
\x07\xdb\xb6\xb1m\x9b\xcd\xf7.`Qk5\xef}x\x94\x99Ue(c\xc8\xe6\x8b\x0c]p\xf8\
\xc7\xe0(g\xcf\xe7\xc9\xe6\x8b\xb4\xd4\xa6\x88\xdb\xf0\xe7\x03Gy\xee\xf1\xa5\
\xa4S\t\xa4\x94\x8c\x8f\x8f\xd3\xda\xdaJ2\x99\xbc\xaf\xa7\xa7\xa7\xe6\x8a\
\x00B\x88\xc76n\xdc(\\\xd7-\x8d\xd1Z\xa3\x94\xe2\xc9\x87:\x99\x95\x8a\xf1\
\xde\x87\xc7I\'\xe3d\xc7\x8a\xe4\\\x0f\xa5\'BZ[]A\xf3\r\x95\xec}\xf70\xdfz\
\xa8\x83\xe6\x1b*1\xc6 \x84\xc0\x18\x83\xef\xfb\xacX\xb1"\x1a\x89D6_\x16`\
\xd9\xb2e\xb6\x10\xe2\x91\x8e\x8e\x0e\xf2\xf9<\xb6mc\x8cA)E\x10\x04\xa8\xc0\
\xe7\xbb\x9b\x17\x13\xc5\xe7\xe3\x93g\xb9m\xee,\xa2\x91\x89BZY\x1e\xe5\xb6\
\xb6\x1a\xdez\xf70=w6\xd2\xd96\x13\xa5T\xf8\xf6H)q]\x97\xce\xceN\x80-\xdb\
\xb6m\x93\x97\x00\xa4\xd3\xe9{\xba\xba\xbaj#\x91\x08\x85B\x01)%A\x10\xe0y\
\x1e\xc5b\x91b\xb1\x88V\x01\xcf>v;\xb9\xec(\x83C\x17X<w\x16\x89x\x84\xae\x05\
\xf5\xbc\xffQ?\xf5\xd516t5\x86\xeb=\xcf#\x08\x02l\xdb\xc6\xf3<\x92\xc9$\xf3\
\xe7\xcfo\xee\xeb\xeb[}\t\x80\x10\xe2\xabk\xd6\xac!\x97\xcb\x01\x10\x04\x01\
\xc6\x98p\x13c\x0cZk"\x96\xe1{\x9b;8\xf6\xf1i\x86\xb39\xee\xbd\xa3\x99\xfe\
\x13\xe7\xc8eGy\xbc\xa7\x15\xcf\xf3\xf0}\x1f\xdf\xf7\t\x82\x00)%J)\xb4\xd6\
\xb8\xae\xcb\xd2\xa5K\x91Rn\x99\x02\xb0n\xdd\xba\xda\xea\xea\xea\xee\x86\x86\
\x06\x1c\xc7A)E>\x9f\x07\xa0\xac\xac,,FJ)\x94RT\x96I\xb6mZ\xc8\x81\x83\xfd\
\xfc\xe9\xc0q\xfa\x8e\x9c\xe4\xc9\xde6,a\x08\x82\x00\xad5\x00\xf1x\x1c!\x04\
\xb9\\\x0e\xad5\x85B\x81\x96\x96\x16*++{z{{\xebB\x00\xdb\xb6\x1fY\xbf~\xbd\
\xed\xba.B\x88P\xc6\xc7\xc7\xf1}\x9f\xf2\xf2r\x12\x89\x04\xd1h\x14!\x04\x96e\
Q[]\xceS\x0f\xdeB\xdf\x91S<\xf5\xa5y\xcc\xac*\'\x1a\x8d\x92H$H&\x93$\x93I<\
\xcf\xc3q\x1c\xa4\x94H)\x89D"(\xa5X\xb2d\x89\xad\x94z\x14.\xd6\x01!\xc4C\x1d\
\x1d\x1d\xb8\xaeKmm-\xd9l\x96\xb1\xb11\x84\x10\x04A\x10\xf6-\xcb"\x99L\x96\
\xea\x05\xb7\xa7\xd3\xfc\xf6\x07\rT\x94\xd9H)\xd1Z\xa3\xb5\x9e\xc8\x17\xad\
\xc3{\xa4\x94\xa4R)\xaa\xab\xab\x19\x18\x18\xa0\xb3\xb3\x93={\xf6l\x02\xbe_*\
D7%\x93I\xc6\xc6\xc6\x18\x1c\x1cDk\x8d\x94\x13\xe9aYVhPk\x1d\xe6Ci\x1c\xb3\
\xc1\xf7\xfd)\x9e\x8b\xc5b\x08\xf1\x9fs\xce\x18C>\x9f\xc7q\x1c\xb4\xd6\\\x7f\
\xfd\xf5h\xado\x0c=\x00\xc4<\xcf\xc3\xb6\xed\xf0\xc6\xc9\x07P\xe9Z\x82\xba\
\x92~\xb2\xae$\x93u\xa5\xdc\x18\x1a\x1a\n\xfba)\x0e\x82\x80c\xc7\x8e]\xb2\
\x81\xd6z\xfa\xe9v\xd9\xb9\xffv-@mmm\x08\x1b>R\x89\x08\xe0\x83\x0f>\xa0\xaf\
\xaf\x8f\xfe\xfe~\x06\x06\x06\xc8d2d\xb3Y\x1c\xc7\xa1X,\x86E\xa6T\xe5\x8c1\
\x0c\x0f\x0f\xd3\xd0\xd0@6\x9b\xa5\xa1\xa1\x81\x91\x91\x11f\xcf\x9eM6\x9b\
\xa5\xa9\xa9)\xbcN\xb7\x15\x02LvW)\xeeWj\x97s\xfbt\xdd\x95\xc2\x01\xa0\x94\
\xfad\x0f\xc4b\xb1)\xf1\xfe$\x90\xe9\x9bO\xd7]\xaeM\xb6\x15\xe6@\x89\xca\x18\
C{{;J\xa9\xb0\x84\x96\\\xae\x94B\x081\xa5\xce_\rf\xfa\\\xe9\xd56\xc6\xe8\x10\
\xc0\x18s\xf2\xd4\xa9SM7\xdf|s\x988\xa5\xe4)\xf5\xaf&uuuh\xadioo\xc7\xf3<\
\xda\xda\xda(\x14\n\xb4\xb6\xb6\xe28\x0e---\xe4r9R\xa9\x14\x83\x83\x83\x18c\
\x8e\x02q\x1b\xc0u\xddoo\xdf\xbe}\xbbeY\xf5W\xf5\xfb5hA\x10\x0cd2\x99\xe7\
\x80h\xa9Z\xc4\x81\x19@\x15P\tD\x81\xc85\xb6\xeb1\xf1#T\x00r\xc0y\xe0\xfc\
\xe4\xcfr\x01\x94_\x948\x97\xf9k\xfa\x8c-\xb8(\x05 \x7f\x11\x88\x7f\x03\xca\
\x8e`}\xd3\xc8\x9b>\x00\x00\x00\x00IEND\xaeB`\x82'
def getSaveBitmap():
return BitmapFromImage(getSaveImage())
def getSaveImage():
stream = cStringIO.StringIO(getSaveData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getTestData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x04\
\xb6IDATX\x85\xed\x96\xdf\x8bUU\x14\xc7?{\xefs\xee\xbds\x7f\x8fsgL\xafS\xe2P\
:\xa3\xa5F\x0c\x04%\x12\x89/\x12\x05F\xfe\x01>\xf4\xe0K\x11\x08\xbd\x04FH\
\x08\x86\x11\xf4\xe3\xc1\x1e\xea\xc1\xfcE\x84`\xa6\xa9 \xa5e\x9a\xa4d&\xa1\
\x8e\xe38WG\xbd3\xf7\xf79\xfb\xec\xdd\xc3\xb93\xfe\x9a\x9b\xa3\x11\xbd\xb8`\
\xb3\x0fg\xaf\xb5\xbe\xdf\xf5\xddko6<\xb4\x87\xf6?\x9b\xb8\xdf\x00k\xad\xe8\
\xee\xeen\xffr\xf3\xd0~\xc7\x11YG\x81\x0e,&`\xd3\x92e\xe6\x83\xff\x92@v\xeb\
\x17\xe2l\xf7\xa3*\xe78\x11f\xe5]\x1c%q\x1c\x8b\xb5\x01\xe7\x07<FF4\x87~0_\
\xbd\xbb\xde\xbe\x0e\x14\xa7\x92\xd4\x99"\xf8j!\xc4\xaa\xa7\x17\xcb\x9c\x15I\
\xa4H\xe3\xf9m`\x15\x16\xf0u\x8di\xedU:;J\x0c\\\xb4\xcb\x85\xa8o\xb7\xd6\xbe\
\x05\x9c\xb8Wb5\x05\xf0\x97\x85\x10\x1f\xcf\x993\'\xdb\xd7kS\x9d\x9dq\x94\
\xea@9\t\xa4\x8a\xa1\x9c(\xc6D1\x06\x1a\r\x9f\xc3?\'c\x17\x07\xa7\xc7K\xa5\
\xd2\x12c\xcc\x08\xf0\xc7\xbf!\xb0\xc8u\xdd\xf7{zz\xda"\x91\xc8\x8c\x1b7b<\
\xff\x9c\x87Rq\x94\x94H%P\xca\x12\x18C\xa0=\xb4_e\xdd\xfa\x99H)\x93\x99LF\
\x8e\x8d\x8d=e\x8c\xf9\x05\x18~\x10\x02Y\xe0\xf8\xec\xd9\xb3\x13\xae\xeb\xce\
\x10B0r\xcd\xc5Q\x96yOT\x902@\xca:R\xd6\xf0u\x19\xdf+\xb3uG\x9cS\xbfG1\xc6 \
\xa5L%\x12\tU,\x16\x17\x03\xdf\x00\xf5\xfb%p"\x9dN\xfb\xd9l\xb6[\x88\xb0W\
\xad\xb5\x9c>\x13\xa3w\xee\r:s\xa3HYA\xc92\xda+\xe3\xfbU\xdeyo\x16\xc6\x98\t\
_\xc7q\x92@\xadZ\xad\xce\x00\xf6N\x06"[\xa1\x0b!\x92]]]\xed\xd6Zn\x1dZk\xb6l\
K\x10\xe8\n&(\x81-cL\x8d-\xdb3\x18c\xb8\xd3?\x9b\xcd\xe6\x85\x10/\xb5\xc2iu\
\nV\xa4R\xa9\xa4\x942c\xc3rn[<}&\xc1\xe1\x9f\x12\x94*\x11b1\xc13\x8b\x8al\
\xdd\xd9u\x178\x80\x94"\xab\x94\xaaj\xadW\x00\xbb\xa6J`e[[\xdb5kmF\x00\xb7\
\xc2[k\x11B\xb0\xe6MMO\xcfc8\x8e\xc3\xd0\x90$\x16+\x11\x8f\xc7\'\x80\xed-\
\xa4;::\xea\x85Ba\xe5d\x04Zn\x81R*:\x9eh|\x8cK|\xe5\xca\x15r\xb9\xdc\xc4~\
\xe7r9*\x95\xca\xc4\xfa\x9d[\xa1\x94\x8a\xa6\xd3\xe9Iq&U\xe0\x93\x0fY\x9a\
\xcf\x0f\xe5=?,_4e\xb0\x84\xdf{\xf6E\xf8\xfe\xe04<\xcf\xc3\xf3\xbcP\xb2WJ,\
\x7f\xf1Z\xa8\x96\x05\x04\x88\xe6\xec\xba\xe4\xf7\x1d\x80M\x1f\xdd\x8d5\xa9\
\x02\xc6\x84\xdb\xae}\xd0\x1a<\x0f\x1a>4\x1aP\xad\xc1\xc2\'\x03\xe2mu<\xcf\
\xa3\\.\x13\x89T\x99?OS*C\xad\x16\xfay\x1ex>\xf8~\x98\xab)\xd6\xd4\x08\x9c\
\x1b`\xcd\xe5a\x08tH\xc0o\x92\xf0<h\xd4A\xca\x80U\xaf\x0e\xa1\xf5\x08\xa5R\
\x89g\xfb\xafc1!x\xfd\xa6\xaf\xdf\x8c\x1d\x1a\x86X\x8c\xedS&\xb0a#\xbbt\x00:\
\x08\th?\x1c\r\xaf9\x1ap\xecx\x02\xc8\x92J\xa58\xf1[\x82F#\xfc\xdfh\x82\xebf\
\xf5Z\x87\x85l\xd8xw\x03\xb6$\x0006JA\xc8\x9b\n\xf8\xfe-\xb3\x0fG\x8e\xdel\
\xaa\xcb\xc3Q.\x0cD\'\xd6\xc6}\xb5\x06)\xa0^g\xac\x15NK\x02W\x0b\xac\xae\xd5\
\xc2~\nt\xa8F\xd0\xac\xe8\xc7#)\x80\xdb\x8e\xdc\xd7\xbbr\xa1Z\xfa\xa6r\xd6\
\x86=\xa3\x14\xebZ\xe1\xb4\xbc\x8a\x0f\x1f\xe5\xcf\xf9\xbd\xbc\x96H\xd0)DSJ\
\x03\x17\x06\xa2\xec=\xd0~\xdb9\x9f\xb8\xaa\x81Y3=\x84\x00%C"\xdf\xeeu\xde8x\
h\xc1g\x85B\xc1\xbf/\x05\xfa\xfb\xfb\xd3\xbb\xf7-\\\xf6\xd7y\x86\xae\x17\xc1\
q \x08\xe0\xc8\xd1T\xab\x10\x8e\x1eK\x13\x98\x90\x88\xe7\xc3\xf9\x0b\x0c\x0f\
\x0c\xce\xdf&\x84p[\xc5\xb4$\xd0h4\xa41F\xec?\xb8h\xe9\xb9s\xea\xf3\x0b\x03\
\xe0:0x)R\xb2w\\\xcd\xe3f\xad-m\xdd\x11\xbf4:\n\x85\xabr\xe7\xee\xefz\x97\
\x18c\x841\xa6\xe5\xcb\xeb\x1f\x9fd}}}\x8f8\x8e\xd3\x06\xb8s\x1f?\xfbBG\xb6\
\xb6\xf6\xd3\xcd\x02\xa5T\\)\x15K$\x125k-\x95J%\x1e\x04A-\x08\x82\x88\x10\
\xe2\xd7|>\xbf6\x95J\x15#\x91\x88\x1f\x04A\xed\xd4\xa9S\x85\x07"\x00\xb0`\
\xc1\x82\xe9\xd6\xda\x88\x94\xd2\xf5}\xdfq\x1cG\x16\x8b\xc5\xf4\xe8\xe8\xe8\
\xdb\xe5r\x19\x80d2I6\x9b\xdd\x93\xc9d\x0e\x04A\x10\xb8\xae\xab\xad\xb5\xfe\
\xc9\x93\'\x07\xef\x95\xff\xa1=\xb4\xff\xdd\xfe\x06Tz\x8b\xbc\xd8c\xeb\x9a\
\x00\x00\x00\x00IEND\xaeB`\x82'
def getTestBitmap():
return BitmapFromImage(getTestImage())
def getTestImage():
stream = cStringIO.StringIO(getTestData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getUndoData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x05\
\xaaIDATX\x85\xd5\x97klT\xc7\x15\xc7\x7fs\xef\xdd\xf5\xda^\xdb\x18;\x88\xf2\
\x067\x01\x1a\'$\xc4T\x8aM)\xc1\xc9\x07\xac\xa8\xe9\x87\x88$R\xe2\x00!\tAj\
\x91"%RZ\xa2\xaa\x8f\xa8\xfd\x10\xa9B\xfeDKx\xb6Q\xdeo\xa1\xa0\xe6\x81\x8c\r\
\x08\xec\x90\xd4\xe088\x10\xe3\x801v\xec]\xaf\xf7u\x1f3\xd3\x0f\xf6\xdd\x98\
\xcdbl\x17U\xea\x91\x8ef\xee\xee\x99\xf9\xff\xee\xcc9s\xef\x85\xffW\xd3\x1a\
\xd1\xb4\x9b?\xb6\xec\xa0\xe4\xbf\x99GLe\xd0\xb1\xfd\x14+\xcd[JQ\xebjJ\xef\
\xda@t\xaa\x00\xc6d\x074\xee\xe5&\xa5E\xdb\x9c\x9b\x1fX%\x0c\xcb\x99\xaa\xf0\
\x94\x00\x9avQgY\x85\x9f\xddX\xfd\x9b\xb93\x16\xfd"\x80@\xff\xcf\x00\x9a\xf7\
\xf2|h\xda\x827+k_,,,\x0e\x8b)\xee\xde\x0f\xcc\xbaV\xc0\xc1}\x14\x16\xc1+\
\xa5\xb3\xd6\xdc=\x7f\xf9\x93!\xed\xb6#\xed\xaf1\x82\x0b\xb9\x1e\x10\xe3\x02\
\x1c\xdd\xcd\x02%\x8c\x7f\xcd[\xb6e~\xf9\xbc\xda\x80L\xb7\xa0e\x1f\x08\xeb\
\xba\x88\x8f\x0b\xd0\xbc\x8b5\xe4\x85\xdf^Z\xfd\xa7\xa2\x82\xd2yB\xa6Z\xd1*\
\x0e\x98\x8c\xec\x9c@ \xcc\x80A\xcf\x91}D\x11t)\xc5\x1bBq\xa0f\x03\x1d\x13\
\x05\xc8y\x1bM{y\xba\xa0\xf8\xc7/\xdcT\xf3\x87\x90\x15\x90H\xfb\x0ch\x1b\xad\
\xedL\x1b\x08\xaf\x055\x8c\xf4\xa2x\xce\x00N\xfc,\xb1\xfeo\x9c\xbe\xee\xcf=-\
\x9d\x8f<\x97M\xab\x1e\xa3\x7fR\x00\x9f\xee&\x144\xd9S:\xab\xf6\xbe\x85\xcb\
\x9f\niy\x1e\xed\xf5\x02\xa0\xf1@\xbb\xa3\x00\x0e(\x17\xad\x86\x90^/\xa8a\
\x84\x11\xc6\xcc[\x8a\xb0\xe62p\xe1\x0b\xaf\xf7\xebci\xd7\x8dl^Y\xcf?\'\x04\
\xd0\xb4\x93"\x11\xa0y\xf6\x92\x87\x17\xcf\\|_\xd0K\xb5\x80\x8e\x93)\x14-\
\x01\x0f\xad]Pq\xdc\xc4!\xb4\xfc\xe1\r\n\xa3\x14+\xff\xa7h\xf36\xba\xda\xdeK\
\'\x06\xbf<\x1a\x1ddm\xddV\xec\\\x00\x992\\\xb9\x89a\x0c^\x1a\xb8\xd8$];\x82\
a\x95\xa3U\x1aT\nT\n\xad\xd3hm\xa3e\x04\'~0\xa78\x80V\x11\xdc\xc4Adr?\x15\
\xcb\xef\rM\x9fs{u\xc94\xfe|\xcd\x15\xf0\xed\xf0\x1e\xd6ZyE\xaf/\xae~\xae \
\xbf\xb0Dx\xe9\x13\xa0=@\xa1e\x0c7\xf11\xe8\xd4\xe8\xd0\xf1\xcf!a\x96a\x15?J\
\xe7\xf1w\xd3\xe9\xc8\xd9U5\x1b9qM\x00\x80\xe6}T\x82\xf9IE\xd5\x96\xe9%3\x97\
\x99^\xa2\x11\xe5v\xe3\xa5\x8e\x83N\x02\x10*\xdf\x06Z\xa2u\nt\x1a-\x07\xf1\
\xd2m(\xe7\x0c 3s\x99y\xb7\xe0\xc8\x15\xba\xf3\xf8\xae\xf3%!\x16W\xae\xe3\
\x8a\xe3;\xe7IXS\xcf)\x90\x95\xe7Z\x1b\xbe\xeci\x7f\xd9\x11\xd6\x8fPnWF|\x04\
]p\xeaP\x83\xd7~xO\xf2\xec\xc9\xf7\x87/wu:\x1eU\xe4\x95\xfd\x1a3\xb4"\x13&\
\xed\xd3\xe4\x87\xb5()\x9f\x7fC$\xc5C\xd9ZW=\x8ak\xea\xe9\xb3=V\\>\xf7\xc9\
\x87\xe7Z_MY\xe1\xfb1CU\xdf\x07h\x17\xcfKK7\x11]=\xdcw\xf1\xc1K\xe7N>\xdbyl\
\x7f\xcf7\x9f\xedN\ns\tV\xc1\xea\xd1\xe9\x152\xd5BQ\xf9\xdc\x02\x03~2a\x00\
\x80\xbb6\x90\xbe\xf3\x11~\x19\x1f\xec\xda\xde\xd1\xfc\xf7\x946n\xc5*\xbc\
\x1b0\xd0jd5\x1cA\xe7\xca\x8d\x1c\xf8\xd9z\xb6G#,\x8a\xf5G\xffz\xba\xf9\xb5\
\xb4\xe7\x15`\xe6\xdd\x0c\x80\x92\x03\x04C\x960\x0cn\x9d\x14\x00\x80\x10\xe8\
\xeaz\x9e\xb3\x93COt4\xefO\xda\xa9\x00\x81p\x1dZ%\xc8N\xc2\xba\xad\xd85\xeb\
\xd9\xa6\xa4\xfd\xdb\xeeS\x8dI#\xb0\x00D\x10\xad\xe2X\x01\xd0p\xe3\xa4\x01|[\
\xb9\x9e\x7f(\xd7\xbd\xa7\xb3\xe5\xc3\xa1\xc8\xe5\x8bj\xa4\x12r[O>\xdbS\xf1\
\xf8\xb7C\xdf\x9d\xd7\xc2\x9c\x81\xc0@\x88\x04ZS6e\x00\x80\x9a\x8d\x1c\xf1\
\xd0\xb7_\xfc\xea\xe4\xb7=_5\xba(\x9d\xb3\x8a\xd6\xadC*\xcd\xdfR\xb1~W\x88 \
\x18\x05\xa4\x87\xfb\x11\x82\xf6\xa9\x02\x88\xd1X\xf3\xe7\xf5tw\xb6s\xc7\xc0\
\x85\x0b\'\xb4V\xc1\x7f\x9f!\xc0\xc8C\xcdw\x130\x94b\xd8sS\x1e(\x84\xc8ch0jK\
\xc9\x07\x13\x05\xf0\x05- 0\xeaA\xdf\x1f\xfd\x0b\xa9_5Pg\xdb\xbct\xe12\x01 o\
\xec\xff@\xd0\xf1(V\xca\x10h\x89\xeb(\xa2\x97b\x9e\xe9\xb2#[(\xfbq\xec\x0b\
\xfb.\xb2\xfa\x19omE\xd4>\xc93\xc5\xc5\x88QQ\x18\xc9J\xbdb\tV~\x88\xcd\xa5e\
\x96\xad\xb4J\xf6\x9e\xed3l\xa5^\\\xf381\xfc\xda\xcc\x01`L\xc0\x05Y0\xb1XF\
\xd8o\xd5\xd3\x1bX\x1b\x0e[N _u\xf4v\x0fN\x8b\x0c\xd9G\xb7\xed\xa4\x81\x91\
\xed\xf1\xc7* \x93D\x82\xef\xdf4|\xcf\xbe\x1e\xfb\xdbX\x10\xdf\x14\xa0v\xfe\
\x9e;\x97T\x88M3\xe6\x05\x93\xc9\xa8S<\xd0\xafO\xff\xae\x81\x17\x9a>\'\xe9\
\xc7\x8c\xba\x04\x94?\xc1\xd5\x84\'\xd2\x17\x80\xaa\x98\x83\xf9\xfcfV/Z@Ua\
\x11v2A\xe0|7\x1f=\xb3\x9d\xc6K\x97p\xb2\x85\xfd\xfe\xd8\x15\xc8u\xd7\xb9V\
\xe1\x8a\x15\xa8\xba\x85\x82UwP\xb6l)\x15\xb3\xca\x99\xedH\x86\xa3Qz?=B\xdb\
\xcew\xf8.\x87\xa8\x7f-\xc7n\xc1x\x10W$b8\x8c9}:V\xc5l\x82\x95\x8b(\xbca&\
\xf9\xf9`y\xe0\xf5v\x13oj#\xd6\xda\x81\x9d%\xa8\xb3@\xa4\x9f7\xb9\x0e\x92\tU\
A\x8e\xb1c\x13\xd1\x17\xccn=\xb2\xce\xefk\xbd[\x8f\x0706f\xac\xb8\xdff\xaf\
\xc0U\x05&kW\x13\xf7mR\x9fk\xff\x01\xb0\x15\x95\x01\xe1\xb3\xd2\x81\x00\x00\
\x00\x00IEND\xaeB`\x82'
def getUndoBitmap():
return BitmapFromImage(getUndoImage())
def getUndoImage():
stream = cStringIO.StringIO(getUndoData())
return ImageFromStream(stream)
#----------------------------------------------------------------------
def getIconData():
return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\
\x00\x00szz\xf4\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\x00\x04\
\xc3IDATX\x85\xa5\x96klSe\x18\xc7\x7f\xe7\xf4\xb4]/g\xed.t\xed`\x97v\x1b#0\
\x1c\x97\x989\x83$\x88\xe0%& \x015x\xf9d\xfc\xc2g\x8d\x891~2&F\xe3%j\xbc\xe0\
\x07\xa31!\n*\xc1\xcb\x07\xa31fH6\x184DC\x028\x1cs[\xef\xac;mO\xd7\x9e\xf3\
\xfaa\xa1Z\xd6\x8e\xae{\xbe\xf5}\xcf\xf3\xff\xff\xde\xe7}\xfa\xe4\x85\x1a\
\xe2\xe8\xa7\x9f\t\x80\xafO}/FF\xcf\x89\xd1\xf3aQK^-!U\xdb\xf8\xf9\xb7\x11\
\xa1\xaa*\x00\xaa,\xb07\xaf\xc1\x85A*\xa7a\x172Wgc\xec\xde\xb9\xa3j~\xad\xa1\
\x00|~\xec+\x11\x0c\x06iT\xc0\xaa(444\x90\x93m\xb8%\x83\xb9\xa2 \x93\x8cqy:\
\x8a\xa6i\xc4\xe31\xfaB\x1d(v\xf7j\xbd\xff\x03\xd8\xbc\xb1\x17\x8f\xdd\xc1\
\x95S\xc7\x89\xcdD\xe8>\xf8\x18\x91\xc8,\x92\xe2d|\xfc<\x81\x80\x1f\xd5iEQ\
\x14,\x16\x0b\xa9\xb4\x8e\xc5\xb2\xb0D\xec\x87\x9f~\x11\xa1.?\xc9\xb4\xce\
\xf0\xf6\xad\xd2\x17_\x9e\x10\x87\x0f\x1dX\xb6J\n\x80\x963X0\xf2\\\x0e\x87\
\xb9~v\x8cdk;9\xbb\x93\xd4\xf4$\xed\xbd\xfd\xe89\x1d=\xa7\x97\x92"\xb3\xb3H\
\xf2R]\x9f\xcbN\x93\xc3\x8d\xc3\xddBt\xea\xbaH\xe8E`\xb1w\x1ey\xf8\xa1\x8a \
\x12\xc07\'O\x08\x9b\xc3\xcb\xc4\xc4_K>\x88D\xa2\xcc\\\xfb\x9b\x8f?\xf9p\xd9\
\x93\xbc\xf2\xda\x1bb\xd7\xbd\xbbp:\x9cx\xad\x12\x97#i\xce\x9c\r39\x97g\xef\
\x96\x0e\xfa7l\xa0Q\x16t\xaf\xef\x97\xbe\xfd\xfeG\x91\xd3u\x1e?\xb0_*\x89\
\xbe\xf7\xd1\xd1\xb2\xce>\xf2\xec3\xa5\xbd\r\xad\xad\xa2\xbb-\x80\xcb\xabr|\
\xe4tE\x90W_\x7fS\x0c\x0f\x0fc\x9a\x06\xa6i\xf2\xeb\x99\x8b\x8c\xfd9\xc5`\
\xef\x1av\xdc9\x80\xc3\xd1\x80\xa6it4{\xf0\xf9|\x8b\xbd\x95\xc9T\xff\x17\xdc\
\x1a[}-\xa2=\xd0\xc1w\xe1\x0bUs\xde~\xff\x03\xe1r\xb9\xf0x<d\xb39\x92\x89\
\x04\x81\x8e\x10\x89\x99+D\x13\xf3\xf8\xac2\x9d\x83\xdb\x18\x18\xd8\x84\x0b\
\x83l6[;\x00\xc0\xdd\x9dkEks3\'/\\\xbcm\xde\x91\xc3O\n\xb5\xa5\x89\xf6\x9e~\
\x9a\xfcmXmVdI\xc2\xedV\xf16yq:\x9cLMM\xad\x0c\xa0\xd7\xeb\x11\xc1\xe6\x16lj\
c\xd5J\xec\x1b\x1a\x12*\x82lZ#2w\x83\x91\xe9i\xe9\xc5\xe7\x9f\x13n_;\x8d\x8d\
*6\x9b\r\x8f\xc7\x83\xaa6r\xed\xda\xc4J\xec\x17\xe3\x8e\x16\xaf\xd8?\xb0\xa9\
\xea$|\xea\xae!\xb1\'\x14\x12[\xdb\x02U\xbfy\xe1\xa5\x97\xc5;o\xbd[\xdf4\xf5\
\xbb\xddb\xe7\xbau\x15\x93\x1f\xdd\xb6E\xec\x0ev\x8b\xc15m5\x8b\xd75J75\xb5\
\x88\xbe\xb5~\xec\xaa\x87c\xbf\x9f\x96\x9e\xb8g\xa7@\xd3\xb8\x1e\x8b2\x97/\
\x10\x8eEj\xd6\xad\x0b\xa0Ku\x88.O\x0b}\xc1ndY"\x9b\xce\xf0O"Nl>\xc3\x1f\xa9\
\xc4\x8a4\x95z\x00rE\x899=C*\x9e\xa4A\x12$2:1]\'Q\xc8\xafXK\xae\x07 \x9a\xcb\
J\x99\xa2I|>\xcd\xc2B\x81\x9cQ \xbf\x90gV\xd3V\\\xd1\xba\x00\x00\xec\x92\x82\
V\xd01\xad6\x8a\x86\xc1\x95\x1bsu]g\xdd\x00\xb9\xa2\x8ebJ\x88|\x0eI\xaa\xffY\
P7\x80Ci S4\xc9\x1a`\x91\xeb\x96\xa9\x1f\x00\xc0b\xb1\xa0XL\xac\xab\x90Y\x15\
\x80a\x18\xcc/\x18\xab\x91X\x1d\x80U\x11\xa86\x0b\xbaY\xac[\xa3\xe6906>*\xe2\
\xc9\x0c\x00\x0e\x9b\xe0\xc8\xbeC\x98B\xa1P\x94V\xd5\x035\xb5\xef\xd8\xf8\
\xa8\xe8\xed\xe9-[\xdb\xd1\xdd\x87U\x11x\x1dn,&\x18\xed~\x0e\x1c~\x9a\xf5\
\x1b{\x00\x08\x06\xbb\x97\xe8$\x93)\xd2\xe94\xf7\xefy\xa0\xe4{\xdb\nT2/\xcc/\
VB\x96el\xc8\x18\x98\x98\xa6Y\xda\x1f\x1a\x1a\x02`br\x96H$\x82\x85\xc5\x07l\
\xbe(\x93O&\xca\xb4\x96\x05\xa8d\x0e`U]\x00\x14\r\x19\xab"\xd0r\x05l\xb2\x8c\
\xb3\xc9S2\x07\x08v\xfa\tv\xfa\xcb\xc0\xcf]*\xb7\xac\x0806>*\x00*\x99\xdf\
\x14\x02\xb8Q(\xd0\x86\x1b\xc5b\xc1\xedv\x13\n\x85\x96;\x0f\xa9\x9c\xc6\x83\
\xf7\xed*\xbb\xf6%\x00\xd5N]\x96\xe4v\xb2\xf7\xd0A\x00T\xb3H"\x9bg\xe3\xe0f\
\x06\x82\x9dUs\xe6\xb3E\xc6\xc3\x97\x96\xac\x97\xd1\xd4b~3\x84\x10\x14\xb5l\
\xe9:n\x17SW\'\xd8\xbcm\xfb\x92\xa6/-\xfc\xdf\\\x08\xb1\xaa\xf9~k\xc4\xe3q\
\xfaz\xd6W\x14,]A\xf8B\x98T2UQ\xc0\x17\xe8*\xfb\xed\xb0\x95\xbf\xb8|\xbe\xb6\
e\x01\xaa\x99C\x9d/\xa2\xe5br&ZF\xd7\x19\xf0-\xeb\xf1/\x93I\xe0\xa6\xdf\x1f+\
\xe2\x00\x00\x00\x00IEND\xaeB`\x82'
def getIconBitmap():
return BitmapFromImage(getIconImage())
def getIconImage():
stream = cStringIO.StringIO(getIconData())
return ImageFromStream(stream)
def getIconIcon():
icon = EmptyIcon()
icon.CopyFromBitmap(getIconBitmap())
return icon
|