 920cffda2d
			
		
	
	920cffda2d
	
	
	
		
			
			* initial work on procedure patch * more flexibility load default procedure for version 5 patches add args for procedure add default extension for tokens and bsdiff allow specifying additional required extensions for generation * pushing current changes to go fix tloz bug * move tokens into a separate inheritable class * forgot the commit to remove token from ProcedurePatch * further cleaning from bad commit * start on docstrings * further work on docstrings and typing * improve docstrings * fix incorrect docstring * cleanup * clean defaults and docstring * define interface that has only the bare minimum required for `Patch.create_rom_file` * change to dictionary.get * remove unnecessary if statement * update to explicitly check for procedure, restore compatible version and manual override * Update Files.py * remove struct uses * Update Rom.py * convert KDL3 to APPP * change class variables to instance variables * Update worlds/Files.py Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com> * Update worlds/Files.py Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com> * move required_extensions to tuple * fix missing tuple ellipsis * fix classvar mixup * rename tokens to _tokens. use hasattr * type hint cleanup * Update Files.py * initial base for local items, need to finish * coo not clean * handle local items for real, appp cleanup * actually make bosses send their locations * fix cloudy park 4 rule, zero deathlink message * remove redundant door_shuffle bool when generic ER gets in, this whole function gets rewritten. So just clean it a little now. * properly fix deathlink messages, fix fill error * update docs * add prefill items * fix kine fill error * Update Rom.py * Update Files.py * mypy and softlock fix * Update Gifting.py * mypy phase 1 * fix rare async client bug * Update __init__.py * typing cleanup * fix stone softlock because of the way Kine's Stone works, you can't clear the stone blocks before clearing the burning blocks, so we have to bring Burning from outside * Update Rom.py * Add option groups * Rename to lowercase * finish rename * whoops broke the world * fix animal duplication bug * overhaul filler generation * add Miku flavor * Update gifting.py * fix issues related to max_hs increase * Update test_locations.py * fix boss shuffle not working if level shuffle is disabled * fix bleeding default levels * Update options.py * thought this would print seed * yay bad merges * forgot options too * yeah lets just break generation while at it * this is probably a problem * cap required heart stars * Revert "cap required heart stars" This reverts commit 759efd3e2b14ec2855082de041ac989cb9c5d500. * fix duplication removal placement, deprecated test option * forgot that we need to account for what we place * move location ids * rewrite trap handling * further stage renumber fixes * forgot one more * basic UT support * fix local heart star checks * fix pattern --------- Co-authored-by: beauxq <beauxq@yahoo.com> Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com> Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
		
			
				
	
	
		
			817 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			817 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| consumable_addrs = {
 | |
|     0: 14,
 | |
|     1: 15,
 | |
|     2: 84,
 | |
|     3: 138,
 | |
|     4: 139,
 | |
|     5: 204,
 | |
|     6: 214,
 | |
|     7: 215,
 | |
|     8: 224,
 | |
|     9: 330,
 | |
|     10: 353,
 | |
|     11: 458,
 | |
|     12: 459,
 | |
|     13: 522,
 | |
|     14: 525,
 | |
|     15: 605,
 | |
|     16: 606,
 | |
|     17: 630,
 | |
|     18: 671,
 | |
|     19: 672,
 | |
|     20: 693,
 | |
|     21: 791,
 | |
|     22: 851,
 | |
|     23: 883,
 | |
|     24: 971,
 | |
|     25: 985,
 | |
|     26: 986,
 | |
|     27: 1024,
 | |
|     28: 1035,
 | |
|     29: 1036,
 | |
|     30: 1038,
 | |
|     31: 1039,
 | |
|     32: 1170,
 | |
|     33: 1171,
 | |
|     34: 1377,
 | |
|     35: 1378,
 | |
|     36: 1413,
 | |
|     37: 1494,
 | |
|     38: 1666,
 | |
|     39: 1808,
 | |
|     40: 1809,
 | |
|     41: 1816,
 | |
|     42: 1856,
 | |
|     43: 1857,
 | |
| }
 | |
| 
 | |
| star_addrs = {
 | |
|     0x770401: 0,
 | |
|     0x770402: 1,
 | |
|     0x770403: 2,
 | |
|     0x770404: 3,
 | |
|     0x770405: 4,
 | |
|     0x770406: 5,
 | |
|     0x770407: 7,
 | |
|     0x770408: 8,
 | |
|     0x770409: 9,
 | |
|     0x77040a: 10,
 | |
|     0x77040b: 11,
 | |
|     0x77040c: 12,
 | |
|     0x77040d: 13,
 | |
|     0x77040e: 16,
 | |
|     0x77040f: 17,
 | |
|     0x770410: 19,
 | |
|     0x770411: 20,
 | |
|     0x770412: 21,
 | |
|     0x770413: 22,
 | |
|     0x770414: 23,
 | |
|     0x770415: 24,
 | |
|     0x770416: 25,
 | |
|     0x770417: 26,
 | |
|     0x770418: 65,
 | |
|     0x770419: 66,
 | |
|     0x77041a: 67,
 | |
|     0x77041b: 68,
 | |
|     0x77041c: 69,
 | |
|     0x77041d: 70,
 | |
|     0x77041e: 71,
 | |
|     0x77041f: 72,
 | |
|     0x770420: 73,
 | |
|     0x770421: 74,
 | |
|     0x770422: 76,
 | |
|     0x770423: 77,
 | |
|     0x770424: 78,
 | |
|     0x770425: 79,
 | |
|     0x770426: 80,
 | |
|     0x770427: 81,
 | |
|     0x770428: 82,
 | |
|     0x770429: 83,
 | |
|     0x77042a: 85,
 | |
|     0x77042b: 86,
 | |
|     0x77042c: 87,
 | |
|     0x77042d: 128,
 | |
|     0x77042e: 129,
 | |
|     0x77042f: 130,
 | |
|     0x770430: 131,
 | |
|     0x770431: 132,
 | |
|     0x770432: 133,
 | |
|     0x770433: 134,
 | |
|     0x770434: 135,
 | |
|     0x770435: 136,
 | |
|     0x770436: 137,
 | |
|     0x770437: 140,
 | |
|     0x770438: 141,
 | |
|     0x770439: 142,
 | |
|     0x77043a: 143,
 | |
|     0x77043b: 144,
 | |
|     0x77043c: 145,
 | |
|     0x77043d: 146,
 | |
|     0x77043e: 147,
 | |
|     0x77043f: 148,
 | |
|     0x770440: 149,
 | |
|     0x770441: 150,
 | |
|     0x770442: 151,
 | |
|     0x770443: 152,
 | |
|     0x770444: 153,
 | |
|     0x770445: 154,
 | |
|     0x770446: 155,
 | |
|     0x770447: 156,
 | |
|     0x770448: 157,
 | |
|     0x770449: 158,
 | |
|     0x77044a: 159,
 | |
|     0x77044b: 160,
 | |
|     0x77044c: 192,
 | |
|     0x77044d: 193,
 | |
|     0x77044e: 194,
 | |
|     0x77044f: 195,
 | |
|     0x770450: 197,
 | |
|     0x770451: 198,
 | |
|     0x770452: 199,
 | |
|     0x770453: 200,
 | |
|     0x770454: 201,
 | |
|     0x770455: 203,
 | |
|     0x770456: 205,
 | |
|     0x770457: 206,
 | |
|     0x770458: 207,
 | |
|     0x770459: 208,
 | |
|     0x77045a: 209,
 | |
|     0x77045b: 210,
 | |
|     0x77045c: 211,
 | |
|     0x77045d: 212,
 | |
|     0x77045e: 213,
 | |
|     0x77045f: 216,
 | |
|     0x770460: 217,
 | |
|     0x770461: 218,
 | |
|     0x770462: 219,
 | |
|     0x770463: 220,
 | |
|     0x770464: 221,
 | |
|     0x770465: 222,
 | |
|     0x770466: 225,
 | |
|     0x770467: 227,
 | |
|     0x770468: 228,
 | |
|     0x770469: 229,
 | |
|     0x77046a: 230,
 | |
|     0x77046b: 231,
 | |
|     0x77046c: 232,
 | |
|     0x77046d: 233,
 | |
|     0x77046e: 234,
 | |
|     0x77046f: 235,
 | |
|     0x770470: 236,
 | |
|     0x770471: 257,
 | |
|     0x770472: 258,
 | |
|     0x770473: 259,
 | |
|     0x770474: 260,
 | |
|     0x770475: 261,
 | |
|     0x770476: 262,
 | |
|     0x770477: 263,
 | |
|     0x770478: 264,
 | |
|     0x770479: 265,
 | |
|     0x77047a: 266,
 | |
|     0x77047b: 267,
 | |
|     0x77047c: 268,
 | |
|     0x77047d: 270,
 | |
|     0x77047e: 271,
 | |
|     0x77047f: 272,
 | |
|     0x770480: 273,
 | |
|     0x770481: 275,
 | |
|     0x770482: 276,
 | |
|     0x770483: 277,
 | |
|     0x770484: 278,
 | |
|     0x770485: 279,
 | |
|     0x770486: 280,
 | |
|     0x770487: 281,
 | |
|     0x770488: 282,
 | |
|     0x770489: 283,
 | |
|     0x77048a: 284,
 | |
|     0x77048b: 285,
 | |
|     0x77048c: 286,
 | |
|     0x77048d: 287,
 | |
|     0x77048e: 321,
 | |
|     0x77048f: 322,
 | |
|     0x770490: 323,
 | |
|     0x770491: 324,
 | |
|     0x770492: 325,
 | |
|     0x770493: 326,
 | |
|     0x770494: 327,
 | |
|     0x770495: 328,
 | |
|     0x770496: 329,
 | |
|     0x770497: 332,
 | |
|     0x770498: 334,
 | |
|     0x770499: 335,
 | |
|     0x77049a: 336,
 | |
|     0x77049b: 337,
 | |
|     0x77049c: 340,
 | |
|     0x77049d: 341,
 | |
|     0x77049e: 342,
 | |
|     0x77049f: 343,
 | |
|     0x7704a0: 345,
 | |
|     0x7704a1: 346,
 | |
|     0x7704a2: 347,
 | |
|     0x7704a3: 348,
 | |
|     0x7704a4: 349,
 | |
|     0x7704a5: 350,
 | |
|     0x7704a6: 351,
 | |
|     0x7704a7: 354,
 | |
|     0x7704a8: 355,
 | |
|     0x7704a9: 356,
 | |
|     0x7704aa: 357,
 | |
|     0x7704ab: 384,
 | |
|     0x7704ac: 385,
 | |
|     0x7704ad: 386,
 | |
|     0x7704ae: 387,
 | |
|     0x7704af: 388,
 | |
|     0x7704b0: 389,
 | |
|     0x7704b1: 391,
 | |
|     0x7704b2: 392,
 | |
|     0x7704b3: 393,
 | |
|     0x7704b4: 394,
 | |
|     0x7704b5: 396,
 | |
|     0x7704b6: 397,
 | |
|     0x7704b7: 398,
 | |
|     0x7704b8: 399,
 | |
|     0x7704b9: 400,
 | |
|     0x7704ba: 401,
 | |
|     0x7704bb: 402,
 | |
|     0x7704bc: 403,
 | |
|     0x7704bd: 404,
 | |
|     0x7704be: 449,
 | |
|     0x7704bf: 450,
 | |
|     0x7704c0: 451,
 | |
|     0x7704c1: 453,
 | |
|     0x7704c2: 454,
 | |
|     0x7704c3: 455,
 | |
|     0x7704c4: 456,
 | |
|     0x7704c5: 457,
 | |
|     0x7704c6: 460,
 | |
|     0x7704c7: 461,
 | |
|     0x7704c8: 462,
 | |
|     0x7704c9: 463,
 | |
|     0x7704ca: 464,
 | |
|     0x7704cb: 465,
 | |
|     0x7704cc: 466,
 | |
|     0x7704cd: 467,
 | |
|     0x7704ce: 468,
 | |
|     0x7704cf: 513,
 | |
|     0x7704d0: 514,
 | |
|     0x7704d1: 515,
 | |
|     0x7704d2: 516,
 | |
|     0x7704d3: 517,
 | |
|     0x7704d4: 518,
 | |
|     0x7704d5: 519,
 | |
|     0x7704d6: 520,
 | |
|     0x7704d7: 521,
 | |
|     0x7704d8: 523,
 | |
|     0x7704d9: 524,
 | |
|     0x7704da: 527,
 | |
|     0x7704db: 528,
 | |
|     0x7704dc: 529,
 | |
|     0x7704dd: 531,
 | |
|     0x7704de: 532,
 | |
|     0x7704df: 533,
 | |
|     0x7704e0: 534,
 | |
|     0x7704e1: 535,
 | |
|     0x7704e2: 536,
 | |
|     0x7704e3: 537,
 | |
|     0x7704e4: 576,
 | |
|     0x7704e5: 577,
 | |
|     0x7704e6: 578,
 | |
|     0x7704e7: 579,
 | |
|     0x7704e8: 580,
 | |
|     0x7704e9: 582,
 | |
|     0x7704ea: 583,
 | |
|     0x7704eb: 584,
 | |
|     0x7704ec: 585,
 | |
|     0x7704ed: 586,
 | |
|     0x7704ee: 587,
 | |
|     0x7704ef: 588,
 | |
|     0x7704f0: 589,
 | |
|     0x7704f1: 590,
 | |
|     0x7704f2: 591,
 | |
|     0x7704f3: 592,
 | |
|     0x7704f4: 593,
 | |
|     0x7704f5: 594,
 | |
|     0x7704f6: 595,
 | |
|     0x7704f7: 596,
 | |
|     0x7704f8: 597,
 | |
|     0x7704f9: 598,
 | |
|     0x7704fa: 599,
 | |
|     0x7704fb: 600,
 | |
|     0x7704fc: 601,
 | |
|     0x7704fd: 602,
 | |
|     0x7704fe: 603,
 | |
|     0x7704ff: 604,
 | |
|     0x770500: 607,
 | |
|     0x770501: 608,
 | |
|     0x770502: 609,
 | |
|     0x770503: 610,
 | |
|     0x770504: 611,
 | |
|     0x770505: 612,
 | |
|     0x770506: 613,
 | |
|     0x770507: 614,
 | |
|     0x770508: 615,
 | |
|     0x770509: 616,
 | |
|     0x77050a: 617,
 | |
|     0x77050b: 618,
 | |
|     0x77050c: 619,
 | |
|     0x77050d: 620,
 | |
|     0x77050e: 621,
 | |
|     0x77050f: 622,
 | |
|     0x770510: 623,
 | |
|     0x770511: 624,
 | |
|     0x770512: 625,
 | |
|     0x770513: 626,
 | |
|     0x770514: 627,
 | |
|     0x770515: 628,
 | |
|     0x770516: 629,
 | |
|     0x770517: 640,
 | |
|     0x770518: 641,
 | |
|     0x770519: 642,
 | |
|     0x77051a: 643,
 | |
|     0x77051b: 644,
 | |
|     0x77051c: 645,
 | |
|     0x77051d: 646,
 | |
|     0x77051e: 647,
 | |
|     0x77051f: 648,
 | |
|     0x770520: 649,
 | |
|     0x770521: 650,
 | |
|     0x770522: 651,
 | |
|     0x770523: 652,
 | |
|     0x770524: 653,
 | |
|     0x770525: 654,
 | |
|     0x770526: 655,
 | |
|     0x770527: 656,
 | |
|     0x770528: 657,
 | |
|     0x770529: 658,
 | |
|     0x77052a: 659,
 | |
|     0x77052b: 660,
 | |
|     0x77052c: 661,
 | |
|     0x77052d: 662,
 | |
|     0x77052e: 663,
 | |
|     0x77052f: 664,
 | |
|     0x770530: 665,
 | |
|     0x770531: 666,
 | |
|     0x770532: 667,
 | |
|     0x770533: 668,
 | |
|     0x770534: 669,
 | |
|     0x770535: 670,
 | |
|     0x770536: 674,
 | |
|     0x770537: 675,
 | |
|     0x770538: 676,
 | |
|     0x770539: 677,
 | |
|     0x77053a: 678,
 | |
|     0x77053b: 679,
 | |
|     0x77053c: 680,
 | |
|     0x77053d: 681,
 | |
|     0x77053e: 682,
 | |
|     0x77053f: 683,
 | |
|     0x770540: 684,
 | |
|     0x770541: 686,
 | |
|     0x770542: 687,
 | |
|     0x770543: 688,
 | |
|     0x770544: 689,
 | |
|     0x770545: 690,
 | |
|     0x770546: 691,
 | |
|     0x770547: 692,
 | |
|     0x770548: 694,
 | |
|     0x770549: 695,
 | |
|     0x77054a: 704,
 | |
|     0x77054b: 705,
 | |
|     0x77054c: 706,
 | |
|     0x77054d: 707,
 | |
|     0x77054e: 708,
 | |
|     0x77054f: 709,
 | |
|     0x770550: 710,
 | |
|     0x770551: 711,
 | |
|     0x770552: 712,
 | |
|     0x770553: 713,
 | |
|     0x770554: 714,
 | |
|     0x770555: 715,
 | |
|     0x770556: 716,
 | |
|     0x770557: 717,
 | |
|     0x770558: 718,
 | |
|     0x770559: 719,
 | |
|     0x77055a: 720,
 | |
|     0x77055b: 721,
 | |
|     0x77055c: 722,
 | |
|     0x77055d: 723,
 | |
|     0x77055e: 724,
 | |
|     0x77055f: 725,
 | |
|     0x770560: 726,
 | |
|     0x770561: 769,
 | |
|     0x770562: 770,
 | |
|     0x770563: 771,
 | |
|     0x770564: 772,
 | |
|     0x770565: 773,
 | |
|     0x770566: 774,
 | |
|     0x770567: 775,
 | |
|     0x770568: 776,
 | |
|     0x770569: 777,
 | |
|     0x77056a: 778,
 | |
|     0x77056b: 779,
 | |
|     0x77056c: 780,
 | |
|     0x77056d: 781,
 | |
|     0x77056e: 782,
 | |
|     0x77056f: 783,
 | |
|     0x770570: 784,
 | |
|     0x770571: 785,
 | |
|     0x770572: 786,
 | |
|     0x770573: 787,
 | |
|     0x770574: 788,
 | |
|     0x770575: 789,
 | |
|     0x770576: 790,
 | |
|     0x770577: 832,
 | |
|     0x770578: 833,
 | |
|     0x770579: 834,
 | |
|     0x77057a: 835,
 | |
|     0x77057b: 836,
 | |
|     0x77057c: 837,
 | |
|     0x77057d: 838,
 | |
|     0x77057e: 839,
 | |
|     0x77057f: 840,
 | |
|     0x770580: 841,
 | |
|     0x770581: 842,
 | |
|     0x770582: 843,
 | |
|     0x770583: 844,
 | |
|     0x770584: 845,
 | |
|     0x770585: 846,
 | |
|     0x770586: 847,
 | |
|     0x770587: 848,
 | |
|     0x770588: 849,
 | |
|     0x770589: 850,
 | |
|     0x77058a: 854,
 | |
|     0x77058b: 855,
 | |
|     0x77058c: 856,
 | |
|     0x77058d: 857,
 | |
|     0x77058e: 858,
 | |
|     0x77058f: 859,
 | |
|     0x770590: 860,
 | |
|     0x770591: 861,
 | |
|     0x770592: 862,
 | |
|     0x770593: 863,
 | |
|     0x770594: 864,
 | |
|     0x770595: 865,
 | |
|     0x770596: 866,
 | |
|     0x770597: 867,
 | |
|     0x770598: 868,
 | |
|     0x770599: 869,
 | |
|     0x77059a: 870,
 | |
|     0x77059b: 871,
 | |
|     0x77059c: 872,
 | |
|     0x77059d: 873,
 | |
|     0x77059e: 874,
 | |
|     0x77059f: 875,
 | |
|     0x7705a0: 876,
 | |
|     0x7705a1: 877,
 | |
|     0x7705a2: 878,
 | |
|     0x7705a3: 879,
 | |
|     0x7705a4: 880,
 | |
|     0x7705a5: 881,
 | |
|     0x7705a6: 882,
 | |
|     0x7705a7: 896,
 | |
|     0x7705a8: 897,
 | |
|     0x7705a9: 898,
 | |
|     0x7705aa: 899,
 | |
|     0x7705ab: 900,
 | |
|     0x7705ac: 901,
 | |
|     0x7705ad: 902,
 | |
|     0x7705ae: 903,
 | |
|     0x7705af: 904,
 | |
|     0x7705b0: 905,
 | |
|     0x7705b1: 960,
 | |
|     0x7705b2: 961,
 | |
|     0x7705b3: 962,
 | |
|     0x7705b4: 963,
 | |
|     0x7705b5: 964,
 | |
|     0x7705b6: 965,
 | |
|     0x7705b7: 966,
 | |
|     0x7705b8: 967,
 | |
|     0x7705b9: 968,
 | |
|     0x7705ba: 969,
 | |
|     0x7705bb: 970,
 | |
|     0x7705bc: 972,
 | |
|     0x7705bd: 973,
 | |
|     0x7705be: 974,
 | |
|     0x7705bf: 975,
 | |
|     0x7705c0: 977,
 | |
|     0x7705c1: 978,
 | |
|     0x7705c2: 979,
 | |
|     0x7705c3: 980,
 | |
|     0x7705c4: 981,
 | |
|     0x7705c5: 982,
 | |
|     0x7705c6: 983,
 | |
|     0x7705c7: 984,
 | |
|     0x7705c8: 1025,
 | |
|     0x7705c9: 1026,
 | |
|     0x7705ca: 1027,
 | |
|     0x7705cb: 1028,
 | |
|     0x7705cc: 1029,
 | |
|     0x7705cd: 1030,
 | |
|     0x7705ce: 1031,
 | |
|     0x7705cf: 1032,
 | |
|     0x7705d0: 1033,
 | |
|     0x7705d1: 1034,
 | |
|     0x7705d2: 1037,
 | |
|     0x7705d3: 1040,
 | |
|     0x7705d4: 1041,
 | |
|     0x7705d5: 1042,
 | |
|     0x7705d6: 1043,
 | |
|     0x7705d7: 1044,
 | |
|     0x7705d8: 1045,
 | |
|     0x7705d9: 1046,
 | |
|     0x7705da: 1049,
 | |
|     0x7705db: 1050,
 | |
|     0x7705dc: 1051,
 | |
|     0x7705dd: 1052,
 | |
|     0x7705de: 1053,
 | |
|     0x7705df: 1054,
 | |
|     0x7705e0: 1055,
 | |
|     0x7705e1: 1056,
 | |
|     0x7705e2: 1057,
 | |
|     0x7705e3: 1058,
 | |
|     0x7705e4: 1059,
 | |
|     0x7705e5: 1060,
 | |
|     0x7705e6: 1061,
 | |
|     0x7705e7: 1062,
 | |
|     0x7705e8: 1063,
 | |
|     0x7705e9: 1064,
 | |
|     0x7705ea: 1065,
 | |
|     0x7705eb: 1066,
 | |
|     0x7705ec: 1067,
 | |
|     0x7705ed: 1068,
 | |
|     0x7705ee: 1069,
 | |
|     0x7705ef: 1070,
 | |
|     0x7705f0: 1152,
 | |
|     0x7705f1: 1154,
 | |
|     0x7705f2: 1155,
 | |
|     0x7705f3: 1156,
 | |
|     0x7705f4: 1157,
 | |
|     0x7705f5: 1158,
 | |
|     0x7705f6: 1159,
 | |
|     0x7705f7: 1160,
 | |
|     0x7705f8: 1161,
 | |
|     0x7705f9: 1162,
 | |
|     0x7705fa: 1163,
 | |
|     0x7705fb: 1164,
 | |
|     0x7705fc: 1165,
 | |
|     0x7705fd: 1166,
 | |
|     0x7705fe: 1167,
 | |
|     0x7705ff: 1168,
 | |
|     0x770600: 1169,
 | |
|     0x770601: 1173,
 | |
|     0x770602: 1174,
 | |
|     0x770603: 1175,
 | |
|     0x770604: 1176,
 | |
|     0x770605: 1177,
 | |
|     0x770606: 1178,
 | |
|     0x770607: 1216,
 | |
|     0x770608: 1217,
 | |
|     0x770609: 1218,
 | |
|     0x77060a: 1219,
 | |
|     0x77060b: 1220,
 | |
|     0x77060c: 1221,
 | |
|     0x77060d: 1222,
 | |
|     0x77060e: 1223,
 | |
|     0x77060f: 1224,
 | |
|     0x770610: 1225,
 | |
|     0x770611: 1226,
 | |
|     0x770612: 1227,
 | |
|     0x770613: 1228,
 | |
|     0x770614: 1229,
 | |
|     0x770615: 1230,
 | |
|     0x770616: 1231,
 | |
|     0x770617: 1232,
 | |
|     0x770618: 1233,
 | |
|     0x770619: 1234,
 | |
|     0x77061a: 1235,
 | |
|     0x77061b: 1236,
 | |
|     0x77061c: 1237,
 | |
|     0x77061d: 1238,
 | |
|     0x77061e: 1239,
 | |
|     0x77061f: 1240,
 | |
|     0x770620: 1241,
 | |
|     0x770621: 1242,
 | |
|     0x770622: 1243,
 | |
|     0x770623: 1244,
 | |
|     0x770624: 1245,
 | |
|     0x770625: 1246,
 | |
|     0x770626: 1247,
 | |
|     0x770627: 1248,
 | |
|     0x770628: 1249,
 | |
|     0x770629: 1250,
 | |
|     0x77062a: 1251,
 | |
|     0x77062b: 1252,
 | |
|     0x77062c: 1253,
 | |
|     0x77062d: 1254,
 | |
|     0x77062e: 1255,
 | |
|     0x77062f: 1256,
 | |
|     0x770630: 1257,
 | |
|     0x770631: 1258,
 | |
|     0x770632: 1259,
 | |
|     0x770633: 1260,
 | |
|     0x770634: 1261,
 | |
|     0x770635: 1262,
 | |
|     0x770636: 1263,
 | |
|     0x770637: 1264,
 | |
|     0x770638: 1265,
 | |
|     0x770639: 1266,
 | |
|     0x77063a: 1267,
 | |
|     0x77063b: 1268,
 | |
|     0x77063c: 1269,
 | |
|     0x77063d: 1280,
 | |
|     0x77063e: 1281,
 | |
|     0x77063f: 1282,
 | |
|     0x770640: 1283,
 | |
|     0x770641: 1284,
 | |
|     0x770642: 1285,
 | |
|     0x770643: 1286,
 | |
|     0x770644: 1289,
 | |
|     0x770645: 1290,
 | |
|     0x770646: 1291,
 | |
|     0x770647: 1292,
 | |
|     0x770648: 1293,
 | |
|     0x770649: 1294,
 | |
|     0x77064a: 1295,
 | |
|     0x77064b: 1296,
 | |
|     0x77064c: 1297,
 | |
|     0x77064d: 1298,
 | |
|     0x77064e: 1299,
 | |
|     0x77064f: 1300,
 | |
|     0x770650: 1301,
 | |
|     0x770651: 1302,
 | |
|     0x770652: 1303,
 | |
|     0x770653: 1344,
 | |
|     0x770654: 1345,
 | |
|     0x770655: 1346,
 | |
|     0x770656: 1347,
 | |
|     0x770657: 1348,
 | |
|     0x770658: 1349,
 | |
|     0x770659: 1350,
 | |
|     0x77065a: 1351,
 | |
|     0x77065b: 1352,
 | |
|     0x77065c: 1354,
 | |
|     0x77065d: 1355,
 | |
|     0x77065e: 1356,
 | |
|     0x77065f: 1357,
 | |
|     0x770660: 1358,
 | |
|     0x770661: 1359,
 | |
|     0x770662: 1360,
 | |
|     0x770663: 1361,
 | |
|     0x770664: 1362,
 | |
|     0x770665: 1363,
 | |
|     0x770666: 1365,
 | |
|     0x770667: 1366,
 | |
|     0x770668: 1367,
 | |
|     0x770669: 1368,
 | |
|     0x77066a: 1369,
 | |
|     0x77066b: 1370,
 | |
|     0x77066c: 1371,
 | |
|     0x77066d: 1372,
 | |
|     0x77066e: 1374,
 | |
|     0x77066f: 1375,
 | |
|     0x770670: 1376,
 | |
|     0x770671: 1379,
 | |
|     0x770672: 1380,
 | |
|     0x770673: 1381,
 | |
|     0x770674: 1382,
 | |
|     0x770675: 1383,
 | |
|     0x770676: 1384,
 | |
|     0x770677: 1385,
 | |
|     0x770678: 1386,
 | |
|     0x770679: 1387,
 | |
|     0x77067a: 1388,
 | |
|     0x77067b: 1389,
 | |
|     0x77067c: 1390,
 | |
|     0x77067d: 1391,
 | |
|     0x77067e: 1392,
 | |
|     0x77067f: 1393,
 | |
|     0x770680: 1394,
 | |
|     0x770681: 1395,
 | |
|     0x770682: 1396,
 | |
|     0x770683: 1397,
 | |
|     0x770684: 1398,
 | |
|     0x770685: 1408,
 | |
|     0x770686: 1409,
 | |
|     0x770687: 1410,
 | |
|     0x770688: 1411,
 | |
|     0x770689: 1412,
 | |
|     0x77068a: 1414,
 | |
|     0x77068b: 1472,
 | |
|     0x77068c: 1473,
 | |
|     0x77068d: 1474,
 | |
|     0x77068e: 1475,
 | |
|     0x77068f: 1476,
 | |
|     0x770690: 1477,
 | |
|     0x770691: 1478,
 | |
|     0x770692: 1479,
 | |
|     0x770693: 1480,
 | |
|     0x770694: 1481,
 | |
|     0x770695: 1482,
 | |
|     0x770696: 1483,
 | |
|     0x770697: 1484,
 | |
|     0x770698: 1486,
 | |
|     0x770699: 1487,
 | |
|     0x77069a: 1488,
 | |
|     0x77069b: 1489,
 | |
|     0x77069c: 1490,
 | |
|     0x77069d: 1491,
 | |
|     0x77069e: 1495,
 | |
|     0x77069f: 1496,
 | |
|     0x7706a0: 1497,
 | |
|     0x7706a1: 1498,
 | |
|     0x7706a2: 1499,
 | |
|     0x7706a3: 1500,
 | |
|     0x7706a4: 1501,
 | |
|     0x7706a5: 1502,
 | |
|     0x7706a6: 1503,
 | |
|     0x7706a7: 1504,
 | |
|     0x7706a8: 1505,
 | |
|     0x7706a9: 1506,
 | |
|     0x7706aa: 1507,
 | |
|     0x7706ab: 1508,
 | |
|     0x7706ac: 1536,
 | |
|     0x7706ad: 1537,
 | |
|     0x7706ae: 1538,
 | |
|     0x7706af: 1539,
 | |
|     0x7706b0: 1540,
 | |
|     0x7706b1: 1541,
 | |
|     0x7706b2: 1600,
 | |
|     0x7706b3: 1601,
 | |
|     0x7706b4: 1602,
 | |
|     0x7706b5: 1603,
 | |
|     0x7706b6: 1604,
 | |
|     0x7706b7: 1605,
 | |
|     0x7706b8: 1606,
 | |
|     0x7706b9: 1607,
 | |
|     0x7706ba: 1612,
 | |
|     0x7706bb: 1613,
 | |
|     0x7706bc: 1614,
 | |
|     0x7706bd: 1615,
 | |
|     0x7706be: 1616,
 | |
|     0x7706bf: 1617,
 | |
|     0x7706c0: 1618,
 | |
|     0x7706c1: 1619,
 | |
|     0x7706c2: 1620,
 | |
|     0x7706c3: 1621,
 | |
|     0x7706c4: 1622,
 | |
|     0x7706c5: 1664,
 | |
|     0x7706c6: 1665,
 | |
|     0x7706c7: 1667,
 | |
|     0x7706c8: 1668,
 | |
|     0x7706c9: 1670,
 | |
|     0x7706ca: 1671,
 | |
|     0x7706cb: 1672,
 | |
|     0x7706cc: 1673,
 | |
|     0x7706cd: 1674,
 | |
|     0x7706ce: 1675,
 | |
|     0x7706cf: 1676,
 | |
|     0x7706d0: 1677,
 | |
|     0x7706d1: 1678,
 | |
|     0x7706d2: 1679,
 | |
|     0x7706d3: 1680,
 | |
|     0x7706d4: 1681,
 | |
|     0x7706d5: 1682,
 | |
|     0x7706d6: 1683,
 | |
|     0x7706d7: 1684,
 | |
|     0x7706d8: 1685,
 | |
|     0x7706d9: 1686,
 | |
|     0x7706da: 1730,
 | |
|     0x7706db: 1732,
 | |
|     0x7706dc: 1734,
 | |
|     0x7706dd: 1792,
 | |
|     0x7706de: 1793,
 | |
|     0x7706df: 1794,
 | |
|     0x7706e0: 1795,
 | |
|     0x7706e1: 1796,
 | |
|     0x7706e2: 1797,
 | |
|     0x7706e3: 1798,
 | |
|     0x7706e4: 1799,
 | |
|     0x7706e5: 1800,
 | |
|     0x7706e6: 1801,
 | |
|     0x7706e7: 1802,
 | |
|     0x7706e8: 1803,
 | |
|     0x7706e9: 1804,
 | |
|     0x7706ea: 1805,
 | |
|     0x7706eb: 1810,
 | |
|     0x7706ec: 1811,
 | |
|     0x7706ed: 1812,
 | |
|     0x7706ee: 1813,
 | |
|     0x7706ef: 1814,
 | |
|     0x7706f0: 1815,
 | |
|     0x7706f1: 1817,
 | |
|     0x7706f2: 1818,
 | |
|     0x7706f3: 1819,
 | |
|     0x7706f4: 1820,
 | |
|     0x7706f5: 1821,
 | |
|     0x7706f6: 1822,
 | |
|     0x7706f7: 1823,
 | |
|     0x7706f8: 1824,
 | |
|     0x7706f9: 1825,
 | |
|     0x7706fa: 1826,
 | |
|     0x7706fb: 1827,
 | |
|     0x7706fc: 1828,
 | |
|     0x7706fd: 1831,
 | |
|     0x7706fe: 1832,
 | |
|     0x7706ff: 1858,
 | |
| }
 |